پروژه ۲: دستهبندی گلهای Iris
پروژه کامل دستهبندی روی دیتاست کلاسیک Iris: EDA، مقایسه چند دستهبند و ارزیابی جامع
پروژه ۲: دستهبندی گلهای Iris
Iris معروفترین دیتاست دنیای ML: ۱۵۰ گل از ۳ نوع با ۴ ویژگی (طول/عرض کاسبرگ و گلبرگ). «Hello World» ماشین لرنینگ!
اهداف پروژه
- شناخت کامل داده با EDA و مصورسازی
- مقایسه چند دستهبند با اعتبارسنجی متقابل
- ارزیابی جامع: ماتریس درهمریختگی + معیارها
- تنظیم هایپرپارامتر بهترین مدل
مراحل اجرا
- بارگذاری:
load_iris() - EDA: جفتنمودار (pairplot) ویژگیها — کدام ویژگی کلاسها را جدا میکند؟
- تقسیم: ۸۰/۲۰ با stratify
- مدلها: KNN، درخت، جنگل، SVM، لجستیک
- بهترین: با cross_val_score انتخاب
- ارزیابی نهایی: روی تست فقط یکبار
بینشهای مورد انتظار
- گلبرگها (petal) برای جدا کردن کلاسها بهتریناند
- Setosa بهراحتی جدا میشود؛ Versicolor و Virginica کمی همپوشانی دارند
- معمولاً همه مدلها ۹۰-۱۰۰٪ میگیرند — داده تمیز و ساده!
چالشهای افزوده
- فقط با ۲ ویژگی (بدون گلبرگ) مدل بسازید — افت چشمگیر!
- PCA به ۲ بعد + مصورسازی مرز تصمیم
- همان پروژه را روی دیتاست Wine تکرار کنید
- منحنی یادگیری رسم کنید
کد کامل در مثال آمده است. بعد از اجرا، سعی کنید خروجی هر مرحله را تفسیر کنید — تحلیل نتیجه مهمتر از تولید آن است!
جمعبندی
- گردش کار کامل دستهبندی را روی Iris اجرا کردیم
- مقایسه منصفانه مدلها با cross-validation
- این الگو برای هر مسئله دستهبندی قابل استفاده است
این مبحث بخشی از دوره آموزش کامل ماشین لرنینگ است.