آیا حساسیت کلاس به مدل وابسته است؟

مقدمه

حساسیت کلاس - موضوعی که ما زیاد در مورد آن صحبت نمی‌کنیم. و با این حال مشکل همچنان در این حوزه وجود دارد.

موفقیت یک پروژه طبقه‌بندی در یادگیری ماشین بستگی زیادی به این دارد که کلاس‌های کاملا مجزا چقدر خوب هستند. کم‌ترین «مناطق خاکستری»، بهتر است. واضح است که طبقات متمایز فرصت‌های زیادی برای هیچ مدلی برای ترکیب چیزها باقی نمی‌گذارند.

یکی از دلایل اصلی که ما تصمیم گرفتیم در مورد موضوع حساسیت کلاس بنویسیم این است که ما متوجه شدیم که هیچ چارچوب خوبی برای شناسایی اینکه دو کلاس به خوبی از هم جدا شده‌اند وجود ندارد، یا اینکه یک مجموعه داده چقدر مناسب برای یادگیری چگونگی تفکیک مثال‌ها از دو کلاس مختلف است.

حساسیت کلاس
حساسیت کلاس

ما آزمایش‌ها و یافته‌های خود را به سه مقاله تقسیم کرده‌ایم. اولی که به زودی در مورد آن بحث خواهیم کرد، هم‌اکنون منتشر شده است. در مقاله دوم، ما یک سوال کلیدی را مورد بحث قرار می‌دهیم - آیا مدل حساسیت کلاس وابسته است؟ ما پاسخ این سوال کلیدی را از طریق دو آزمایش که انجام دادیم کشف خواهیم کرد.

خلاصه سریع آزمایش‌ها حساسیت طبقاتی تاکنون

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

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

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

  • اگر همه کلاس‌ها و در نهایت تمام رکوردها به طور مساوی به برچسب‌های بد حساس نیستند، پس نباید تلاش بیشتری برای گرفتن آن‌هایی که به درستی برچسب گذاری شده‌اند بکنیم؟
  • اگر دو کلاس خیلی شبیه به هم باشند، آیا این نشانه این نیست که داده‌ها به خوبی با تعداد کلاس‌هایی که انتخاب می‌کنیم انطباق ندارند؟ که بهترین شرط دانشمند یادگیری ماشین ادغام آن دو کلاس است؟
  • آیا با افزایش اندازه مجموعه داده آموزشی ما می توان حساسیت کلاس را "ثابت" گرفت؟ یا این حساسیت بدون توجه به حجم داده‌های استفاده‌شده باقی می‌ماند؟
  • آیا مدل حساسیت کلاس وابسته به مدل است یا یک ویژگی ذاتی برای خود داده‌ها است؟

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

ما دو آزمایش مختلف انجام دادیم:

  • در اولین مورد متمرکز بر القای نویز برچسب گذاری، ما به تدریج نویز را در برچسب‌های آموزشی نسخه اصلی مجموعه داده CIFAR - ۱۰ تزریق کردیم و تاثیر آن را بر دقت و سردرگمی بین کلاس‌ها مشاهده کردیم.
  • در مورد دوم، ما تاثیر کاهش حجم داده‌ها را با کاهش تدریجی اندازه داده‌های CIFAR - ۱۰ و مشاهده تاثیر آن بر دقت و سردرگمی بین کلاس‌ها مطالعه کردیم.
ما متوجه شدیم که کلاس «گربه» در مجموعه داده CIFAR - ۱۰ حساس‌ترین کلاس برای هر دو آزمایش بود که به دنبال آن کلاس‌های«"پرنده» و «سگ» قرار داشت.

آیا حساسیت کلاس به مدل وابسته است؟

پس از شروع با یک شبکه عصبی کوچک عمیق (کم‌عمق) مرسوم در این آزمایش‌ها، ما به طور طبیعی شروع به فکر کردیم که آیا حساسیت کلاس وابسته به مدل است؟

به عبارت دیگر، آیا یک سرمایه‌گذاری عاقلانه در زمان برای یک دانشمند داده است تا مدل خود را بهینه کند اگر چنین اثراتی مشاهده شوند، یا زمان آن‌ها برای گرفتن داده‌های بیشتر یا برچسب‌های بهتر صرف شود؟ اگر از یک شبکه عمیق‌تر استفاده کنیم، آیا همان کلاس‌ها بیشتر تحت‌تاثیر قرار خواهند گرفت؟

