به بخش پرسش و پاسخ یادگیری عمیق خوش آمدید,
این نسخه آزمایشی سایت است.
لطفا به نکات زیر توجه کنید:
  • برای ارتباط با مدیران میتوانید از صفحه مدیران اقدام کنید.
  • سوال و جواب ها باید به زبان فارسی باشند. استفاده از زبان انگلیسی یا فینگلیش برای پاسخ دادن مجاز نیست.
  • لطفا بعد از پرسش سوال لینک سوال خود را در گرو تلگرام (Iran Deep Learning Group) معرفی کنید تا سریعتر به جواب برسید. برای دسترسی به آخرین لینک از منابع یادگیری استفاده کنید
  • لطفا بجای عکس از متن استفاده کنید. اگر متون طولانی هستند از سایت pastebin.com برای اپلود استفاده کرده و لینک حاصل را در سوال خود قرار دهید. برای قرار دادن تصویر ، از بخش ارسال تصویر ادیتور سایت استفاده کنید.
  • بعد از دریافت پاسخ، بهترین پاسخ را از طریق کلیک بر روی علامت تیک انتخاب کنید
  • اگر با خطا و یا مشکلی مواجه شدید از بخش تماس با ما در انتهای صفحه و یا ایمیل Coderx7@gmail.com موضوع را اطلاع دهید.

با تشکر

دسته بندی ها

+1 امتیاز

سلام و وقت بخیر
و تشکر از همه عزیزانی که صبورانه به سوالات پاسخ می دهند
1-طبق توضیحاتی که در کاهش-overfitting-درمعماری-alexnet داده اید اگر درست متوجه شده باشم : در واقع dropout لایه است که به شبکه اضافه می شه تا با در نظر گرفتن احتمالاتی به حذف برخی نورون ها و اتصالات آنها بپردازد و بعد از آموزش کامل این شبکه کاهش یافته ، برای مرحله تست مجددا آن نورون ها و یالهایشان به شبکه بازگردانده می شوند. درسته ؟
2- مفهوم جملات زیر را درست متوجه نشدم لطفا کمی روشن تر بیان نمایید.
"این لایه میتواند از توابع اتلاف مختلف برای وظایف مختلف استفاده کند. Softmax loss برای پیش بینی یک کلاس از بین 8 کلاس دو به دو ناسازگار استفاده میشود. تابع اتلاف Sigmoid cross-entropy برای پیش بینی k مقدار احتمال مستقل بین[0,1]. استفاده میشود . تابع Euclidean برای پس رفتن در برچسبهای مقادیر واقعی[-inf,inf]بکار میرود."
3- در مقاله مروری موجود در سایت در مورد dropconnet نوشته شده :
"یک نمونه معروف مشتق شده از حذف تصادفی به حذف اتصال معروف است، که به صورت تصادفی وزن‌ها را به جای مقادیر فعال‌سازی حذف می‌کند. "
این یعنی چه ؟ مگر در روش حذف اتصال مقادیر فعالسازی با احتمالات حذف می شدند ؟ مگر اونجا هم وقتی نوروون را حذف می کنیم و یالهای آن نیز حذف می شوند به مفهوم حذف وزن ها نیست ؟ لطفا تفاوت این دو روش را برای بنده واضح نمایید
4- لطفا توضیحات بیشتری پیرامون شکلی که در پیشینه و مروری بر روشهای مختلف یادگیری عمیق ( با محوریت Computer vision ) در مبحث مورد نظر آمده(حذف تصادفی و حذف اتصال) بفرمایید.

متشکرم

توسط (219 امتیاز)

1 پاسخ

+6 امتیاز
 
بهترین پاسخ

سلام
Dropout کاری که میکنه اینه که در حین انجام آموزش بر اساس یک احتمالی که ما مشخص میکنیم میاد خروجی یک تعداد نورون رو صفر میکنه. با این کار عملا ما با یک شبکه بقول شما کاهش یافته (یک شبکه متفاوت) مواجه میشیم که در مواجهه با دیتا مجبوره بدون اتکا به نورونهای دیگه هرکدوم ویژگی های قدرتمند تری رو کشف و استفاده کنند. در هر تکرار این عمل بصورت رندوم تکرار میکشه و هربار یک تعداد نورون متفاوت به این شکل از رده خارج میشه.

  1. حق دارید چون اصلا اون هیچ ربطی به دارپ اوت نداره! اون بخشی از مطالب زیری لایه دراپ اوت بود که من اشتباها کپی کرده بودم و تا بحال کسی اشاره نکرده بود :)

  2. DropConnect یک تعمیم از Dropout هست. فرقی که بین این دو وجود داره اینه که در دراپ اوت شما کل نورون رو غیرفعال میکنید اما در dropconnect وزنهای ورودی به نورون غیرفعال میشن و اینطور نورون بصورت نیمه فعال باقی میمونه و فعالیت میکنه . باز یعنی در Dopout خروجی نورون شما صددرصد همیشه صفر خواهد بود. اما در dropconnect اینطور نیست. مثلا فرض کنید ورودی وزن ها به نورون x ما 10 باشه . یعنی 10 وزن ورودی داریم . حالا با یه احتمال مثلا 5 وزن از 10 وزن رو برابر 0 قرار میدیم . در اینجا باز 5 وزن دیگه وجود داره که وارد نورون میشه و نورون هم کارش رو انجام میده و خروجی رو تولید میکنه . اما زمانی که از dropout استفاده میشه کاری با وزن نداریم یکسره میریم اخر مسیر و خروجی نورون رو صفر میکنیم و بطور عملی اون نورورن رو کاملا غیرفعال میکنیم .
    این همون چیزی هست که در شکلی که در بخش پیشینه داریم (و همینطور اینجا) نشون داده شده :

No-Drop Network:
enter image description here

DropOut Network:
enter image description here

DropConnect Network:

enter image description here

البته میشه این مساله رو در dropconnect هم داشته باشیم چون همونطور که میبنید اون یک تعمیم از دراپ اوت هست و این مساله رو هم میتونید داشته باشید .
مثلا شکل زیر رو در نظر بگیرید :
enter image description here
مثلا به نورون دوم نگاه کنید (تصویر سمت راست از بالا دومین نورون) میبنید تمامی وزنهاش برابر صفر قرار گرفته یعنی عملا اینجا این نورون مثل این ممونه که دراپ اوت روش اعمال شده.

در عمل کارایی بهتری نسبت به دراپ اوت ارائه نداده. گزارشهایی که در مقاله اشون اومده همه در انسمبل بوده بصورت مجزا از دراپ اوت بدتر عمل کرده . البته افراد مختلف هم گفتن که روی MNIST تست کردن و بهتر از دراپ اوت جواب داده . ولی خب MNIST اصلا ملاک خوبی نیست . حداقلش دیتاست پیچیده تری مثل CIFAR10 یا SVHN پیشنهاد میشه (دیتاست های با حجم متوسط و کم اما پیجیده تر از ام نیست )

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

در انتها اینجا و اینجا رو هم یک نیم نگاهی بندازید بد نیست.

توسط (4.3k امتیاز)
انتخاب شده توسط
بسیار سپاسگزارم. کاملا برام روشن شد .
ممنون
سلام. خواهش میکنم .
لطفا هر وقت جواب گرفتید (مثل الان) روی اون علامت تیک کنار جواب کلیک کنید تا جواب سوال مشخص بشه وسوال هم بصورت تمام شده در بیاد.
...