سؤال

مجرد البدء مع lucene.net. لقد قمت بفهرسة 100،000 صف باستخدام محلل قياسي ، وقمت ببعض استعلامات الاختبار ، ولاحظت أن استعلامات الجمع لا تُرجع النتائج إذا كان المصطلح الأصلي مفردًا. أنا أفهم أن محلل كرة الثلج يضيف دعمًا ناجحًا ، وهو ما يبدو لطيفًا. ومع ذلك ، أتساءل عما إذا كان هناك أي عيوب إلى Gong مع Snowball على Standard؟ هل أفقد أي شيء من خلال الذهاب معه؟ هل هناك أي تحليلات أخرى للنظر فيها؟

هل كانت مفيدة؟

المحلول

نعم ، باستخدام STEMMER مثل Snowball ، تفقد معلومات حول الشكل الأصلي لنصك. في بعض الأحيان سيكون هذا مفيدًا ، وأحيانًا لا.

على سبيل المثال ، سوف تنقض Snowball "التنظيم" في "عضو" ، وبالتالي فإن البحث عن "التنظيم" سيعود النتائج مع "العضو" ، دون أي عقوبة تسجيل.

سواء كان ذلك مناسبًا لك أم لا ، يعتمد على المحتوى الخاص بك ، وعلى نوع الاستعلامات التي تدعمها (على سبيل المثال ، هي عمليات البحث أساسية للغاية ، أو أن المستخدمين متطورون للغاية ويستخدمون البحث لتصفية النتائج بدقة). قد ترغب أيضًا في النظر في الجذعية الأقل عدوانية ، مثل kstem.

نصائح أخرى

ال كرة الثلج سيزيد المحلل من استدعاءك ، لأنه أكثر عدوانية من المحلل القياسي. لذلك تحتاج إلى تقييم نتائج البحث الخاصة بك لمعرفة ما إذا كنت تحتاج إلى زيادة البيانات الخاصة بك استدعاء أو الدقة.

لقد انتهيت للتو من محلل يؤدي التنشيط. هذا مشابه للانتماء ، باستثناء أنه يستخدم السياق لتحديد نوع الكلمة (الاسم ، الفعل ، إلخ) ويستخدم تلك المعلومات لاستخلاص الجذع. كما أنه يحافظ على الشكل الأصلي للكلمة في الفهرس. يمكن مكتبتي يمكن أن تكون مفيدة لك. إنه يتطلب Lucene Java ، وأنا لست على علم بأي من المتسابقين C#/. Net Net.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top