با در نظر گرفتن آزمایش‌ها مقاله قبلی، ما تاثیر القا نویز برچسب گذاری و کاهش حجم داده‌ها را بر روی مدل‌های مختلف مورد مطالعه قرار دادیم.

ما چند مدل را نمونه‌گیری کردیم که برای بیشتر دانشمندان یادگیری ماشینی به منظور تکرار مطالعه ما و تست حساسیت کلاس معروف هستند:

  1. ResNet18
  2. UnResNet18 (ResNet18 without the skip connections)
  3. GoogLeNet
  4. LeNet

در این مرحله، ما تنها بر مدل‌های یادگیری عمیق تمرکز کرده‌ایم. اما ما معماری‌های نسبتا متنوعی را انتخاب کردیم تا به پاسخ سوالاتی که قبلا پرسیده شد نزدیک‌تر شویم.

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

قبل از اجرای این سری آزمایش‌ها، ما نسخه‌های پایه را برای هر یک از مدل‌های ذکر شده در بالا آموزش می‌دهیم تا اختلافات به‌دست‌آمده در هنگام ایجاد نویز یا کاهش حجم داده‌ها را بررسی کنیم. در شکل ۱، ما نتایج پایه برای هر مدل را نشان می‌دهیم.

هر بار، مدل با استفاده از مجموعه آموزشی کامل (مثال ۵۰ هزار)آموزش داده می‌شود، که ما آن را S0% می‌نامیم تا بگوییم که نویز ۰ % در مجموعه آموزشی تزریق شده‌است.

شکل ۱: ماتریس هم‌جوشی برای اساس به عنوان مثال ۵۰ هزار نمونه داده و نویز صفر برای مدل‌های LeNet, ResNet18, UnResNet18 و GoogLeNet
شکل ۱: ماتریس هم‌جوشی برای اساس به عنوان مثال ۵۰ هزار نمونه داده و نویز صفر برای مدل‌های LeNet, ResNet18, UnResNet18 و GoogLeNet


نکته مهم: برچسب‌های حقیقت مبنا در پایین خوانده می‌شوند و برچسب‌های پیش‌بینی‌شده در سمت چپ (به طوری که در اساس، ۸۲ گربه واقعی وجود دارند که به عنوان قورباغه پیش‌بینی شده‌اند). ما از یک کنوانسیون مشابه برای بقیه مقاله استفاده خواهیم کرد.

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

جدول ۱- نتایج پایه برای هر مدل
جدول ۱- نتایج پایه برای هر مدل


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

  • مدل LeNet در مقایسه با مدل‌های دیگر (عمیق‌تر) بسیار ضعیف عمل می‌کند، حتی بدون اینکه هیچ گونه نویز ایجاد شده باشد.
  • کلاس «پرند»"، که به طور خاص نسبت به نویز در مطالعه اصلی ما حساس بود، حتی زمانی که از یک مجموعه آموزشی کاملا تمیز استفاده می‌کنیم، مشکل‌ساز است.
  • به نظر می‌رسد که کلاس «سگ» هم در ResNet18 و هم در UnResNet18 از کم‌ترین دقت برخوردار است.
  • مدل LeNet کلاس گربه را به عنوان مشکل‌سازترین نشان می‌دهد، درست مانند مدل سنتی اصلی ما (و کم‌عمق)
  • کلاس‌های «گربه» و «سگ» در مورد مدل GoogLeNet به یک اندازه نادرست هستند

با این حال، در حالی که تفاوت‌های زیادی را می توان در مقایسه ماتریس‌های سردرگمی مشاهده کرد، ما همچنین اشتراکات زیادی را مشاهده می‌کنیم. برای مثال، گربه‌ها همیشه عمدتا برای سگ‌ها و تا حد کمتری برای قورباغه‌ها گیج می‌شوند. این یک نشانه قوی است که شباهت کلاس، در واقع، برای داده‌ها ذاتی است، و از این رو، بدون در نظر گرفتن مدلی که استفاده می‌شود، برخی از حساسیت از قبل غالب خواهد شد.

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

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

