آموزش یادگیری ماشین با داده های نامتوازن در پایتون – پیاده سازی عملی
6 ساعت
5.0
داده نامتوازن چیست؟ داده نامتوازن، دادهای است که در آن تعداد نمونهها در برخی از کلاسها، بسیار کمتر از کلاسهای دیگر است و تقریبا در اکثر مجموعه دادهها، با چنین مشکلی مواجه هستیم. به عنوان مثال، اگر مجموعه داده تصاویر پزشکی را در نظر بگیریم، تعداد نمونههای غیرسرطانی، بسیار از نمونههای سرطانی است. فرض کنید ۹۵ درصد از دادهها مربوط به نمونههای غیرسرطانی و ۵ درصد مربوط به دادههای سرطانی باشند. در این صورت، یک مدل یادگیری که همه نمونهها را غیرسرطانی تشخیص میدهد، دارای دقت ۹۵٪ خواهد بود. به عبارت دیگر، مدل یادگیری، الگوهای سرطانی را یاد نمیگیرد. برای حل چنین مشکلی، نیازمند متدهایی جهت متوازنسازی دادهها و نیز معیارهایی جهت ارزیابی مدلها در سناریوهای غیرمتوازن هستیم. چرا یاد میگیریم و اهمیت یادگیری آن چیست؟ مجموعه دادههای نامتوازن، یکی از چالشهای اساسی در یادگیری ماشین است که در آن، برخی از کلاسها به شکل معناداری نمونههای کمتری نسبت به کلاسهای دیگر دارند. آشنایی با یادگیری ماشین با دادههای نامتوازن در پایتون، باعث میشود تا به مجموعه گستردهای از تکنیکها برای مدیریت این مشکل مجهز شویم و از این طریق عملکرد مدلهای یادگیری ماشین را بهبود دهیم. در این فرادرس چه چیزی یاد میگیریم؟ در این آموزش، مجموعهای از تکنیکها جهت ارتقای عملکرد مدلهای یادگیری ماشین در مواجهه با مجموعه دادههای نامتوازن ارائه خواهد شد. این مجموعه شامل درک منطق، پیادهسازی در پایتون و نیز مزایا و معایب رویکردهای مختلف مدیریت مدلهای یادگیری ماشین بر روی دادههای نامتوازن است. در این فرادرس، با تکنیکهای مختلفی آشنا خواهیم شد و یاد خواهیم گرفت که چگونه از روشهای under-sampling، برای حذف تصادفی نمونهها از کلاسهایی که دارای اکثریت نمونهها هستند استفاده کنیم. همچنین یاد خواهیم گرفت که چگونه به کمک روشهای over-sampling میتوانیم نمونههای جدیدی را به مجموعه داده اضافه کنیم. علاوه براین، میآموزیم که چگونه میتوان از روشهای Ensemble جهت آموزش تعدادی مدل ضعیف بر روی زیرنمونههایی از مجموعه داده و نیز روشهای حساس به خطا جهت افزایش جریمه خطاهای مرتبط با کلاسهای اقلیت، به بهبود مدلهای یادگیری بر روی دادههای نامتوازن کمک کنیم. همچنین به صورت گامبهگام روشهای مدیریت مجموعه دادههای نامتوازن را خواهیم آموخت. برای هر روش، ابتدا منطق و تئوری آن را یاد میگیریم و پس از آن میآموزیم که چگونه آن را در پایتون پیادهسازی کنیم. در نهایت به مزایا، معایب و ملاحظات در استفاده از آن میپردازیم.