راهنمای کوتاه نکات و ترفندهای یادگیری ماشین

Star

توسط افشین عمیدی و شروین عمیدی

ترجمه توسط الیستر و محمد رضا

بازبینی توسط عرفان نوری و محمد کریمی

معیارهای دسته‌بندی

معیارهای اساسی و مهم برای پیگیری در زمینه‌ی دسته‌بندی دوتایی و به منظور ارزیابی عملکرد مدل در زیر آمده‌اند.

ماتریس درهم‌ریختگی از ماتریس درهم‌ریختگی (Confusion matrix) برای دست یافتن به تصویری جامع‌تر در ارزیابی عملکرد مدل استفاده می‌شود. این ماتریس بصورت زیر تعریف می‌شود:

دسته پیش‌بینی‌شده
+-
دسته واقعی+TP
True Positives
FN
False Negatives
Type II error
-FP
False Positives
Type I error
TN
True Negatives

معیارهای اصلی معیارهای زیر معمولا برای ارزیابی عملکرد مدل‌های دسته‌بندی بکار برده می‌شوند.

معیارفرمول
صحت
(Accuracy)
$\displaystyle\frac{\textrm{TP}+\textrm{TN}}{\textrm{TP}+\textrm{TN}+\textrm{FP}+\textrm{FN}}$
دقت
(Precision)
$\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FP}}$
فراخوانی
(Recall)
$\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$
ویژگی
(Specificity)
$\displaystyle\frac{\textrm{TN}}{\textrm{TN}+\textrm{FP}}$
F۱ score$\displaystyle\frac{2\textrm{TP}}{2\textrm{TP}+\textrm{FP}+\textrm{FN}}$

ROC منحنی عملیاتی گیرنده که تحت عنوان ROC نیز شناخته می‌شود تصویر TPR به ازای FPR و با تغییر مقادیر آستانه است. این معیارها بصورت خلاصه در جدول زیر آورده شده‌اند:

معیارفرمولمعادل
True Positive Rate
TPR
$\displaystyle\frac{\textrm{TP}}{\textrm{TP}+\textrm{FN}}$فراخوانی
False Positive Rate
FPR
$\displaystyle\frac{\textrm{FP}}{\textrm{TN}+\textrm{FP}}$۱-ویژگی

AUC ناحیه‌ی زیر منحنی عملیاتی گیرنده، که با AUC یا AUROC نیز شناخته می‌شود، مساحت زیر منحنی ROC که در شکل زیر نشان داده شده است:

ROC AUC

معیارهای وایازش

معیارهای ابتدایی با توجه به مدل وایازش f، معیارهای زیر برای ارزیابی عملکرد مدل مورد استفاده قرار می‌گیرند:

مجموع کل مربعاتمجموع مربعات توضیح داده شدهباقی‌مانده‌ی مجموع مربعات
$\displaystyle\textrm{SS}_{\textrm{tot}}=\sum_{i=1}^m(y_i-\overline{y})^2$$\displaystyle\textrm{SS}_{\textrm{reg}}=\sum_{i=1}^m(f(x_i)-\overline{y})^2$$\displaystyle\textrm{SS}_{\textrm{res}}=\sum_{i=1}^m(y_i-f(x_i))^2$

ضریب تعیین ضریب تعیین، که با $r^2$ یا $R^2$ هم نمایش داده می‌شود، معیاری برای سنجش این است که مدل به چه اندازه می‌تواند نتایج مشاهده‌شده را تکرار کند، و به صورت زیر تعریف می‌شود:

[\boxed{R^۲=۱-\frac{\textrm{SS}\textrm{res}}{\textrm{SS}\textrm{tot}}}]

معیارهای اصلی از معیارهای زیر معمولا برای ارزیابی عملکرد مدل‌های وایازش با در نظر گرفتن تعداد متغیرهای n که در نظر می‌گیرند، استفاده می‌شود:

Mallow's CPAICBICAdjusted $R^2$
$\displaystyle\frac{\textrm{SS}_{\textrm{res}}+2(n+1)\widehat{\sigma}^2}{m}$$\displaystyle2\Big[(n+2)-\log(L)\Big]$$\displaystyle\log(m)(n+2)-2\log(L)$$\displaystyle1-\frac{(1-R^2)(m-1)}{m-n-1}$

که $L$ درست‌نمایی و $\hat{\sigma}^2$ تخمینی از واریانس مربوط به هر یک از پاسخ‌ها است.

انتخاب مدل

واژگان هنگام انتخاب مدل، سه بخش مختلف از داده‌ها را به صورت زیر مشخص می‌کنیم:

