توفر نماذج التضمين متعددة المتجهات، مثل ColBERT، دقة عالية في البحث، لكن عدد المتجهات المخزنة لكل وثيقة يرفع تكلفة الفهرس بسرعة. تقنية تجميع الرموز تقلل هذا الحجم، ويسمح تدريب مُكيّف، وفقًا للمصدر، بالحفاظ بشكل أفضل على جودة النتائج بنفس ميزانية التخزين. مع معامل_التجميع=4، يحتفظ النموذج المُدرَّب بشكل طبيعي بنسبة 94.6% من قيمته غير المضغوطة nDCG@10 على NanoBEIR، مقابل 97.8% للنموذج المُدرَّب مع مراعاة التجميع.
لماذا تخزن النماذج متعددة المتجهات هذا العدد الكبير من المتجهات
يلخص نموذج التضمين الكلاسيكي وثيقة كاملة في متجه واحد. على العكس من ذلك، تحتفظ النماذج متعددة المتجهات بمجموعة من المتجهات السياقية، واحد لكل رمز (وحدة نصية، غالبًا كلمة أو جزء من كلمة)، مما يسمح لأجزاء مختلفة من الاستعلام بمطابقة أجزاء مختلفة من الوثيقة. يقدم المصدر مثالًا على استعلام حول كمبيوتر محمول بطول عمر البطارية، والذي قد يجد فقرة عن الجهاز في جزء من الوثيقة وفقرة عن عمر البطارية في جزء آخر.
لهذه الآلية تكلفة. وفقًا للحساب المقدم، مع التكميم إلى 4 بت لكل إحداثي متبقي، تمثل 200 متجه بأبعاد 128 حجمًا قدره 12.8 كيلوبايت لكل وثيقة، أي 12.8 جيجابايت لمليون وثيقة. تقليل كل وثيقة إلى 50 متجهًا يخفض هذا الإجمالي إلى 3.2 جيجابايت، بنفس الأبعاد والدقة.
تعتمد الطريقة على ملاحظة: يمكن أن تكون العديد من المتجهات في نفس الوثيقة متقاربة، لأن عدة رموز تصف غالبًا مفاهيم متشابهة. تقوم تجميع الرموز الهرمي، وهي مكتبة Sentence Transformers، بتجميع هذه المتجهات عبر التجميع الهرمي وارد، والذي يدمج في كل خطوة المجموعتين اللتين تسببان أقل زيادة في التشتت الداخلي. يتم بعد ذلك استبدال كل مجموعة بمتوسطها، ثم تطبيعها. مع معامل_التجميع=4، تحتفظ الوثيقة بحوالي ربع متجهاتها الأولية، بحيث تحتفظ الوثيقة الأطول بنسبة أكبر من المتجهات بشكل متناسب.
تدريب النموذج على الضغط
كلما زاد الضغط، زادت سهولة فقدان المعلومات المفيدة. يهدف التدريب الذي يراعي التجميع تحديدًا إلى الحفاظ على المعلومات المهمة عند دمج المتجهات. تجمع كل دفعة تدريب بين خسارتين: البحث باستخدام تضمينات الوثائق الأصلية، والبحث بعد الضغط إلى حوالي ربع المتجهات. يتم حساب متوسط هاتين الخسارتين، ويقوم كلا الهدفين بتحديث نفس المُشفر.
نظرًا لأن التجميع يتخذ قرارات منفصلة، تشير المصادر إلى أن التدريب يستخدم مقدر التدرج المباشر، والذي ينقل التدرجات من المتجهات المجمعة إلى الرموز التي تتكون منها، دون تمييز التخصيص للمجموعات. تغلف فئة MultiVectorTokenPoolingLoss خسارة بحث موجودة، هنا CachedMultiVectorMultipleNegativesRankingLoss، بأوزان 0.5 لكل متغير. النموذج الأولي هو answerdotai/ModernBERT-base، المُدرَّب على 120,000 ثلاثي من MS MARCO لمدة عصر واحد.
النتائج على NanoBEIR
عند معامل_التجميع=4، يرتفع nDCG@10 من 49.03 إلى 51.23 للنموذج المُدرَّب مع التجميع، مع تقليل عدد متجهات الوثائق بنسبة 74.8% مقارنة بالبحث غير المضغوط. يتحسن النموذج غير المضغوط أيضًا، من 51.84 إلى 52.39. بمتوسط 29.58 متجه لكل وثيقة، يحتفظ التجميع التكيفي بنسبة 97.3% من درجة النموذج غير المضغوط المُدرَّب، مقابل 93.3% للنموذج المُدرَّب بشكل طبيعي.
لتقليل حجم الفهرس، تقترح المصادر أولاً تكميم التضمينات، ثم تجميع الرموز، وربما مع ضبط دقيق يراعي التجميع، وأخيرًا تضمينات Matryoshka لتقليل أبعاد كل متجه. يمكن الجمع بين هذه الأساليب. الأعمال التي يعتمد عليها المقال موصوفة في دراسة Learn to Pool لستيفان جوزيف.
