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

با تشکر

دسته بندی ها

+1 امتیاز

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

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

3 پاسخ

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

سلام
اگه این یه مدت که بحث Capsule Net داغه، مقالات و اخبار رو دنبال کرده باشید احتمالا در مورد ایده پایه CapsNet و مشکل مسیریابی با Pooling چیزایی خوندید
منظور از مسیریابی اینه که مثلا توی max pooling عنصر ماکزیموم رد میشه میره لایه بعدی، گرادیان هم از همون عنصر بر میگرده
اینکه max pooling می تونه به شبکه یه کوچولو (واقعا یه کوچولو)، translation invariant بده تا حدی درسته اما شاید مهمترین کارکرد pooling کم کردن اندازه feature map هاس
که این کار رو میشه با strided convolution هم انجام داد. یعنی به جای اینکه یه پیکسل یه پیکسل جلو برید، چندتا چندتا جلو میره، که همزمان هم کانولوشن انجام میشه هم اندازه کوچیک میشه
توی این مقاله هم نشون دادن که بدون کاهش چمشگیر دقت(روی دیتاستهای معروف)، میشه max pooling رو با strided convolution جا به جا کرد

https://arxiv.org/abs/1412.6806

اتفاقاتی که الان توی مقالات و deep learning می افته خیلی هاش فقط تجربس و روی دیتاستهایی که تست کردن تونستن جواب بگیرن ولی به هیچ وجه کلی و وحی منزل نیست
برای همین تجربه و آزمایش خیلی توی این زمینه مهمه. مثلا ممکنه همه مقاله ها اینطوری عمل کردن که max pooling دارن، و اینطوری به نظر برسه که پس وجودش خیلی واجبه و همیشه نتیجه رو بهتر میکنه اما واقعیت اینه که این قضیه همون تفکر استقراییه.

توسط (1.6k امتیاز)
انتخاب شده توسط
+2 امتیاز

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

توسط (4.3k امتیاز)
0 امتیاز

سلام
علت اصلی وجود لایه های پولینگ ایجاد ویژگی تغییر ناپذیری مکانی است؛ برای مثال علت اینکه ذکر می شود شبکه های سی ان ان نسبت به جابه جایی تا حدی مقاوم هستند وجود لایه های پولینگ به ویژه ماکزیمم پولینگ است. معمولا در لایه های ابتدایی ماکزیمم پولینگ استفاده نمی شود تا جزییات حفظ شوند. حتا از پدینگ استفاده می شود که تاثیر بوردرها بیشتر شود و سایز ورودی نیز کم نشود. در لایه های عمیقتر استفاده از لایه های پولینگ همانند ماکزیمم سبب می شود شبکه تا حدی نسبت به جابه جایی ورودی روباست شود. از سال 2015 که مقاله ی مربوط به تبدیلهای مکانی (spatial transformer)ها داغ شد این ویژگی spatial invariance شبکه های سی ان ان خیلی بیشتر مورد توجه قرار گرفت.

توسط (165 امتیاز)
...