معیار کاپا (Kappa) برای ارزیابی طبقه‌بندی‌های چندکلاسه

در دروس گذشته یادگرفتیم که چگونه با استفاده از ماتریس اغتشاش (Confusion Matrix) و معیارهایی مانند دقت (Accuracy)، صحت (Precision) و معیار F1، کیفیت یک الگوریتمِ طبقه‌بندی را مشخص کنیم. در این درس به یکی دیگر از این معیارها به نام امتیاز کاپا (Kappa Score) که به معیار Cohen’s Kappa نیز معروف است می‌پردازیم. خواهیم دید که این معیار یک معیار مناسب، برای ارزیابی کیفیت الگوریتم‌های طبقه‌بندی چند کلاسه است.

ادامه خواندن “معیار کاپا (Kappa) برای ارزیابی طبقه‌بندی‌های چندکلاسه”

معیار صحت (Precision)، پوشش (Recall) و معیار F

در درس گذشته با ماتریس اغتشاش (Confusion Matrix) و معیار دقت (Accuracy) آشنا شدیم. دیدیم که با استفاده از یک مجموعه‌ی آزمون، می‌توانیم دقتِ الگوریتم را از روی ماتریس اغتشاش، به سادگی محاسبه کنیم. اما آیا این دقت، معیاری خوبی برای ارزیابی یک الگوریتم بود؟

ادامه خواندن “معیار صحت (Precision)، پوشش (Recall) و معیار F”

ماتریس اغتشاش (Confusion Matrix) و معیار دقت (Accuracy)

همان‌طور که تا اینجا در دوره طبقه‌بندی داده‌ها مشاهده کردید، ما به دنبال الگوریتمی هستیم با استفاده از داده‌های آموزشی، یادگیری را انجام دهد، و بتواند داده‌های جدید را حتی‌المکان به درستی پیش‌بینی یا همان طبقه‌بندی نماید. مشکل هنگامی پدیدار می‌شود که الگوریتم معمولاً نمی‌تواند دقتِ ۱۰۰درصدی داشته باشد. یعنی معمولاً کمی خطا در پیش‌بینیِ خود دارد.

ادامه خواندن “ماتریس اغتشاش (Confusion Matrix) و معیار دقت (Accuracy)”

مدل‌های احتمالی در مقابل مدل‌های قطعی در طبقه‌بندی داده‌ها

همان‌طور که در دروس قبلی در مورد الگوریتم‌های طبقه‌بندی خواندیم، الگوریتم‌های طبقه‌بندی می‌توانستند از روی داده‌ها یادگیری را انجام داده و بعد از آن، نمونه‌های جدید را طبقه‌بندی کرده و به یکی از برچسب‌های موجودِ قبلی، برچسب‌گذاری نمایند. بسیاری از این الگوریتم‌ها، می‌توانند به جای برچسب‌زنیِ قطعی، احتمال هر کدام از برچسب‌های (طبقه‌های) موجود را برای نمونه‌ی جدید بیان کنند و در این درس به بررسی این روش خواهیم پرداخت.

ادامه خواندن “مدل‌های احتمالی در مقابل مدل‌های قطعی در طبقه‌بندی داده‌ها”

روش «یک در مقابل یک (One vs. One)» در طبقه‌بندی

اگر درس قبل را خوانده باشید، می‌دانید که یکی از روش‌های طبقه‌بندی (Classification) داده‌های چند کلاسه، استفاده از روشِ «یک در مقابل همه» یا همان One vs. All است. اما این روش، در برخی از مواقع ضعف‌هایی نیز دارد. به همین دلیل روش «یک در مقابل یک» یا همان One vs. One به وجود آمد که در بسیاری از مواقع، کیفیتِ به مراتب بهتری، نسبت به روش قبلی (One vs. All) ارائه می‌دهد.

ادامه خواندن “روش «یک در مقابل یک (One vs. One)» در طبقه‌بندی”

روش «یک در مقابل همه (One vs. All)» برای طبقه‌بندی داده‌های چند کلاسه

