ترکیب باحال گراف دانش برای باحال‌تر کردن هوش مصنوعی‌های زبانی (RAG) — داستان QMKGF!

Fall Back

بگیر بشین که میخوام درباره یه روش خیلی خفن که قراره هوش مصنوعی‌های زبانی (همون LLMها، یعنی مدل‌های زبانی بزرگ مثل GPT) رو هوشمند‌تر و واقع‌بین‌تر کنه، واست تعریف کنم! داستان از اونجایی شروع می‌شه که یه تکنیک به اسم RAG تقریباً داره پای ثابت پروژه‌های هوش مصنوعی می‌شه. خب RAG یعنی ‘تولید با تقویت گرفتن بازیابی’ — یعنی موقع جواب دادن، اول مدل می‌ره دنبال اطلاعات مرتبط تو منابع گوناگون، بعد باهاش یه جواب تازه تولید می‌کنه که هم دقیق‌تره هم به واقعیت نزدیک‌تر.

اما یه مشکل بزرگ هست: مدل‌ها معمولاً وقتی دارن اطلاعات رو بازیابی می‌کنن، فقط قطعه‌های جدا جدا رو برحسب شباهت پیدا می‌کنن. یعنی نگاه نمی‌کنن که بین اون قطعه‌ها چه ربطی هست یا اینکه چجوری می‌تونن با هم ترکیب بشن تا یه جواب بهتر بدن! خب اینجاست که عملکردشون خیلی وقتا دچار افت می‌شه و نمی‌تونن جواب عمیق و مرتبط بدن.

حالا گروهی از محققای باهوش اومدن یه راه‌حل باحال به اسم QMKGF رو معرفی کردن. اسم کاملش «Query-Aware Multi-Path Knowledge Graph Fusion» هست. حالا دونه‌دونه روشنش می‌کنم که داستان چیه:

اول، میان یه سری قالب آماده (Prompt Template یعنی همون جملات راهنما که به هوش مصنوعی می‌دیم تا بهتر پاسخ بده) درست می‌کنن و با کمک یه مدل زبانی عمومی (مثل ChatGPT یا هر LLM عمومی دیگه)، اشخاص، مفاهیم و روابط رو از متن‌ها درمیارن. به این می‌گن ‘گراف دانش’ یا KG. “گراف دانش” یعنی یه نقشه از اطلاعات که توش اشخاص و رابطه‌ها به صورت گره و خط به هم وصل شدن، یه چیزی شبیه نمودار روابط فامیل!

بعد از اینکه این گراف دانش رو ساختن، یه استراتژی ساخت زیرگراف چندمسیره پیاده می‌کنن. زیرگراف، یعنی یه تیکه کوچیک‌تر از گراف دانش، و چندمسیره یعنی نگاه می‌کنن فقط به رابطه مستقیم بسنده نمی‌کنن.

اینجا سه جور زیرگراف رو بررسی می‌کنن:

  1. روابط یک-پله (One-hop): یعنی از یک مفهوم به یه مفهوم نزدیک با یه رابطه مستقیم.
  2. چند-پله (Multi-hop): یعنی رابطه‌هایی که باید از چند تا گره رد شی تا برسونت به جواب.
  3. براساس اهمیت: یعنی اون رابطه‌هایی که واسه سوال پرسیده‌شده مهم‌تر یا پرتاثیرترن.

هدفشون اینه که چیزی که بازیابی می‌کنن، فقط شبیه به سوال نباشه، بلکه واقعاً به معنای سوال ربط مفهومی عمیق داشته باشه.

حالا این وسط یه مدل امتیازدهی مخصوص هم ساختن که باهوشیش اینه که می‌تونه بفهمه کدوم تیکه گراف بیشتر به سوال ربط داره؛ به این می‌گن Query-Aware Attention Reward Model، یعنی یه مدل که جایزه (امتیاز) میده به اون بخش‌هایی از گراف که از لحاظ مفهومی به سوال نزدیکن. بعد همون زیرگرافی که بالاترین نمره رو می‌گیره انتخاب می‌شه، و از جاهای دیگه هم هرچی رابطه (Triple یا همون فرد و رابطه و فردِ دیگه) به سوال می‌خوره میارن تو این زیرگراف تا جواب نهایی رو قوی‌تر کنن.

تو مرحله بعد، همین گره‌ها و رابطه‌ها رو به سوال اولیه اضافه می‌کنن (به این می‌گن Query Expansion — یعنی گسترده‌تر کردن سوال تا مدل بتونه سوال رو عمیق‌تر بفهمه و جواب بهتری بسازه). خلاصه، با این کارها مدل می‌تونه جمع‌بندی کنه که جوابش هم دقیق باشه، هم به واقعیت نزدیک و هم عمیق.

حالا گفتی حالا‌گیری؟ رفتن این روش QMKGF رو روی چند تا دیتاست معروف مثل SQuAD، IIRC، Culture، HotpotQA و MuSiQue امتحان کردن. نتایجش تو HotpotQA که یه دیتاست خیلی معروف پرسش‌پاسخ با سوالای عمیق و چندمنبعیه، عالی بوده! مدل QMKGF تونسته امتیاز ROUGE-1 که یکی از شاخصای اندازه‌گیری خوبی جواب با متن واقعی هست (هرچی بالاتر، باحال‌تر!) تا %64.98 برسونه. این یعنی نزدیک 10 درصد بهتر از بهترین روش معروف به اسم BGE-Rerank که فقط 55.26% گرفته بود!

در کل، این مقاله نشون می‌ده که اگه اطلاعات رو فقط بر اساس شباهت ساده بازیابی نکنی و از ساختار مفهومی و ارتباط‌های عمیق‌تر بین داده‌ها استفاده کنی، مدل‌های زبانی آینده‌مون هم سریع‌تر، هم دقیق‌تر و هم واقع‌بین‌تر می‌شن! خلاصه دیگه قراره سرمون کلاه نره پیش AIها و جواب‌هاشون با واقعیت زندگی ما هماهنگ‌تر بشه.

پس دفعه بعد که هوش مصنوعی جواب می‌سازه، بدون شاید پشتش همین QMKGF و گراف دانشا باشن که دارن براش راهو هموارتر می‌کنن!

منبع: +