tgoop.com/pytorch_howsam/490
Create:
Last Update:
Last Update:
چند روز قبل، یکی از دانشجویان دوره یادگیری ماشین هوسم سوالی را مطرح کرد که جالب بود. معمولا، کمتر در دورهها و کتابها درمورد آن صحبت میشود. موضوع سوال بهصورت کلی این بود:
من یک تسک دستهبندی چندکلاسه دارم که در کلاسها ترتیب وجود دارد. معیار ارزیابی چگونه باید باشد؟
معمولا، در یادگیری ماشین با تسکهای دستهبندی غیرترتیبی/اسمی یا Nominal Classification مواجه هستیم. یعنی ترتیب در کلاسها اهمیتی ندارد. مثل دستهبندی تصاویر CIFAR یا دستهبندی گلهای زنبق یا همان Iris معروف یا موارد دیگر...
اما در دستهبندی، تسک دیگری بهنام دستهبندی ترتیبی یا Ordinal Classification هم داریم. یکی از جالبترین نمونههایش، میتواند تخمین سن افراد باشد. تخمین سن را میتوان هم به شکل رگرسیون و هم دستهبندی حل کرد. وقتی مبتنی بر دستهبندی بخواهیم این مساله را حل کنیم، تعدادی کلاس مشخص داریم: مثلا 100 کلاس معادل با 1 تا 100 سالگی.
وقتی به این مساله دقیق نگاه کنیم، کاملا مشخص هست که ترتیب در آن معنا دارد. اگر مدل ما سن یک فرد 40 ساله را 41 سال پیشبینی کند، نباید بگوییم که اشتباه کردهای و یک پیشبینی اشتباه داریم. این نگرش مربوط به دستهبندی اسمی هست. در این حالت ما باید معیار ارزیابی مناسبی داشته باشیم که اختلاف کم بین 40 و 41 را نشان دهد. مدل ما فقط 1 سال پیشبینی اشتباه داشته که در تسک مشکل تخمین سن، اتفاقا عدد بسیار خوبی هست.
یکی از معیارهای ارزیابی رایج در دستهبندی ترتیبی، MAE یا Mean Absolute Error هست. یعنی ما یک مساله دستهبندی داریم، اما معیار ارزیابیمان شبیه رگرسیون هست. به مقالههای تخمین سن از روی چهره نگاه کنید؛ یکی از مهمترین معیارهای ارزیابی آنها همین MAE هست. مثلا میگویند خطای MAE مدل پیشنهادی 4.7 هست. یعنی این مدل با خطای 4.7 سال، سن افراد را پیشبینی میکند.
@pytorch_howsam
BY PyTorch Howsam
Share with your friend now:
tgoop.com/pytorch_howsam/490