راه
۵ کیو· متوسط رو به بالامتوسطPYTHON۴ ثانیه · ۲۵۶ مگابایت

شاخص رند تعدیل‌شده

دو برچسب‌گذاری از همان nn نقطه داریم — مثلاً خوشه‌های یک الگوریتم و کلاس‌های واقعی. شماره‌ی برچسب‌ها مهم نیست، فقط این‌که کدام نقطه‌ها با هم‌اند. تابع ari(a, b) شاخص رند تعدیل‌شده را برمی‌گرداند:

  1. جدول توافق: nijn_{ij} تعداد نقطه‌هایی که در خوشه‌ی ii از a و خوشه‌ی jj از b اند؛ ai=∑jnija_i = \sum_j n_{ij} و bj=∑inijb_j = \sum_i n_{ij}.
  2. با (m2)=m(m−1)/2\binom{m}{2} = m(m-1)/2:
index=∑ij(nij2)expected=∑i(ai2)∑j(bj2)(n2)max=12[∑i(ai2)+∑j(bj2)]\text{index} = \sum_{ij}\binom{n_{ij}}{2} \qquad \text{expected} = \frac{\sum_i\binom{a_i}{2}\sum_j\binom{b_j}{2}}{\binom{n}{2}} \qquad \text{max} = \frac{1}{2}\Big[\sum_i\binom{a_i}{2} + \sum_j\binom{b_j}{2}\Big] ARI=index−expectedmax−expected\mathrm{ARI} = \frac{\text{index} - \text{expected}}{\text{max} - \text{expected}}

یک یعنی دو برچسب‌گذاری یکی‌اند (تا تغییر نام)؛ حدود صفر یعنی توافقی بیشتر از شانس نیست.

نمونه‌ها

ورودی نمونه ۱
[[0, 0, 1, 1, 2, 2], [0, 0, 1, 1, 2, 2]]
خروجی نمونه ۱
1.0
ورودی نمونه ۲
[[0, 0, 1, 1, 2, 2], [1, 1, 0, 0, 0, 2]]
خروجی نمونه ۲
0.4444

برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.

ورود