سلام
این اسکریپت خطای training رو بشما نشون میده . خط قرمز رنگ در پایین همون مقادیر loss شما هست و اون خط آبی رنگ دقت شما رو تو تست نشون میده (اگه train/val دارید میشه دقت validation شما قائدتا)
یه دلیل اولیه که لاس تغییری نمیکنه بالا بودن نرخ یادگیری هست اون رو کاهش بدید بعد ببنید آیا خطای شما کاهش پیدا میکنه یا خیر
از طرفی کلا زمانی که خطای آموزش بالا باشه این یکی از دلایل Underfitting هست. یعنی پارامتر کافی به اندازه مناسب نیست تا شبکه بتونه به تقریب مناسبی از داده ورودی برسه . هرچقدر تعداد پارامترها بیشتر باشه خطای آموزش بیشتر کاهش پیدا میکنه و از اون طرف شبکه میره به سمت overfitting.
حالا باز اگه شما یه validation set یی هم داشته باشید و نرخ خطا و دقت اون رو هم بگیرید و مقایسه کنید اگر خطای هر دو بالا باشه یعنی شبکه underfit داره میکنه. از اون طرف اگه خطای آموزش کم اما خطای validation set خیلی بیشتر از خطای اموزش باشه یعنی اورفیت داره میکنه شبکه.
حالا اگه underfit باشه باید پارامتر های شبکه رو بیشتر کنید و اگر overfit باشه باید کمتر کنید .(یا اگر از dropout استفاده میکنید مدیریتش کنید (استفاده زیاد از دارپ اوت باعث تاثیر خیلی بد در کارایی شبکه میشه))
تو زمینه regularization ها هم دقت کنید که اگه مثلا weight decay شما زیاد باشه اینم یکی دیگه از دلایل underfiting هست و باعث میشه مثلا دقت شما ثابت باقی میمونه و لاس هم کاهش پیدا نمیکنه.
تو این زمینه هم یه کار هم که اندرو ان جی پیشنهاد میکنه تو آموزشش اینه که weight decay رو صفر و بعد کم کم زیاد کنید و رفتار شبکه رو ببینید. ( من البته برعکس کارمیکنم!)
و نکته دیگه هم اینکه داده بیشتر برای حل Overfitting خوبه اما تو Underfitting داده بیشتر هیچ کمکی نمیکنه.
در مورد شکل درست خطا درسته با کاهش خطای اموزش خطای تست هم باید پایین بیاد. تو تصویر این قضیه رو میتونید با افزایش دقت و کاهش لاس اموزش ببینید.