MRR رتبهٔ اولین نتیجهٔ مرتبط را خلاصه میکند؛ NDCG میتواند درجهٔ ارتباط چند نتیجه و جایگاه آنها را هم لحاظ کند. این دو معیار پاسخِ یک سؤال واحد نیستند. اگر دو فهرست اولین پاسخ خوب را در جای یکسان داشته باشند، MRR میتواند برابر بماند، درحالیکه ترتیب بقیهٔ پاسخها متفاوت است.
پیش از عدد، مرجع و قرارداد را مشخص کنیم
در مثالِ اصیل این صفحه، چهار سند با شناسههای A تا D داریم و درجههای بازبینیشدهٔ فرضی آنها ۳،۲،۱،۰ هستند. برای MRR، درجهٔ دستکم۱ را مرتبط مینامیم. فقط سه نتیجهٔ اول را میسنجیم؛ بنابراین نام دقیق شاخص MRR@3 یا NDCG@3 است. درجههای نمونه واقعیتِ مشتری یا نتیجهٔ موتور جستوجو نیستند.
ساختِ مرجع در راهنمای مجموعهٔ مرجع بازیابی آمده است. اینجا فرض میکنیم مرجع کامل شده و فقط محاسبه را انجام میدهیم. کد درجهٔ نامعلوم را صفر نمیگذارد؛ None را رد میکند. نامرتبطِ بازبینیشده و بررسینشده دو وضعیت متفاوتاند.
MRR: فقط اولین نتیجهٔ مرتبط
در Q1 ترتیب D,A,B,C است. اولین نتیجهٔ مرتبط در رتبهٔ۲ است، پس RR@3 برابر ۱÷۲ میشود. در Q2 ترتیب A,C,B,D است و RR@3 برابر۱ است. در Q3 برای همین چهار شناسه، همهٔ درجهها عمداً صفرند و RR@3 را صفر میگذاریم. میانگین سادهٔ سه پرسش، (۰٫۵+۱+۰)÷۳=۰٫۵ است.
این قرارداد، پرسشِ بدون نتیجهٔ مرتبط را در میانگین نگه میدارد. حذف آن پرسش، میانگین را به۰٫۷۵ تغییر میدهد؛ هر دو گزارش اگر بیتوضیح ارائه شوند قابل مقایسه نیستند. در کتابخانهها هم سیاست empty target را باید خواند. تعداد پرسش و سیاستِ بدون پاسخ را کنار امتیاز بنویسید.
NDCG: درجه و جایگاهِ همهٔ سه نتیجه
در این نسخهٔ آموزشی، gain خطی و برابر خودِ درجه است: DCG مجموعِ درجهٔ نتیجهٔ رتبهٔ i تقسیم بر log2(i+1) است. سپس آن را بر DCGِ بهترین ترتیبِ همان درجهها و همان cutoff تقسیم میکنیم. بعضی پیادهسازیها gainِ نمایی مانند ۲ به توان درجه منهای۱ دارند؛ نتیجهٔ آن قرارداد را با این عدد مخلوط نکنید.
| ترتیب | درجههای سه نتیجه | RR@3 | وضعیت NDCG@3 |
|---|---|---|---|
| D,A,B,C | ۰،۳،۲ | ۰٫۵ | کمتر از۱؛ نتیجهٔ صفر در صدر است |
| A,C,B,D | ۳،۱،۲ | ۱ | کمتر از۱؛ دو درجه جابهجا هستند |
| A,B,C,D | ۳،۲،۱ | ۱ | ۱؛ ترتیبِ ایدهآل همین نمونه |
اگر همهٔ درجهها صفر باشند، مخرج هم صفر است؛ کد با سیاست صریح zero مقدار NDCG را صفر میدهد. این تصمیمِ قرارداد است و نباید نتیجهٔ بیپاسخ را خودکار موفقیت کامل نامید. امتیازِ منفی، رتبهٔ تکراری، شناسهٔ نامعلوم و cutoff نامعتبر در این دامنه پذیرفته نمیشوند.
کد چه چیزی را واقعاً آزمایش کرده است؟
فهرستِ مرتبِ شناسهها ورودیِ کد است؛ امتیازهای مساویِ موتور و شکستنِ تساوی را مدل نمیکند. تمام ۲۴ جایگشتِ چهار سند در چهار cutoff، یعنی۹۶ حالت، محاسبه و محدودهٔ NDCG کنترل شدهاند. هفت ورودی ناقض قرارداد هم رد شدهاند. فایل JSON خروجی همین اجرای محلی است؛ TorchMetrics یا scikit-learn در این تمرین اجرا نشدهاند.
ارزیابی بازرتبهبند تصمیمی بزرگتر است: رتبه، پوشش، زمان و خطا باید با هم دیده شوند. بهترشدنِ یک شاخص، بهتنهایی کیفیت پاسخ نهایی یا فروش بیشتر را ثابت نمیکند. برای پاسخگویی مشتری، چند پرسشِ مجاز و شاهد درستشان را به جلسهٔ بررسی راهکار اپرا بیاورید؛ این محاسبه، قابلیتِ داخلی محصول یا تضمینِ بهبود آن نیست.
فایل تمرین و منبع
کد ارزیابی شناسهها با قراردادِ درجه و cutoff · سه پرسش ساختگی و خروجی دقیق محاسبه
- مستند اصلی TorchMetrics؛ رتبهٔ متقابل و سیاست empty target
- مستند اصلی scikit-learn؛ gain خطی، cutoff و ترتیب ایدهآل
منابع در ۳ نوامبر ۲۰۲۶ خوانده شدند؛ این تاریخ، تاریخ انتشار منبع نیست. مثالها و فایلهای این راهنما آموزشی و ساختهٔ تحریریهاند.