بسیاری از مسائل حوزه‌ی طبقه‌بندی (Classification) فقط دو کلاس (دو نوع برچسب) دارند. به این مسائل، طبقه‌بندی دودویی می‌گویند. برای مثال، مانند درس گذشته، فرض کنید می‌خواهیم سیستمی بسازیم که بتواند تفاوت ایمیل‌های اسپم و عادی را بر اساس یک سری ویژگی (بُعد)، تشخیص دهد. این کار توسط الگوریتم‌های طبقه‌بندی به سادگی قابل انجام است. اما هنگامی که تعداد این طبقه‌ها (انواع برچسب‌ها) بالا و بالاتر می‌رود، کار برای الگوریتم سخت شده نیاز به الگوریتم‌های پیچیده‌تری هست.

ادامه خواندن “روش «یک در مقابل همه (One vs. All)» برای طبقه‌بندی داده‌های چند کلاسه”

مسائل طبقه‌بندی دودویی (binary)، چند کلاسه (Multi Class)، چند برچسبه (Multi Label) و تفاوت آن‌ها

در بحث طبقه‌بندی داده‌ها یا همان Classification، ممکن است برخی از اصطلاحات به اشتباه به جای یکدیگر به کار روند و یا برخی از مفاهیم به جای برخی دیگر به کار گرفته شوند. در این درس به بررسی سه اصطلاح مهم و اصلی در طبقه‌بندی داده‌ها و تفاوت آن‌ها با یکدیگر می‌پردازیم.

ادامه خواندن “مسائل طبقه‌بندی دودویی (binary)، چند کلاسه (Multi Class)، چند برچسبه (Multi Label) و تفاوت آن‌ها”

رگرسیون لجستیک (Logistic Regression)

در درس‌های قبل این دوره، با انواع الگوریتم‌های طبقه‌بندی آشنا شدیم و دیدیم که چگونه می‌توان با استفاده از این الگوریتم‌ها، الگوهای مختلف و طبقه‌های متناظر آن‌ها را در یک مجموعه‌ی داده، شناسایی کرد. در این درس به سراغ یکی دیگر از الگوریتم‌های طبقه‌بندی (Classification) می‌رویم که رگرسیون لجستیک یا همان Logistic Regression نام دارد. این الگوریتم بر خلاف اسمش، جزو الگوریتم‌های طبقه‌بندی قرار می‌گیرد و معمولاً آن را یک الگوریتم رگرسیون نمی‌دانند.

ادامه خواندن “رگرسیون لجستیک (Logistic Regression)”

الگوریتم جنگل تصادفی (Random Forest)

اگر درسِ مدل‌های ترکیبی در طبقه‌بندی را خوانده باشید، درکِ الگوریتمِ جنگلِ تصادفی برای شما بسیار ساده خواهد بود. همان‌طور که در درسِ مدل‌های ترکیبی (ensemble) برای الگوریتم‌های طبقه‌بندی گفتیم، الگوریتم‌های Ensemble از الگوریتم‌های طبقه‌بندیِ ساده و ضعیف‌تر جهتِ تصمیم‌گیری استفاده می‌کنند. برای یادآوری شکل زیر را آورده‌ایم:

ادامه خواندن “الگوریتم جنگل تصادفی (Random Forest)”

طبقه بند ترکیبی (Ensemble Classifier) و مبحث Bagging و Boosting

آیا تا به حال شده بخواهید یک وسیله‌ی سنگین را بلند کنید و یک نفره نتوانید این کار را انجام دهید؟ احتمالاً برای این کار از چند نفر کمک گرفته‌اید و با کمکِ آن‌ها، وسیله‌ی سنگین را بلند کرده‌اید. در واقع تک‌تکِ شما قدرتِ این را ندارید که این میز را بلند کنید، بنابراین از ترکیب کردنِ قدرتتان با یکدگیر برای انجامِ این کار استفاده می‌کنید. طبقه‌بندهای ترکیبی که به ensemble methods معروف هستند، همین کار را انجام می‌دهند. در این درس می‌خواهیم با مفهومِ طبقه‌بندهای ترکیبی و روش‌های موردِ استفاده در آن صحبت کنیم.

ادامه خواندن “طبقه بند ترکیبی (Ensemble Classifier) و مبحث Bagging و Boosting”