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

با تشکر

دسته بندی ها

0 امتیاز

سلام دوستان وقت بخیر.
میخواستم بدونم contractive autoencoderچه کارایی داره؟و اصن اصولش چیه؟

ممنون میشم کمکم کنید

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

1 پاسخ

0 امتیاز

سلام
به طور خلاصه، اگه auto encoder معمولی رو در نظر بگیرید، یکی از کاربردهای اصلیش اینه که یه سری feature از ورودی استخراج کنیم
حالا این feature ها بسته به ساختار auto encoder، می تونن ویژگی های خاصی داشته باشن، مثلا توی حالت معمول، ابعاد این feature ها از ورودی کمتره و در نتیجه یه جور کاهش بعد هم داریم
یا مثلا اگه از denoising autoencoder استفاده کنید، باعث میشه feature هایی اسخراج بشه که تا حدی نسبت به noise ورودی مقاوم باشه

توی contractive autoencoder هم می خوایم دقیقا همین کار رو بکنیم و feature هایی استخراج کنیم که یه خواصی داشته باشن
این خاصیت اینجا اینه که اگه شما ورودی رو یکم تغییر بدید، feature هم یکم تغییر کنه (یعنی اینطوری نباشه مثلا چندتا پیکسل ورودی رو عوض کنید یهو کلا feature ها عوض شه).
برای اینکار میان و اندازه گرادیان feature ها (مثلا لایه میانی) رو نسبت به ورودی به loss اضافه می کنن
اینطوری شبکه باید وزنهایی رو یاد بگیره که هم بتونه از روی feature ها، ورودی رو بسازه (که میشه reconstruction loss) و هم باید این feature ها به نحوی باشن که اندازه گرادیان feature به ورودی کوچیک باشه (این تیکه میشه contractive loss) و همون میشه که اگه ورودی یکم تغییر بکنه، feature هم یکم تغییر می کنه
به عبارت دیگه بهش می گن که ما می خوایم feature هامون خاصیت محلیت (locality) داشته باشن

این مقاله تقریبا به طور کامل روی این بحث و مقایسه با بقیه نوع های auto encoder بحث کرده :

Contractive Auto-Encoders

http://www.icml-2011.org/papers/455_icmlpaper.pdf

این پست هم بد نیست ببینید، خلاصه همین حرفا رو زده

https://www.doc.ic.ac.uk/~js4416/163/website/autoencoders/contractive.html

توسط (1.6k امتیاز)
خیلیییییییییی ممنون و متشکر
...