مجموعه آموزش (Training)مجموعه اعتبارسنجی (Validation)مجموعه آزمایش (Testing)
• مدل آموزش داده شده است
• معمولا ۸۰ درصد از مجموعه داده‌ها
• معمولا ۲۰ درصد از مجموعه داده‌ها
• این مجموعه همچنین تحت عنوان مجموعه بیرون نگه‌داشته‌شده یا توسعه نیز شناخته می شود
• مدل پیش‌بینی می‌کند
• داده‌های دیده نشده

بعد از اینکه مدل انتخاب شد، روی کل مجموعه داده‌ها آموزش داده می‌شود و بر روی مجموعه دادگان دیده نشده آزمایش می‌شود. این مراحل در شکل زیر آمده‌اند:

Partition of the dataset

اعتبارسنج متقاطع اعتبارسنجی متقاطع، که CV نیز نامیده می‌شود، عبارت است از روشی برای انتخاب مدلی که بیش از حد به مجموعه‌ی آموزش اولیه تکیه نمی‌کند. انواع مختلف بصورت خلاصه در جدول زیر ارائه شده‌اند:

$k$-foldLeave-$p$-out
• آموزش بر روی $k-1$ بخش دیگر و ارزیابی بر روی بخش باقی‌مانده
• معمولا $k=5$ یا $k=10$
• آموزش بر روی $n - p$ مشاهده و ارزیابی بر روی $p$ مشاهده‌ی باقی‌مانده
• مورد $p=1$ تحت عنوان حذف تک‌مورد گفته می‌شود

رایج‌ترین روش مورد استفاده، اعتبار سنجی متقاطع $k$-بخشی نامیده می‌شود که داده‌های آموزشی را به $k$ بخش تقسیم می‌کند تا مدل روی یک بخش ارزیابی شود و در عین حال مدل را روی $k-1$ بخش دیگر آموزش دهد، و این عمل را $k$ بار تکرار می‌کند. سپس میانگین خطا بر روی $k$ بخش محاسبه می‌شود که خطای اعتبارسنجی متقاطع نامیده میشود.

Cross-validation

نظام‌بخشی هدف از رویه‌ی نظام‌بخشی (Regularization) جلوگیری از بیش‌برازش به داده‌ها توسط مدل است و در نتیجه با مشکل واریانس بالا طرف است. جدول زیر خلاصه‌ای از انواع روش‌های متداول نظام‌بخشی را ارائه می‌دهد:

LASSORidgeElastic Net
• ضرایب را تا ۰ کاهش می‌دهد
• برای انتخاب متغیر مناسب است
ضرایب را کوچکتر می‌کندبین انتخاب متغیر و ضرایب کوچک مصالحه می‌کند
LassoRidgeElastic Net
$...+\lambda||\theta||_1$
$\lambda\in\mathbb{R}$
$...+\lambda||\theta||_2^2$
$\lambda\in\mathbb{R}$
$...+\lambda\Big[(1-\alpha)||\theta||_1+\alpha||\theta||_2^2\Big]$
$\lambda\in\mathbb{R},\alpha\in[0,1]$

عیب‌شناسی

پیش‌قدر پیش‌قدر (Bias) مدل اختلاف بین پیش‌بینی مورد انتظار و مدل صحیح است که تلاش می‌کنیم برای نمونه داده‌های داده‌شده پیش‌بینی کنیم.

واریانس واریانس (Variance) یک مدل تنوع پیش‌بینی مدل برای نمونه داده‌های داده‌شده است.

تقابل تعادل پیش‌قدر/واریانس هر چقدر مدل ساده‌تر باشد، پیش‌قدر بیشتر خواهد بود، و هر چه مدل پیچیده‌تر باشد واریانس بیشتر خواهد شد.


UnderfittingJust rightOverfitting
علائم• خطای بالای آموزش
• خطای آموزش نزدیک به خطای آزمایش
• پیش‌قدر زیاد
• خطای آموزش کمی کمتر از خطای آزمایش• خطای آموزش بسیار کم
• خطای آموزش بسیار کم‌تر از خطای آزمایش
• واریانس بالا
نمایش وایازشUnderfit in regressionRight fit in regressionOverfit in regression
نمایش دسته‌بندیUnderfit in classificationRight fit in classificationOverfit in classification
نمایش یادگیری عمیقUnderfit in deep learningRight fit in deep learningOverfit in deep learning
اصلاحات احتمالی• مدل را پیچیده‌تر کنید
• ویژگی‌های بیشتری اضافه کنید
• مدت طولانی‌تری آموزش دهید
• نظام‌بخشی انجام دهید
• داده‌های بیشتری گردآوری کنید

تحلیل خطا تحلیل خطا (Error analysis) به بررسی علت اصلی اختلاف در عملکرد بین مدل‌های کنونی و مدل‌های صحیح می‌پردازد.

تحلیل تقطیعی تحلیل تقطیعی (Ablative analysis) به بررسی علت اصلی اختلاف بین مدل‌های کنونی و مدل‌های پایه می‌پردازد.