فتحت Microsoft الكود الخاص بمكتبة البحث المتجه التي يستخدمها Bing

مايكروسوفت опубликовала رموز مصدر مكتبة التعلم الآلي سبتاج (شجرة تقسيم الفضاء والرسم البياني) مع تنفيذ الخوارزمية التقريبية أقرب بحث الجيران. مكتبة متطور في قسم الأبحاث في Microsoft Research ومركز تطوير تكنولوجيا البحث (مركز تكنولوجيا البحث في Microsoft). من الناحية العملية، يتم استخدام SPTAG بواسطة محرك بحث Bing لتحديد النتائج الأكثر صلة بناءً على سياق استعلامات البحث. الكود مكتوب بلغة C++ و وزعت من خلال بموجب ترخيص معهد ماساتشوستس للتكنولوجيا. يتم دعم البناء لنظامي التشغيل Linux وWindows. هناك ربط للغة بايثون.

على الرغم من حقيقة أن فكرة استخدام تخزين المتجهات في محركات البحث كانت تطفو على السطح لفترة طويلة، إلا أن تنفيذها عمليًا يعوقه كثافة الموارد العالية للعمليات ذات المتجهات وقيود قابلية التوسع. إن الجمع بين أساليب التعلم الآلي العميق وخوارزميات البحث التقريبية لأقرب جار قد أتاح رفع أداء أنظمة المتجهات وقابلية تطويرها إلى مستوى مقبول لمحركات البحث الكبيرة. على سبيل المثال، في Bing، بالنسبة لفهرس متجه يضم أكثر من 150 مليار ناقل، يكون وقت جلب النتائج الأكثر صلة في حدود 8 مللي ثانية.

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

تشير المكتبة إلى أن البيانات التي تتم معالجتها وعرضها في المجموعة يتم تنسيقها في شكل متجهات ذات صلة يمكن مقارنتها بناءً على الإقليدية (L2) أو جيب التمام المسافات يقوم استعلام البحث بإرجاع المتجهات التي تكون المسافة بينها وبين المتجه الأصلي في حدها الأدنى. توفر SPTAG طريقتين لتنظيم مساحة المتجه: SPTAG-KDT (شجرة الأبعاد K (شجرة دينار كويتي) و الرسم البياني الحي النسبي) و SPTAG-BKT (شجرة تعني k (ك- تعني شجرة والرسم البياني الحي النسبي). تتطلب الطريقة الأولى موارد أقل عند العمل مع الفهرس، بينما توضح الطريقة الثانية دقة أعلى لنتائج البحث لمجموعات كبيرة جدًا من المتجهات.

وفي الوقت نفسه، لا يقتصر البحث المتجه على النص ويمكن تطبيقه على معلومات الوسائط المتعددة والصور، وكذلك في أنظمة إنشاء التوصيات تلقائيًا. على سبيل المثال، قام أحد النماذج الأولية المستندة إلى إطار عمل PyTorch بتنفيذ نظام متجه للبحث استنادًا إلى تشابه الكائنات في الصور، تم إنشاؤه باستخدام بيانات من عدة مجموعات مرجعية مع صور الحيوانات والقطط والكلاب، والتي تم تحويلها إلى مجموعات من المتجهات . عند تلقي صورة واردة للبحث، يتم تحويلها باستخدام نموذج التعلم الآلي إلى متجه، بناءً عليه يتم تحديد المتجهات الأكثر تشابهًا من الفهرس باستخدام خوارزمية SPTAG ويتم إرجاع الصور المرتبطة نتيجة لذلك.

المصدر: opennet.ru

إضافة تعليق