نتیجه‌گیری:
-
به طور کلی، همان گروه از کلاس‌ها برای یکدیگر، بدون در نظر گرفتن مدلی که انتخاب شده‌است، گیج می‌شوند.
- سردرگمی میان طبقه‌ای یک جهت گیری است، به عنوان مثال کلاس A را می‌توان به راحتی برای کلاس B اشتباه گرفت حتی اگر کلاس B به ندرت برای کلاس A اشتباه گرفته شود.

آزمایش ۱: تولید نویز برچسب دار

ما همان پروتکلی را دنبال می‌کنیم که در مطالعه قبلی خود استفاده کردیم. و ما مراحل زیر را برای افزودن نویز برچسب دار به مجموعه داده آموزشی CIFAR - ۱۰ تمیز تکرار خواهیم کرد:

  • انتخاب تصادفی x٪ مجموعه آموزشی
  • به طور تصادفی برچسب‌های رکوردهای انتخاب‌شده را مرتب کنید؛ این نمونه را Sx بنامید.
  • همان مدل را با استفاده از Sx آموزش دهید. در اینجا، مدل ما یک شبکه عصبی کانولوشنال کوچک (۶ لایه) است (برای نتیجه‌گیری از آزمایش‌های ما مهم نیست)
  • تحلیل ماتریس سردرگمی در تمام مدل‌ها

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

در ادامه، ما نتایج را برای ماتریس میانگین سردرگمی برای S10%, i, 1≤i≤5 در مدل‌های مختلف نشان می‌دهیم:

شکل ۲: ستون چپ ماتریس هم‌جوشی را برای S10% و ستون راست ماتریس‌های درهم‌ریختگی نسبی را برای نویز ۱۰٪ برای مدل‌های LeNet، ResNet18، UnResNet18 و گوگل‌نت نشان می‌دهد.
شکل ۲: ستون چپ ماتریس هم‌جوشی را برای S10% و ستون راست ماتریس‌های درهم‌ریختگی نسبی را برای نویز ۱۰٪ برای مدل‌های LeNet، ResNet18، UnResNet18 و گوگل‌نت نشان می‌دهد.


از شکل بالا می‌توانیم ببینیم که LeNet به شدت به آلودگی برچسب دار واکنش نشان می‌دهد (چیزی که به نوعی انتظار می‌رفت به ماتریس آشفته پایه آن نگاه کند). از آنجا که این مدل عملکرد خوبی بر روی مجموعه داده CIFAR - ۱۰ تمیز ندارد، ما می‌توانیم به خوبی پیش‌بینی کنیم که با آلودگی عملکرد بسیار بدی خواهد داشت.

«گربه‌ها» و «پرندگان» ضعیف‌ترین کلاس‌ها در هر دو گروه ResNet18 و UnResNet18 هستند. با نگاهی به ماتریس سردرگمی نسبی در میان مدل‌ها، می‌توانیم ببینیم که گود نت در برچسب گذاری آلودگی در مقایسه با مدل‌های دیگر بسیار پایدار است. حتی در گوگل‌نت، «گربه» و «پرنده» ضعیف‌ترین طبقات هستند.

شکل ۳ در زیر چهار کلاس با کم‌ترین دقت را در میان مدل‌ها نشان می‌دهد. در اینجا ما می‌توانیم ببینیم که «گربه» تقریبا بدون ابهام ضعیف‌ترین کلاس است و مدل‌ها تا حدی در مورد دومین گروه ضعیف بین «پرنده» و «سگ» تعصب دارند.

شایان‌ذکر است که «گربه» در تمام مدل‌ها به جز LeNet و «پرنده» و «گربه» حساس‌ترین کلاس با برچسب نویز هستند. این امر احتمالا به ما می‌گوید که کلاس‌هایی که حساس هستند صرف‌نظر از مدل استفاده‌شده بر روی آن‌ها، حساس باقی می‌مانند.

شکل ۳: کلاس‌های ضعیف برای ۳۰٪ القا نویز برچسب گذاری شده تصادفی در تمام مدل‌ها
شکل ۳: کلاس‌های ضعیف برای ۳۰٪ القا نویز برچسب گذاری شده تصادفی در تمام مدل‌ها


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

نتیجه‌گیری:
-
همان کلاس‌ها با برچسب زدن آلودگی تحت‌تاثیر قرار می‌گیرند، بدون در نظر گرفتن مدل استفاده‌شده

