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