BlockRank گوگل: انقلابی در جستجوی معنایی پیشرفته

عملکرد BlockRank گوگل، در مقایسه با مدل‌های رتبه‌بندی پیشرفته، کاملاً رقابتی و عالیه!

یه مقاله تحقیقاتی جدید از گوگل دیپ‌مایند (Google DeepMind)، یه الگوریتم رتبه‌بندی جستجوی هوش مصنوعی جدید به اسم BlockRank رو معرفی کرده که اونقدر خوب کار می‌کنه که رتبه‌بندی جستجوی معنایی پیشرفته رو در دسترس افراد و سازمان‌ها قرار می‌ده. محقق‌ها به این نتیجه رسیدن که این الگوریتم «می‌تونه دسترسی به ابزارهای قدرتمند کشف اطلاعات رو برای همه ممکن کنه».

رتبه‌بندی درون-متنی (In-Context Ranking – ICR)

این مقاله تحقیقاتی، از یه دستاورد بزرگ به اسم رتبه‌بندی درون-متنی (ICR) حرف می‌زنه؛ روشی برای رتبه‌بندی صفحات وب با استفاده از توانایی‌های درک متنیِ مدل‌های زبان بزرگ.

توی این روش، این موارد به عنوان پرامپت به مدل داده می‌شه:

  1. دستورالعمل‌های کار (مثلاً، «این صفحات وب رو رتبه‌بندی کن»)
  2. اسناد کاندید (صفحاتی که قراره رتبه‌بندی بشن)
  3. و کوئری جستجو.

ICR یه رویکرد تقریباً جدیده که اولین بار تو سال ۲۰۲۴ توسط محققای گوگل دیپ‌مایند و گوگل ریسرچ بررسی شد (Can Long-Context Language Models Subsume Retrieval, RAG, SQL, and More? PDF). اون مطالعه قبلی نشون داد که ICR می‌تونه با عملکرد سیستم‌های بازیابی اطلاعات که مخصوص جستجو ساخته شدن، برابری کنه.

اما این پیشرفت یه نقطه ضعف هم داشت: با افزایش تعداد صفحاتی که باید رتبه‌بندی بشن، نیاز به توان محاسباتی هم به شدت بالا می‌رفت.

وقتی یه مدل زبان بزرگ (LLM) چندتا سند رو با هم مقایسه می‌کنه تا تصمیم بگیره کدوم‌ها به یه کوئری مرتبط‌ترن، باید به تک‌تک کلمات توی هر سند و ارتباطشون با بقیه کلمات «توجه» کنه. هر چی تعداد اسناد بیشتر می‌شه، این فرآیند «توجه» خیلی کندتر می‌شه، چون حجم کار به صورت تصاعدی بالا می‌ره.

این تحقیق جدید دقیقاً همین مشکل بهره‌وری رو حل کرده و به همین خاطره که اسم مقاله رو گذاشتن «رتبه‌بندی درون-متنی مقیاس‌پذیر با مدل‌های مولد» (Scalable In-context Ranking with Generative Models). چون نشون می‌ده چطور می‌شه رتبه‌بندی درون-متنی (ICR) رو با چیزی که خودشون BlockRank اسمشو گذاشتن، مقیاس‌پذیر کرد.

BlockRank چطور توسعه پیدا کرد؟

