روش «یک در مقابل یک (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)”

نقشه‌ی راه تبدیل شدن به یک متخصص علم داده (فیلم)

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

ادامه خواندن “نقشه‌ی راه تبدیل شدن به یک متخصص علم داده (فیلم)”

مجموعه‌ی فیلم آموزش مقدماتی برنامه نویسی پایتون

همان‌طور که می‌دانید زبان پایتون یکی از زبان‌های مطرح در حوزه‌ی پیاده‌سازی پروژه‌های داده‌کاوی و یادگیری ماشین است. پایتون به دلیل سرعت بالا، کتابخانه‌های بسیار زیاد و همچنین استفاده کنندگانِ مطرح آن، به عنوان یکی از زبان‌های پرکاربرد در حوزه‌ی علم داده شناخته شده است.

ادامه خواندن “مجموعه‌ی فیلم آموزش مقدماتی برنامه نویسی پایتون”

دانلود رایگان کتاب داده‌کاوی برای برنامه نویسان

کتاب داده‌کاوی برای برنامه نویسان با نام اصلیِ A Programmer’s Guide to Data Mining توسط ران زاچارسکی در وب‌سایت guidetodatamining.com به صورت رایگان انتشار یافته است. این کتاب در ۸ فصل نگارش شده که در فصل اول به بررسی مقدماتی در مورد داده‌کاوی و جنبه‌های کاربردیِ آن پرداخته شده است.

ادامه خواندن “دانلود رایگان کتاب داده‌کاوی برای برنامه نویسان”

توزیع گاما (Gamma Distribution)

تا به این‌جا در دوره‌ی جاری، با انواع مختلفی از توابع توزیع احتمالی آشنا شدیم. تابع توزیع برنولی، دوجمله‌ای، پواسون، نمایی و توزیع نرمال از جمله این دست از توزیع‌ها بودند. در درس جاری به توزیع پیچیده‌تری با اسم توزیع گاما یا همان gamma distribution خواهیم پرداخت و کاربرد این توزیع را با هم مرور خواهیم کرد. توجه داشته باشید که توزیع گاما از کاربردی‌ترین توزیع‌های احتمالی در صنعت است.

ادامه خواندن “توزیع گاما (Gamma Distribution)”

آزمون برازش Chi-Square برای توزیع‌های احتمال

در دوره‌ی جاری، به بررسیِ انواع تابع توزیع احتمال و کاربردهای آن پرداختیم. اما سوال این‌جاست که چگونه بفهمیم فرآیندهایمان از یک توزیع خاص (مثلاً توزیع پواسون یا توزیع نرمال) پیروی می‌کنند یا خیر؟ در درس «چگونگیِ ارزیابی داده‌ها با توجه به توزیع نرمال»، فهمیدیم که چگونه می‌توانیم ببینیم که آیا داده‌های ما از توزیع نرمال پیروی می‌کنند یا خیر. در درس جاری می‌خواهیم به روش chi-square که یکی از روش‌های معروف و شناخته شده برای ارزیابی توزیعِ فرآیند‌ها هست، اشاره‌ی کوچکی کنیم. توسط این روش می‌توانیم توزیع‌های احتمالیِ دیگری را نیز بر روی داده‌هایمان ارزیابی کنیم. مثلاً ببینیم که آیا مجموعه‌ی داده‌ی ما از توزیع پواسون پیروی می‌کند یا خیر؟

ادامه خواندن “آزمون برازش Chi-Square برای توزیع‌های احتمال”

توزیع نمایی (Exponential Distribution)

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

ادامه خواندن “توزیع نمایی (Exponential Distribution)”