سلام .
اون خطای nan
که معمولا بخاطر بالا بودن نرخ یادگیری ، عدم استفاده از بچ نورمالیزیشن و مقدار دهی اولیه بد(زیاد) بوجود میاد.
اولین کار شما باید کاهش نرخ یادگیری باشه و اگر معماری عمیق یا نسبتا عمیقی دارید سعی کنید از بچ نورمالیزیشن استفاده کنید. برای مقدار دهی اولیه هم اگر عمیق هست یا نسبتا عمیق میتونید از مقداردهی اولیه Xavier
استفاده کنید. اگر شبکه کم عمق هست از Gaussian
با مقدار 0.01
.
برای کاهش batch-size هم سعی کنید batch-size مربوط به تست رو کاهش بدید بعد اگر باز مشکل بود برید سراغ -batch-size مربوط به ترینینگ . چون برای بدست اوردن گرادیانت پایدار و جلوگیری از oscillation
های احتمالی و زیاد بچ باید یه مقدار متناسب داشته باشه . معمولا بچ های بین 32 تا 512 کارایی خوبی میدن .