محقق‌ها بررسی کردن که مدل دقیقاً چطور از مکانیزم «توجه» (attention) موقع بازیابی درون-متنی استفاده می‌کنه و دوتا الگوی اصلی پیدا کردن:

  • پراکندگی بلوکی بین-سندی (Inter-document block sparsity):
    محقق‌ها فهمیدن وقتی مدل یه گروه از اسناد رو می‌خونه، تمایل داره بیشتر روی هر سند به صورت جداگانه تمرکز کنه تا اینکه همه رو با هم مقایسه کنه. اونا اسم این الگو رو «پراکندگی بلوکی» گذاشتن، یعنی مقایسه مستقیم کمی بین اسناد مختلف وجود داره. با تکیه بر این یافته، اونا نحوه خوندن ورودی توسط مدل رو تغییر دادن تا هر سند رو به تنهایی بررسی کنه، اما همچنان همه اون‌ها رو با سوالی که پرسیده شده مقایسه کنه. این کار باعث می‌شه بخش مهم ماجرا، یعنی تطبیق اسناد با کوئری، حفظ بشه و در عین حال مقایسه‌های غیرضروری سند-به-سند حذف بشن. نتیجه این کار سیستمیه که خیلی سریع‌تر کار می‌کنه بدون اینکه دقتش کم بشه.
  • ارتباط بلوکی کوئری-سند (Query-document block relevance):
    وقتی مدل زبان بزرگ (LLM) کوئری رو می‌خونه، با همه کلماتِ اون سوال به یک اندازه مهم برخورد نمی‌کنه. بعضی از بخش‌های سوال، مثل کلمات کلیدی خاص یا علائم نگارشی که قصد کاربر رو نشون می‌دن، به مدل کمک می‌کنن تا تصمیم بگیره کدوم سند لایق توجه بیشتریه. محقق‌ها متوجه شدن که الگوهای توجه داخلی مدل، به خصوص نحوه تمرکز کلمات خاصی از کوئری روی اسناد مشخص، اغلب با مرتبط بودن اون اسناد هم‌راستا هست. این رفتار که اسمش رو «ارتباط بلوکی کوئری-سند» گذاشتن، چیزی بود که محقق‌ها تونستن مدل رو طوری آموزش بدن که ازش به شکل مؤثرتری استفاده کنه.

محقق‌ها این دو الگوی توجه رو شناسایی کردن و بعدش یه رویکرد جدید بر اساس یافته‌هاشون طراحی کردن. الگوی اول، یعنی پراکندگی بلوکی بین-سندی، نشون داد که مدل با مقایسه اسناد با همدیگه، در حالی که این اطلاعات مفید نیست، داره توان محاسباتی رو هدر می‌ده. الگوی دوم، یعنی ارتباط بلوکی کوئری-سند، نشون داد که بخش‌های خاصی از یک سوال، از قبل به سند درست اشاره می‌کنن. بر اساس این یافته‌ها، اونا نحوه مدیریت توجه توسط مدل و روش آموزش اون رو بازطراحی کردن. نتیجه این کار شد BlockRank؛ یه شکل کارآمدتر از بازیابی درون-متنی که مقایسه‌های غیرضروری رو حذف می‌کنه و به مدل یاد می‌ده روی چیزی که واقعاً نشونه ارتباطه، تمرکز کنه.

ارزیابی دقت BlockRank

محقق‌ها BlockRank رو برای اینکه ببینن چقدر خوب اسناد رو رتبه‌بندی می‌کنه، روی سه تا بنچمارک اصلی آزمایش کردن:

  • BEIR
    مجموعه‌ای از وظایف مختلف جستجو و پاسخ به سوال که برای آزمایش توانایی یه سیستم در پیدا کردن و رتبه‌بندی اطلاعات مرتبط در موضوعات مختلف استفاده می‌شه.
  • MS MARCO
    یه مجموعه داده بزرگ از کوئری‌های واقعی جستجوی بینگ و متن‌های مرتبط با اون‌ها که برای اندازه‌گیری دقت یه سیستم در رتبه‌بندی متن‌هایی که بهترین جواب رو به سوال کاربر می‌دن، استفاده می‌شه.
  • Natural Questions (NQ)
    یه بنچمارک که از سوالات واقعی جستجوی گوگل ساخته شده و برای آزمایش این طراحی شده که آیا یه سیستم می‌تونه بخش‌هایی از ویکی‌پدیا که مستقیماً به اون سوالات جواب می‌دن رو شناسایی و رتبه‌بندی کنه.

اونا از یه مدل زبان بزرگ ۷ میلیارد پارامتری Mistral استفاده کردن و BlockRank رو با بقیه مدل‌های رتبه‌بندی قوی مثل FIRST، RankZephyr، RankVicuna و یه مدل پایه Mistral که کاملاً فاین-تیون شده بود، مقایسه کردن.

