آموزشیادگیری ماشین

درس ۷۶ از ۹۹، هوش مصنوعی، حدود ۶ دقیقه خواندن

توقف زودهنگام و نمودار یادگیری

جواب کوتاه

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

نمودار یادگیری

موقع آموزش، هر چند دور یه بار خطای مدل رو روی دو جا می‌سنجیم: روی داده‌ی آموزش، و روی داده‌ای که مدل باهاش آموزش نمی‌بینه. اگه این‌ها رو بکشیم:

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

توقف زودهنگام یعنی همون‌جا، سر پرچم، بس کنیم.

قاعده‌ی ساده

یه روال ساده و رایج اینه:

  1. داده‌ی آموزش رو دو تیکه کن؛ مثلا دو سهم برای آموزش، یه سهم برای اعتبارسنجی.
  2. فقط با تیکه‌ی آموزش یاد بگیر، و هر چند دور یه بار، مثلا هر پنج دور، خطای اعتبارسنجی رو بسنج.
  3. اگه از دفعه‌ی قبل بیشتر شد، بس کن.
  4. وزن‌های دفعه‌ی قبل رو به عنوان مدل آخر بردار.

قدم آخر خیلی مهمه: لحظه‌ای که فهمیدیم بدتر شده، مدل یه کم از بهترینش رد شده. برای همین همیشه بهترین نسخه رو یه جا ذخیره می‌کنیم.

لرزش

توی واقعیت، خط اعتبارسنجی به این صافی نیست؛ بالا پایین می‌ره:

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

خوندن نمودار

نمودار یادگیری فقط برای بس کردن نیست؛ نشون می‌ده مدل چه مشکلی داره:

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

اگه محور افقی رو جای دور، اندازه‌ی داده بذاریم، نمودار نشون می‌ده داده‌ی بیشتر کمکی می‌کنه یا نه، و مشکل مدل بیشتر از سوگیری هست یا واریانس.

چند نکته

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

درس بعد، آخرین درس این ایستگاه، یه میان‌بر بزرگ: به جای آموزش از صفر، از یه مدلی که قبلا یاد گرفته شروع کنیم؛ یادگیری انتقالی.

جمع‌بندی. آنچه از این درس با خودتان می‌برید.

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

خودتون رو بسنجید

۱۵ پرسش، هر بار تازه از میان ۳۰ پرسش این درس. آخرش فقط کارنامه رو می‌بینید: چند تا درست، چند تا نادرست.

خودتون رو بسنجید

۱۵ پرسش

  • هر بار پرسش‌ها و ترتیب گزینه‌ها عوض می‌شه.
  • تا آخر نمی‌گیم کدوم جواب درست بوده؛ می‌تونید برگردید و جوابتون رو عوض کنید.
  • آخرش کارنامه می‌گیرید: چند تا درست، چند تا نادرست.
  • اگه وسطش بستید، دوباره که باز کنید از همون‌جا ادامه می‌دید.

فصل‌های این درس

درس بعد