Ranker Genetic هو إطار باستخدام قوة الخوارزميات الوراثية للعثور على أوزان البحث الأمثل لاستعلامات Elasticsearch أو SOLR.
إن العثور على أوزان البحث الأمثل للحقول هو عملية طويلة الأمد وغير مفعمة بالحيوية. تخيل فهرسًا مع ملايين المستندات ، وكل عشرات الحقول ، ومئات من الاستعلامات التي يجب اختبارها لضمان مدى جودة التكوين الفعلي. مهمتك هي تحديد مدى أهمية الحقول المعينة. يمكن أن يستغرق العمر.
كتبت منشورًا حول ذلك على مدونتي ، ألقِ نظرة إذا كنت بحاجة إلى مزيد من المعلومات حول هذه العملية.
أولاً ، من السهل تحديد المشكلة كمجموعة من الأوزان الرقمية التي يمكن تغييرها أثناء المعالجة. يمكن بسهولة القيام بالطفرة والتقاطع والتكاثر من الخوارزمية على الأرقام.
ثانياً ، تكون الخوارزميات الجينية قادرة على الحفاظ على الحلول الواعدة ، حتى بدون فهم فعلي للمشكلة. سيتم الاحتفاظ بالأنواع الأفضل (الأفراد) وستكون أسلافًا لأفضل.
ثالثًا ، بسبب الأجزاء الطفرة والتقاطع ، تضيف الخوارزمية القليل من العشوائية إلى العملية . قد يساعد ذلك في العثور على أفضل إجابة حتى لو كان فعليًا جيدًا.
المزيد عن ذلك ، مرة أخرى ، هنا.
لبدء GeneticRanker ، تحتاج إلى تشغيل ملف Ranker.py. يحتوي المشروع على جميع البيانات المطلوبة لإظهار حالة الاستخدام البسيطة.
في Ranker.py ، يجب عليك تحديد عدد الحقول التي تريد استخدامها ( Gene_size في Ranker ). ثم حدد تلك الحقول في فئة المقيِّم ( الحقول ).
في Queries.CSV ، تحتاج إلى تحديد حالات الاستخدام التي تريد اختبارها. التنسيق هو:
[Query] ، [document_id]: [متوقع _position]: [good_enough_position]
في Properties.ini ، يمكنك تحديد محرك البحث الذي تريد استخدامه: Elasticsearch أو Solr. يجب تحديد الاستعلامات في Essearcher.py و solrsearcher.py على التوالي.
تخيل أنك مهندس بحث يجب أن يجد الأوزان المثلى للحقول التي يتم تشغيل الاستعلامات عليها. الأشياء الوحيدة التي لديك هي ملفات الملفات. قبل تشغيل GeneticRanker ، خذ بعض الوقت لقراءة ملف CSV وتحليل المستندات من Queries-es.txt .
لا يوجد سوى 8 مستندات و 10 استفسارات ولكني أضمن أنه يمكنك قضاء بعض الوقت في هذه المهمة.
في دليل البيانات هناك ملفات تحتوي على مستندات. يمكنك استخدام أي طرق Elasticsearch و SOLR لفهرسها ، ولكن بالنسبة للأداة السابقة ، استخدمت أداة Postman وللوحة Admin Solr لاحقًا.
يجب أن يكون وجود الخادم وتشغيله كافيًا لتشغيل البرنامج النصي ومشاهدة النتائج.
دياب Elasticsearch pysolr
يجب عليك التحقق من تراخيصهم وتحديد ما إذا كنت تريد استخدامها في برنامجك. يتم تنفيذ الخوارزمية الوراثية باستخدام إطار عمل DEAP.
قد تحتاج كل حالة استخدام إلى تغيير في قيم الخوارزمية الوراثية أو الخوارزمية نفسها ، ولكن يجب أن يكون التكوين المقترح نقطة انطلاق جيدة. سعيد باستخدام!