BlockRank روی هر سه بنچمارک، عملکردی برابر یا بهتر از اون سیستم‌ها داشت؛ نتایجش روی MS MARCO و Natural Questions با بقیه برابر بود و روی BEIR حتی یه کم بهتر هم عمل کرد.

محقق‌ها نتایج رو اینطور توضیح دادن:

«آزمایش‌ها روی MSMarco و NQ نشون می‌ده که BlockRank (با مدل Mistral-7B) با اثربخشیِ روش فاین-تیون کردن استاندارد برابری می‌کنه یا حتی ازش بهتره، در حالی که موقع استنتاج و آموزش به طور قابل توجهی کارآمدتره. این موضوع یه رویکرد مقیاس‌پذیر و مؤثر برای ICR مبتنی بر مدل‌های زبان بزرگ ارائه می‌ده.»

اونا همچنین اشاره کردن که مدل‌های زبان بزرگ مختلفی رو آزمایش نکردن و این نتایج فقط مخصوص مدل Mistral 7B هست.

آیا گوگل از BlockRank استفاده می‌کنه؟

توی مقاله تحقیقاتی هیچ حرفی در مورد استفاده از این الگوریتم در محیط واقعی زده نشده. پس اینکه بگیم ممکنه در حال استفاده باشه، صرفاً یه حدس و گمانه. البته طبیعیه که سعی کنیم بفهمیم BlockRank چه ارتباطی با AI Overviews یا حالت هوش مصنوعی (AI Mode) گوگل داره، اما توضیحات نحوه کار FastSearch و RankEmbed که در AI Mode استفاده می‌شن، با کاری که BlockRank انجام می‌ده خیلی فرق داره. پس بعیده که BlockRank به FastSearch یا RankEmbed ربطی داشته باشه.

چرا BlockRank یک دستاورد بزرگ محسوب می‌شه؟

چیزی که مقاله به وضوح بهش اشاره می‌کنه اینه که BlockRank یه فناوری پیشگامانه که یه سیستم رتبه‌بندی پیشرفته رو در دسترس افراد و سازمان‌هایی قرار می‌ده که در حالت عادی نمی‌تونستن به چنین تکنولوژی رتبه‌بندی باکیفیتی دسترسی داشته باشن.

محقق‌ها اینطور توضیح می‌دن:

«متدولوژی BlockRank، با افزایش بهره‌وری و مقیاس‌پذیری بازیابی درون-متنی (ICR) در مدل‌های زبان بزرگ (LLM)، بازیابی معنایی پیشرفته رو از نظر محاسباتی عملی‌تر می‌کنه و می‌تونه دسترسی به ابزارهای قدرتمند کشف اطلاعات رو برای همه ممکن کنه. این موضوع می‌تونه تحقیقات رو سرعت ببخشه، با ارائه سریع‌تر اطلاعات مرتبط، نتایج آموزشی رو بهتر کنه و با دادن قابلیت‌های تصمیم‌گیری بهتر، افراد و سازمان‌ها رو توانمندتر کنه.

علاوه بر این، افزایش بهره‌وری مستقیماً به معنی کاهش مصرف انرژیه، اون هم برای برنامه‌های مبتنی بر LLM که به شدت به بازیابی اطلاعات وابسته‌ان. این خودش به توسعه و استقرار هوش مصنوعی پایدارتر از نظر زیست‌محیطی کمک می‌کنه.

BlockRank با ممکن کردن ICR مؤثر روی مدل‌های بالقوه کوچیک‌تر یا بهینه‌تر، می‌تونه دامنه دسترسی به این فناوری‌ها رو در محیط‌هایی با منابع محدود هم گسترش بده.»

سئوکارها و ناشرای وب می‌تونن هر نظری در مورد اینکه آیا ممکنه گوگل از این الگوریتم استفاده کنه، داشته باشن. به نظر من که شواهدی برای این موضوع وجود نداره، اما جالب می‌شه اگه بشه از یکی از کارمندای گوگل در این مورد سوال پرسید.

به نظر می‌رسه گوگل داره BlockRank رو روی گیت‌هاب (GitHub) در دسترس قرار می‌ده، اما هنوز هیچ کدی اونجا منتشر نشده.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *