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

با تشکر

دسته بندی ها

+1 امتیاز

آیا قاعده سر انگشتی در رابطه با تعداد بهینه پارامتر های قابل آموزش در LSTM با توجه به تعداد دادهای آموزشی دردسترس وجود دارد؟ و همچنین افزایش تعداد لایه ها (عمق شبکه ) چه حسنی برای شبکه Lstm خواهد داشت؟

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

1 پاسخ

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

در ابتدا پیشنهاد میکنم فصل هفتم کتاب یادگیری عمیق آقای گود فلو رو مطالعه کنید نکات جالبی در مورد پیچیدگی مدل ، تعداد پارامتر های آزاد بیان شده که به صورت یک سری قوانین عمومی در اومده اند. ( انتخاب معماری مناسب یک امر گسسته هست نه متوالی ، شبیه تیوری no free lunch دیوید ولپرت «در جستجو و بهینه‌سازی از ناهار مجانی خبری نیست»)
قانون خاص سر انگشتی برای انتخاب تعداد پارامتر ها و لایه ها وجود نداره ، انتخاب پارامترهای مطلوب برای معماری شبکه عصبی اغلب می تونه تفاوت بین state of the art و یک کار با نتایج تصادفی شه.

در مقالات کمی به این مقوله پرداخته شده ، بطوریکه انتخاب hyperparameter درست اغلب بیشتر شبیه black art
(یا کیمیاگری ) هست که معمولا از طریق تجربه بدست میاد.

ابتدا بایستی بگم ، در بیشتر مدل های که به عنوان state of the art منتشر میشن ، معمولا تعداد زیادی مدل با ابر پارامتر مختلف آموزش داده میشه )
Brute-force)تا به یک معماری بهینه دست پیدا کنند ، اما فقط در صورت داشتن یک سخت افزار خوب این امر امکان پذیر هست .

به صورت کلی همیشه از یک baseline شروع کنید (یا کارهای قبلی که نتایج خوبی بدست آوردند) به تدریج پس از بررسی نتیجه تعداد پارامترها رو افزایش بدید ، این پروسه به
Babysitting the learning process معروف هستش . تعداد زیاد و یا کم پارامتر ها میتونه تاثیر مستقیم بر روی overfit یا underfit شدن مدل داره .
اگه به تاریخچه کارهای مختلف یادگیری عمیق نگاه کنید می‌بینید که در طول سالهای مختلف با افزایش عمق و معماری دقت افزایش پیدا کرد. محققین معمولا با تعداد پارامتر زیاد شروع میکنند و در ادامه توسط متد های مختلف regularization تعداد پارامتر ها رو کنترل می‌کنند ، با استفاده از این تکنیک اهمیت انتخاب ساختار مدل کاهش پیدا می‌کنه اما در عوض بایستی مقداری وقت صرف انتخاب پارامتر های مناسب regularization کنید . اما این امر می‌تونه در مورد شبکه های بازگشتی مثل lstm متفاوت باشه ، به صورتی که با افزایش عمق در این شبکه ها محاسبات به شدت افزایش پیدا می‌کنه .

در مورد lstm انتخاب درست word embeddings می‌تونه تاثیر زیادی بر روی نتیجه کار داشته باشه در حالی که تعداد لایه ها و بلاک های lstm می‌تونه تاثیرات جزیی داشته باشه.

پیشنهاد میکنم مقاله
Optimal Hyperparameters for Deep LSTM-Networks for Sequence Labeling Tasksرو مطالعه کنید . این مقاله نکات جالبی در مورد انتخاب صحیح پارامتر ها ارایه شده ( بیش از ۵۰۰۰۰ شبکه آموزش داده شده) که می‌تونه به شما در انتخاب صحیح پارامتر ها کمک کنه

توسط (415 امتیاز)
انتخاب شده توسط
...