گاما رو نصب کن!

{{ number }}
اعلان ها
اعلان جدیدی وجود ندارد!
کاربر جدید

جستجو

پربازدیدها: #{{ tag.title }}

میتونی لایو بذاری!
نمونه سوال محتوای آموزشی آزمون آنلاین پرسش و پاسخ درسنامه آموزشی مدرسه‌یاب معلم‌ها

طبقه‌بندی داده‌ها: یعنی رایانه با توجه به یادگیری خود، چیزهای مختلف را دسته‌بندی کند، مثلاً عکس حیوانات را به دو دسته «گربه» و «سگ» جدا کند.

بروزرسانی شده در: 21:24 1405/02/5 مشاهده: 26     دسته بندی: کپسول آموزشی

رده‌بندی داده‌ها: چگونه رایانه گربه را از سگ تشخیص می‌دهد؟

بررسی گام‌به‌گام الگوریتم‌های طبقه‌بندی، از تعریف تا کاربرد و چالش‌ها
خلاصهٔ مقاله: در این مقاله می‌آموزید که «رده‌بندی داده‌ها»¹ یکی از شاخه‌های یادگیری نظارت‌شده² است. با مثال سادهٔ تشخیص گربه و سگ، مراحل ساخت یک دسته‌بند (شامل جمع‌آوری داده، استخراج ویژگی، انتخاب الگوریتم و ارزیابی) را گام به گام دنبال می‌کنید. همچنین با معیارهایی مثل دقت، ماتریس درهم‌ریختگی³ و کاربردهای روزمرهٔ طبقه‌بندی مانند فیلتر هرزنامه‌ها یا تشخیص چهره آشنا می‌شوید.

رده‌بندی در یک نگاه: معنا و تفاوت با خوشه‌بندی

در زندگی روزمره مدام در حال دسته‌بندی هستیم: میوه‌ها را از سبزیجات جدا می‌کنیم، ایمیل‌های مهم را از هرزنامه تشخیص می‌دهیم. رایانه نیز با کمک «یادگیری ماشین» می‌تواند چنین کاری انجام دهد. به فرآیندی که رایانه بر اساس نمونه‌های قبلی (داده‌های برچسب‌دار) یاد می‌گیرد تا یک ورودی جدید را در یکی از گروه‌های از پیش تعیین‌شده قرار دهد، رده‌بندی می‌گویند.

تفاوت اصلی رده‌بندی با خوشه‌بندی⁴ در این است که در رده‌بندی، ما از قبل برچسب گروه‌ها را داریم (مثلاً «گربه» و «سگ») و رایانه فقط قاعدهٔ تشخیص را می‌آموزد. اما در خوشه‌بندی، خود رایانه بدون کمک انسان، داده‌ها را بر اساس شباهت به چند دسته تقسیم می‌کند.

نکتهٔ مهم: برای اینکه رایانه بتواند دسته‌بندی کند، به «دادهٔ آموزشی» نیاز دارد. مثلاً برای تشخیص گربه و سگ، هزاران تصویر از هر دو حیوان همراه با برچسب صحیح (گربه یا سگ) به کامپیوتر نشان می‌دهیم. این مرحله «یادگیری نظارت‌شده» نام دارد.

مراحل ساخت یک دسته‌بند ساده: از تصویر تا تصمیم

فرض کنیم می‌خواهیم برنامه‌ای بنویسیم که عکس حیوانات را به دو دستهٔ «گربه» و «سگ» تقسیم کند. این کار شامل مراحل زیر است:

  • جمع‌آوری داده: تهیهٔ هزاران عکس از گربه‌ها و سگ‌ها که هر کدام برچسب صحیح دارند.
  • استخراج ویژگی: تبدیل هر تصویر به اعدادی که رایانه بفهمد. مثلاً میانگین روشنایی، وجود گوش‌های تیز یا پوزهٔ دراز می‌تواند ویژگی‌های سودمندی باشند.
  • انتخاب مدل (دسته‌بند): انتخاب الگوریتمی مانند درخت تصمیم⁵، ماشین بردار پشتیبان⁶ یا شبکهٔ عصبی.
  • آموزش: دادن داده‌های برچسب‌دار به الگوریتم تا پارامترهای آن تنظیم شود.
  • ارزیابی: آزمودن مدل روی داده‌هایی که قبلاً ندیده، برای سنجش دقت.
الگوریتم دسته‌بند ایدهٔ اصلی مزیت نسبی
درخت تصمیم ساختن یک درخت پرسش و پاسخ (آیا گوش نوک‌تیز است؟) قابل درک برای انسان، نیاز به دادهٔ کم
نزدیک‌ترین همسایه (k-NN) دادهٔ جدید را شبیه به k دادهٔ نزدیک به آن دسته‌بندی کن بسیار ساده، نیازی به مرحلهٔ آموزش صریح ندارد

مثال عملی: دسته‌بندی میوه‌ها بر اساس جرم و رنگ

فرض کنید فروشنده‌ای می‌خواهد با استفاده از دو ویژگی «وزن (گرم)» و «قرمزی (عدد از ۰ تا ۱)» سیب را از پرتقال جدا کند. او داده‌های زیر را جمع‌آوری کرده:

  • سیب: وزن 150 گرم، قرمزی 0.85
  • پرتقال: وزن 170 گرم، قرمزی 0.25
  • دادهٔ جدید: وزن 160 گرم، قرمزی 0.8

