تشابه بزن اما این بار مقدارش مهمه! متریک‌های جدید برای فهم بهتر معنای جمله‌ها

Fall Back

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

تا حالا دو تا روش خیلی شناخته شده داشتیم: یکی «محصول نقطه‌ای خام» (Raw Dot Product) که خب یه جور ضرب دو تا وکتوره ولی چون محدودیت خاصی نداره، مقدارش می‌تونه هرچی بشه و خیلی هم حساسه به بزرگی و کوچیکی وکتورها. دومی «شباهت کسینوسی» (Cosine Similarity) بود که این مشکل رو حل می‌کنه و دیگه حساس به طول وکتور نیست. اما یه مشکل دیگه پیش میاد: کل اطلاعات مربوط به مقدار وکتور رو می‌ندازه دور!

حالا این پژوهشگر اومده و این وضعیت رو به چالش کشیده! میگه بابا جان، چرا فقط سراغ این دوتا می‌رید؟ من یه سری روش جدید «بدون پارامتر و حساس به مقدار» پیشنهاد دادم که خیلی بهتر جواب می‌ده.

دو تا متریک جدید معرفی کرده به اسم‌های “Overlap Similarity” یا همون OS (یعنی میزان همپوشانی وکتورها، یه جوری حساب می‌کنه که هم جهت و هم اندازه وکتورها رو در نظر می‌گیره) و “Hyperbolic Tangent Similarity” که خلاصه‌اش همون HTS هست (معنیش میشه تابع تانژانت هایپربولیک، اونایی که ریاضی دوست دارن باهاش آشنان! یه تابع خمیده که بین منفی یک و یک مقدار می‌گیره و تو این کارا برای نرم کردن یا هموار کردن مقادیر استفاده میشه).

خب گفتن کافی نیست، باید ادعاهامونو آزمایش کنیم! پژوهشگر اومده این متریک‌ها رو با چهار تا مدل بسییییار معروف تعبیه‌ی جمله (Sentence Embedding) تست کرده. مدل‌هایی مثل all-MiniLM-L6-v2 ، all-mpnet-base-v2 ، paraphrase-mpnet-base-v2 و BAAI/bge-large-en-v1.5. اینا مدل‌هایی هستن که می‌تونن هر جمله رو به یه وکتور عددی بزرگ و قابل مقایسه تبدیل کنن.

یه نکته‌ی باحال اینه که این متریک‌ها رو روی هشت تا دیتاست معروف و استاندارد آزمون کرده؛ مثل STS-B (مقایسه معنایی جملات)، SICK (تشخیص شباهت و استنتاج)، Quora (آیا دو تا سوال مثل همن؟)، و PAWS (جملات سخت و پیچیده که شبیه هم به نظر میان ولی فرق دارن).

برای این‌که بدونیم واقعاً جواب داده یا نه، از یه تست آماری به اسم Wilcoxon signed-rank test استفاده کردن (یه جور شیوه آماری پیشرفته که نشون می‌ده بهبودها شانسی نیستن و معنادار حساب می‌شن).

نتایج چی شدن؟ حیرت‌انگیز! مخصوصاً تو اون وظایفی که واقعاً باید معنی کل جمله رو بفهمیم، مثل تشخیص پارافرایز (پارافرایز یعنی بفهمیم این دو جمله یه معنی میدن فقط با بیان متفاوت) یا تشخیص استنتاج (Inference یعنی بفهمیم از یه جمله میشه جمله‌ی دوم رو نتیجه گرفت یا نه). تو این آزمون‌ها، هم OS و هم HTS به طور معناداری بهتر از هم دات پروداکت و هم کسینوس سیمیلاریتی عمل کردن، اونم مستقل از این‌که کدوم مدل تعبیه جمله استفاده شده باشه.

اما یه نکته جالب دیگه: تو آزمون‌هایی که باید به تفاوت‌های خیلی ظریف و ترکیب‌های واژگانی حساس باشن، مثل SICK یا STS-B، این برتری‌ها دیده نشد. یعنی هنوز جا داره تا برای اینجور چالش‌های ریزتر سراغ راه‌حل‌های بهتر بریم و یه عزم جدید میخواد!

در کل پیام پژوهش این بود: اگه کارت همون «فهم کلی و جامع معنی جمله‌ها»ست، وکتورهای حساس به مقدار (Magnitude-aware) رو دست کم نگیر و فقط به کسینوسی و دات پروداکت نچسب! می‌تونی یه گام جلو بیفتی و به فهم دقیق‌تر متن‌ها برسی. اما اگه دنبال ظرافت‌های ترکیبی و نکته‌سنجی بیشتری، باز راه زیادی در پیشه. خلاصه داستان اینه: “بزرگی مهمه!”

منبع: +