آزمایش # ۲: کاهش داده

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

در این آزمایش، ما انتخاب کردیم که اندازه مجموعه آموزشی را کاهش دهیم (بدون ایجاد هر گونه نویز ارادی)و اثرات آن را بر ماتریس سردرگمی ببینیم. توجه داشته باشید که این آزمایش کاهش داده روی CIFAR - ۱۰ تمیز انجام شد، یعنی بدون هیچ آلودگی برچسب دار.

شکل ۴: ستون چپ ماتریس سردرگمی را برای ۴۰٪ نشان می‌دهد یعنی ۲۰ هزار نمونه داده و ستون سمت راست ماتریس‌های سردرگمی نسبی را برای ۴۰٪ نمونه‌های داده برای مدل‌های LeNet، ResNet18، UnResNet18، و گوگل‌نت نشان می‌دهد.
شکل ۴: ستون چپ ماتریس سردرگمی را برای ۴۰٪ نشان می‌دهد یعنی ۲۰ هزار نمونه داده و ستون سمت راست ماتریس‌های سردرگمی نسبی را برای ۴۰٪ نمونه‌های داده برای مدل‌های LeNet، ResNet18، UnResNet18، و گوگل‌نت نشان می‌دهد.


شکل ۵: کلاس‌های ضعیف برای کاهش داده ۹۰٪ (۵ هزار نمونه داده) در میان مدل‌ها
شکل ۵: کلاس‌های ضعیف برای کاهش داده ۹۰٪ (۵ هزار نمونه داده) در میان مدل‌ها


ما می‌توانیم ببینیم که کلاس‌های «گربه» و «پرنده» بیش‌ترین تاثیر را از کاهش حجم داده‌ها (در میان مدل‌های مختلف)دارند. کلاس‌های متاثر از کاهش حجم به طور کلی مشابه کلاس‌های متاثر از نویز هستند.

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

نتیجه‌گیری:
-
همان کلاس‌ها در هنگام کاهش مقدار داده‌های آموزشی بدون در نظر گرفتن مدل استفاده‌شده تحت‌تاثیر قرار می‌گیرند.
- کلاس‌هایی که با تزریق نویز برچسب گذاری تحت‌تاثیر قرار گرفته‌اند، به طور کلی، همان کلاس‌هایی هستند که به کاهش حجم حساس هستند.

یادداشت‌های پایانی

این مطالعه ما را به یک مشاهده جالب آورد: که همان کلاس‌ها به طور مداوم تحت‌تاثیر کاهش اندازه مجموعه آموزشی و تزریق برچسب‌های اشتباه صرف‌نظر از مدلی که انتخاب کردیم قرار گرفتند. این امر از این فرضیه حمایت می‌کند که حساسیت کلاس در واقع مستقل از مدل نیست، بلکه یک ویژگی ذاتی داده است.

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

اما مطالعه ما نیز ما را به برخی از سوالات بعدی رساند. از آنجا که همان کلاس‌ها به تزریق نویز و کاهش حجم حساس بودند، و از آنجا که هر آزمایش تزریق نویز همچنین باعث کاهش داده‌های خوب (به درستی برچسب گذاری شده)می‌شود، این سوال مطرح می‌شود:

  • اگر نویز برچسب گذاری روی مجموعه آموزش بسیار بزرگ تاثیر داشته باشد (به عنوان مثال، آیا برچسب زدن کیفیت به اندازه مجموعه داده‌های بزرگ اهمیت دارد؟
  • اگر اثر برچسب‌های بد بتواند با حجم داده جبران شود

اینها سوالاتی هستند که ما در آخرین مقاله این مجموعه پوشش خواهیم داد.


منتشرشده در: سایت analyticsvidhya به تاریخ ۱۴ فوریه ۲۰۲۰
نویسنده: Jennifer Prendki و Akanksha Devkar
لینک مقاله اصلی: https://www.analyticsvidhya.com/blog/2020/02/class-sensitivity-model-dependent-analyzing-4-popular-deep-learning-architectures/

این مقاله توسط مترجم هوشمند مقالات علمی تخصصی و به صورت خودکار و با حداقل بازبینی انسانی ترجمه شده و می‌تواند به صورت محدود دارای اشکالات ترجمه باشد.