গাছের সংগ্রহ অনুসন্ধানের জন্য দক্ষ অ্যালগরিদম


9

আমার কাছে গাছের একটি বড় ডেটাসেট রয়েছে এবং আমি একটি ট্রলেলেট (সংযুক্ত সাবগ্রাফ্ট) নির্দিষ্ট করে এটি অনুসন্ধান করতে চাই । ক্যোরিয়ায় ডেটাসেটে ট্রিলেটের সমস্ত উপস্থিতি ফিরে পাওয়া উচিত।

এটি করার জন্য দক্ষ অ্যালগরিদম আছে কি?

আমি প্রত্যয় অ্যারেগুলির মতো কিছু ভাবছিলাম, তবে, নির্লজ্জভাবে গাছগুলিকে স্ট্রিং হিসাবে এনকোডিং করা (তাদের নোডগুলির একটি নির্দিষ্ট ট্র্যাভারসাল ক্রম দ্বারা) কাজ করবে না, যেহেতু অনুসন্ধানের উইলেটলেটটি যথেচ্ছ আকারের হতে পারে।

হালনাগাদ:

আমি যে সাধারণ উদাহরণগুলি আশা করি সে সম্পর্কে কিছু বিশদ:

ডেটাসেটটি কমপক্ষে দশ হাজার গাছের সমন্বয়ে গঠিত হবে, যার প্রত্যেকটিতে প্রায় বিশ থেকে ত্রিশটি নোড থাকে। গাছগুলি বাইনারি হবে না, তবে নোডে সাধারণত শিশুদের সংখ্যা ছোট হবে (সাধারণত চার বা পাঁচটির চেয়ে বড় নয়, যদিও কিছু অবক্ষয়ের ক্ষেত্রে এটি প্রায় ত্রিশের উপরে পৌঁছতে পারে)। লেবেলের সংখ্যা হাজার হাজারে থাকবে।

আমার প্রয়োজন এনএলপি অ্যাপ্লিকেশনগুলির জন্য: প্রতিটি গাছ একটি বাক্যটির নির্ভরতা বিশ্লেষণ, প্রতিটি নোড শব্দের উপস্থিতি এবং প্রতিটি লেবেল অভিধানের শব্দ (কিছু সজ্জা সহ) উপস্থাপন করে।


1
এই ভলিউমে সাবট্রি আইসোমরফিজমের জন্য সমান্তরাল অ্যালগরিদমের আলোচনার বৈশিষ্ট্য রয়েছে।
অ্যান্টনি ল্যাবারে

1
দুঃখিত, আমি ভেবেছিলাম আপনি একটি সংযুক্ত সাবগ্রাফ খুঁজছেন, যা অবশ্যই একটি গাছ হবে, নির্দিষ্ট গাছের সেটগুলিতে উপস্থিত হবে। আপনার সমস্যাটি এই বিবরণ থেকে কী দিক থেকে পৃথক রয়েছে তা আপনি পরিষ্কার করে বলতে পারেন?
অ্যান্টনি ল্যাবারে

1
আপনি আগে থেকে গাছ সম্পর্কে কিছু জানেন? বাইনারি? আপনি কতটি ভিন্ন নোড লেবেল আশা করেন? স্থান দক্ষতার কোনও সীমাবদ্ধতা? আমি জিজ্ঞাসা করছি কারণ আপনি যদি একই ডেটাসেটে এক টন অনুসন্ধান চালাচ্ছেন তবে কোনও সমাধানে কিছু ধরণের আক্রমণাত্মক সূচিকর্ম জড়িত থাকতে পারে।
এলি

1
আপনি কি এক্সএমএল টুইগ মিলের সাথে পরিচিত? আপনার সমস্যাটি একটি বিশেষ কেস বলে মনে হচ্ছে, তাই আপনি কেবল বিদ্যমান অ্যালগরিদম এবং সফ্টওয়্যার ব্যবহার করতে পারেন।
মারেক ক্রোবাক

2
আমি অনুমান করব গ্রাফের কাঠামোটি উপেক্ষা করা ভাল be একটি সাধারণ ক্যোয়ারী দেওয়া হয়েছে, যদি আপনি কাঠামোটি বাতিল করেন তবে আপনি এই শব্দটির সমস্তটি কতটি গাছের অনুমান করছেন? আপনার প্রশ্নের কি কোনও ওয়াইল্ডকার্ড রয়েছে বা সেগুলি সঠিক? যদি কোনও প্রশ্নের মধ্যে শব্দগুলি "বিড়ালটি টুপিটি খেয়েছিল" এর মতো হয়, তবে কতগুলি গ্রাফের মধ্যে "বিড়াল" এবং "টুপি" শব্দ দুটি থাকবে? যদি আপনি প্রতিটি শব্দকে গাছের সেটগুলিতে কেবল সূচক করে থাকেন, তবে সমস্ত সেটকে ছেদ করুন, সম্ভবত আপনি নির্লজ্জভাবে খুব বেশি ব্যয় না করে ফলাফলটি অনুসন্ধান করতে পারেন।
এলি

উত্তর:


3

যদিও (মূলযুক্ত) গাছগুলি নির্দিষ্টভাবে লক্ষ্য করা যায়নি, আমি মনে করি জি-ট্রাই ডেটা কাঠামোটি আপনার সেটিংয়ে বেশ ভাল পারফরম্যান্স করতে পারে। এটি ট্রাইগুলির গ্রাফগুলিতে (স্ট্রিংগুলির সন্ধানের সন্ধানের জন্য) একটি রূপান্তর।


1

কিছুক্ষণ আগে রোনাল্ড রিডের ট্রি ক্যানোনাইজেশন অ্যালগরিদম লিখে উইকিপিডিয়ায় রেখেছি ।

আমি প্রতিটি অভ্যন্তরীণ নোড স্বাক্ষরের জন্য একটি হ্যাশটেবল তৈরি করব এবং তাদের যে সাবট্রির কাছ থেকে এসেছিল সেগুলিতে ফিরে পয়েন্টারের একটি তালিকা দিয়ে তাদের লেবেল করব। তবে এটি কেবল সত্যিকারের পাতা সহ গাছের কাজ করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.