اگر از دسته‌بند «نزدیک‌ترین همسایه با k=1» استفاده کنیم، فاصلهٔ دادهٔ جدید را با سیب و پرتقال محاسبه می‌کنیم. فرمول فاصله (فیثاغورث):

$d = \sqrt{(w_2-w_1)^2 + (r_2-r_1)^2}$

فاصله تا سیب: $\sqrt{(160-150)^2 + (0.8-0.85)^2} = \sqrt{100 + 0.0025} \approx 10.000125$

فاصله تا پرتقال: $\sqrt{(160-170)^2 + (0.8-0.25)^2} = \sqrt{100 + 0.3025} \approx 10.015$

از آنجا که فاصله تا سیب کمتر است، رایانه این میوهٔ جدید را سیب دسته‌بندی می‌کند. هرچه تعداد ویژگی‌ها بیشتر باشد (مثل شکل، وجود هسته، جنس پوست)، دقت دسته‌بندی بالاتر می‌رود.

چالش‌های مفهومی در طبقه‌بندی داده‌ها

۱) چرا نمی‌توان همیشه به دقت ۱۰۰٪ رسید؟

زیرا داده‌ها ممکن است نویز (اطلاعات نادرست) داشته باشند یا ویژگی‌های دو دسته کاملاً همپوشانی کنند. مثلاً یک عکس تار از گربه ممکن است شبیه سگ شود. هدف رسیدن به دقت قابل قبول است، نه بی‌نقص مطلق.

۲) «بیش‌برازش»⁷ چیست و چرا مضر است؟

وقتی مدل، جزئیات اضافی و حتی نویز داده‌های آموزشی را به خاطر می‌سپارد، روی دادهٔ جدید ضعیف عمل می‌کند. مثل دانش‌آموزی که سوالات کتاب را حفظ کرده اما با سوال تازه درمانده می‌شود. راه حل: استفاده از دادهٔ اعتبارسنجی و ساده‌سازی مدل.

۳) چگونه دقت یک دسته‌بند را اندازه می‌گیریم؟

از «ماتریس درهم‌ریختگی» استفاده می‌شود که چهار عدد را نشان می‌دهد: مثبت درست (گربه را گربه گفت)، مثبت کاذب (سگ را گربه گفت)، منفی درست (سگ را سگ گفت)، منفی کاذب (گربه را سگ گفت). سپس معیارهایی مثل دقت = (مثبت درست + منفی درست) تقسیم بر کل داده محاسبه می‌شود.

کاربردهای روزمرهٔ رده‌بندی در فناوری

  • پالایش هرزنامه: ایمیل‌ها به دو دستهٔ «هرزنامه» و «غیرهرزنامه» تقسیم می‌شوند.
  • تشخیص چهره: گوشی هوشمند چهرهٔ صاحب خود را از دیگران تشخیص می‌دهد.
  • تشخیص نفوذ در شبکه: ترافیک شبکه به دسته‌های «عادی» و «حمله» رده‌بندی می‌شود.
  • تشخیص پزشکی: بر اساس علائم و تصاویر پزشکی، بیمار به دستهٔ «بیمار» یا «سالم» طبقه‌بندی می‌شود.
مرور سریع: رده‌بندی داده‌ها قلب بسیاری از سیستم‌های هوشمند امروزی است. با چهار گام اصلی (داده، ویژگی، الگوریتم، ارزیابی) می‌توان یک دسته‌بند ساده ساخت. دو چالش اصلی «نویز» و «بیش‌برازش» هستند که با انتخاب صحیح داده و ساده‌سازی مدل برطرف می‌شوند. در عمل، هیچ دسته‌بندی به دقت صد در صدی نمی‌رسد، اما حتی دقت ۹۰٪ نیز در بسیاری از کاربردها بسیار ارزشمند است.

پاورقی‌ها

۱ رده‌بندی داده‌ها (Classification): فرآیند قراردادن نمونه‌های جدید در یکی از گروه‌های از پیش تعیین‌شده بر اساس یادگیری از نمونه‌های برچسب‌دار.

۲ یادگیری نظارت‌شده (Supervised Learning): شاخه‌ای از یادگیری ماشین که در آن به الگوریتم، هم ورودی و هم خروجی صحیح (برچسب) نشان داده می‌شود.

۳ ماتریس درهم‌ریختگی (Confusion Matrix): جدولی که کارایی مدل رده‌بند را با نمایش تعداد پیش‌بینی‌های صحیح و غلط نشان می‌دهد.

۴ خوشه‌بندی (Clustering): نوعی یادگیری بدون نظارت که داده‌ها را بدون استفاده از برچسب، بر اساس شباهت ذاتی دسته‌بندی می‌کند.

۵ درخت تصمیم (Decision Tree): مدلی که با پرسش‌های متوالی از ویژگی‌های داده، به برگ‌های تصمیم می‌رسد.

۶ ماشین بردار پشتیبان (Support Vector Machine): الگوریتمی که با یافتن مرز جداساز بهینه بین دسته‌ها کار می‌کند.

۷ بیش‌برازش (Overfitting): وضعیتی که مدل، دادهٔ آموزشی را بیش از حد جزئی یاد می‌گیرد و توانایی تعمیم به دادهٔ جدید را از دست می‌دهد.