مرحله 5: Hyperparameters را تنظیم کنید

برای تعریف و آموزش مدل مجبور شدیم تعدادی فراپارامتر انتخاب کنیم. ما بر شهود، مثال‌ها و توصیه‌های بهترین عمل تکیه کردیم. با این حال، اولین انتخاب ما از مقادیر فراپارامتر ممکن است بهترین نتایج را به همراه نداشته باشد. این فقط یک نقطه شروع خوب برای آموزش به ما می دهد. هر مشکلی متفاوت است و تنظیم این فراپارامترها به اصلاح مدل ما برای نمایش بهتر ویژگی‌های مشکل در دست کمک می‌کند. بیایید نگاهی به برخی از هایپرپارامترهایی که استفاده کردیم و معنای تنظیم آنها را بیاندازیم:

  • تعداد لایه ها در مدل : تعداد لایه های یک شبکه عصبی نشانگر پیچیدگی آن است. در انتخاب این مقدار باید دقت کنیم. لایه های بیش از حد به مدل اجازه می دهد تا اطلاعات زیادی در مورد داده های آموزشی بیاموزد که باعث برازش بیش از حد می شود. لایه های بسیار کم می تواند توانایی یادگیری مدل را محدود کند و باعث عدم تناسب شود. برای مجموعه داده های طبقه بندی متن، ما با MLP های یک، دو و سه لایه آزمایش کردیم. مدل های دو لایه عملکرد خوبی داشتند و در برخی موارد بهتر از مدل های سه لایه بودند. به طور مشابه، ما sepCNN را با چهار و شش لایه امتحان کردیم و مدل‌های چهار لایه عملکرد خوبی داشتند.

  • تعداد واحدها در هر لایه : واحدهای یک لایه باید اطلاعات مربوط به تبدیلی که یک لایه انجام می‌دهد را نگه دارند. برای لایه اول، این توسط تعدادی از ویژگی ها هدایت می شود. در لایه‌های بعدی، تعداد واحدها به انتخاب گسترش یا انقباض نمایش از لایه قبلی بستگی دارد. سعی کنید از دست رفتن اطلاعات بین لایه ها را به حداقل برسانید. ما مقادیر واحد را در محدوده [8, 16, 32, 64] و 32/64 واحدها به خوبی کار کردند.

  • نرخ انحراف : از لایه‌های حذف در مدل برای منظم‌سازی استفاده می‌شود. آنها کسری از ورودی را به عنوان یک اقدام احتیاطی برای بیش از حد برازش تعریف می کنند. محدوده توصیه شده: 0.2-0.5.

  • نرخ یادگیری : این نرخی است که در آن وزن شبکه عصبی بین تکرارها تغییر می کند. سرعت یادگیری زیاد ممکن است باعث نوسانات بزرگ در وزنه ها شود و ما هرگز مقادیر بهینه آنها را پیدا نکنیم. نرخ یادگیری پایین خوب است، اما این مدل به تکرارهای بیشتری نیاز دارد تا همگرا شود. ایده خوبی است که مثلاً از 1e-4 شروع کنید. اگر تمرین بسیار کند است، این مقدار را افزایش دهید. اگر مدل شما در حال یادگیری نیست، سعی کنید میزان یادگیری را کاهش دهید.

چند فراپارامتر اضافی وجود دارد که ما تنظیم کردیم که مختص مدل sepCNN ما هستند:

  1. اندازه هسته : اندازه پنجره کانولوشن. مقادیر توصیه شده: 3 یا 5.

  2. ابعاد جاسازی : تعداد ابعادی که می‌خواهیم برای نشان دادن جاسازی‌های کلمه استفاده کنیم—یعنی اندازه هر بردار کلمه. مقادیر توصیه شده: 50–300. در آزمایش‌های خود، از جاسازی‌های GloVe با 200 بعد با یک لایه تعبیه‌شده از پیش آموزش‌دیده استفاده کردیم.

با این هایپرپارامترها بازی کنید و ببینید چه چیزی بهتر عمل می کند. هنگامی که ابرپارامترهای با بهترین عملکرد را برای مورد استفاده خود انتخاب کردید، مدل شما آماده استقرار است.