CS ۲۲۹ - یادگیری ماشین

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

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}}$
F1 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}}$ 1-ویژگی

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^2=1-\frac{\textrm{SS}_\textrm{res}}{\textrm{SS}_\textrm{tot}}}\]

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

Mallow's CP AIC BIC Adjusted $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$-fold Leave-$p$-out
• آموزش بر روی $k-1$ بخش دیگر و ارزیابی بر روی بخش باقی‌مانده
• معمولا $k=5$ یا $k=10$
• آموزش بر روی $n - p$ مشاهده و ارزیابی بر روی $p$ مشاهده‌ی باقی‌مانده
• مورد $p=1$ تحت عنوان حذف تک‌مورد گفته می‌شود

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

Cross-validation

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

LASSO Ridge Elastic Net
• ضرایب را تا ۰ کاهش می‌دهد
• برای انتخاب متغیر مناسب است
ضرایب را کوچکتر می‌کند
بین انتخاب متغیر و ضرایب کوچک مصالحه می‌کند
Lasso Ridge Elastic 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) یک مدل تنوع پیش‌بینی مدل برای نمونه داده‌های داده‌شده است.


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


Underfitting Just right Overfitting
علائم
• خطای بالای آموزش
• خطای آموزش نزدیک به خطای آزمایش
• پیش‌قدر زیاد
• خطای آموزش کمی کمتر از خطای آزمایش
• خطای آموزش بسیار کم
• خطای آموزش بسیار کم‌تر از خطای آزمایش
• واریانس بالا
نمایش وایازش Underfit in regression Right fit in regression Overfit in regression
نمایش دسته‌بندی Underfit in classification Right fit in classification Overfit in classification
نمایش یادگیری عمیق Underfit in deep learning Right fit in deep learning Overfit in deep learning
اصلاحات احتمالی
• مدل را پیچیده‌تر کنید
• ویژگی‌های بیشتری اضافه کنید
• مدت طولانی‌تری آموزش دهید
• نظام‌بخشی انجام دهید
• داده‌های بیشتری گردآوری کنید

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


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