سلام
Dropout کاری که میکنه اینه که در حین انجام آموزش بر اساس یک احتمالی که ما مشخص میکنیم میاد خروجی یک تعداد نورون رو صفر میکنه. با این کار عملا ما با یک شبکه بقول شما کاهش یافته (یک شبکه متفاوت) مواجه میشیم که در مواجهه با دیتا مجبوره بدون اتکا به نورونهای دیگه هرکدوم ویژگی های قدرتمند تری رو کشف و استفاده کنند. در هر تکرار این عمل بصورت رندوم تکرار میکشه و هربار یک تعداد نورون متفاوت به این شکل از رده خارج میشه.
حق دارید چون اصلا اون هیچ ربطی به دارپ اوت نداره! اون بخشی از مطالب زیری لایه دراپ اوت بود که من اشتباها کپی کرده بودم و تا بحال کسی اشاره نکرده بود :)
DropConnect یک تعمیم از Dropout هست. فرقی که بین این دو وجود داره اینه که در دراپ اوت شما کل نورون رو غیرفعال میکنید اما در dropconnect وزنهای ورودی به نورون غیرفعال میشن و اینطور نورون بصورت نیمه فعال باقی میمونه و فعالیت میکنه . باز یعنی در Dopout خروجی نورون شما صددرصد همیشه صفر خواهد بود. اما در dropconnect اینطور نیست. مثلا فرض کنید ورودی وزن ها به نورون x ما 10 باشه . یعنی 10 وزن ورودی داریم . حالا با یه احتمال مثلا 5 وزن از 10 وزن رو برابر 0 قرار میدیم . در اینجا باز 5 وزن دیگه وجود داره که وارد نورون میشه و نورون هم کارش رو انجام میده و خروجی رو تولید میکنه . اما زمانی که از dropout استفاده میشه کاری با وزن نداریم یکسره میریم اخر مسیر و خروجی نورون رو صفر میکنیم و بطور عملی اون نورورن رو کاملا غیرفعال میکنیم .
این همون چیزی هست که در شکلی که در بخش پیشینه داریم (و همینطور اینجا) نشون داده شده :
No-Drop Network:
DropOut Network:
DropConnect Network:
البته میشه این مساله رو در dropconnect هم داشته باشیم چون همونطور که میبنید اون یک تعمیم از دراپ اوت هست و این مساله رو هم میتونید داشته باشید .
مثلا شکل زیر رو در نظر بگیرید :
مثلا به نورون دوم نگاه کنید (تصویر سمت راست از بالا دومین نورون) میبنید تمامی وزنهاش برابر صفر قرار گرفته یعنی عملا اینجا این نورون مثل این ممونه که دراپ اوت روش اعمال شده.
در عمل کارایی بهتری نسبت به دراپ اوت ارائه نداده. گزارشهایی که در مقاله اشون اومده همه در انسمبل بوده بصورت مجزا از دراپ اوت بدتر عمل کرده . البته افراد مختلف هم گفتن که روی MNIST تست کردن و بهتر از دراپ اوت جواب داده . ولی خب MNIST اصلا ملاک خوبی نیست . حداقلش دیتاست پیچیده تری مثل CIFAR10 یا SVHN پیشنهاد میشه (دیتاست های با حجم متوسط و کم اما پیجیده تر از ام نیست )
خود من هم شخصا هیچوقت ازش استفاده نکردم و تو مقالات هم ندیدم مطرح باشه.
در انتها اینجا و اینجا رو هم یک نیم نگاهی بندازید بد نیست.