chainerのRNNで lossがnanになるときの対処

chainer

 

nanやinfが発生している原因の一つとしてsoftmaxcrossentropyのxとして絶対値が大きな値が入っている可能性あり

中間層を正規化すると良いらしい

https://groups.google.com/forum/#!topic/chainer/Ks0KpYjf6pU

 効かなかった

 

 

学習率を低くすると直ることもあるらしい

自分は効かなかった

http://ai-kenkyujo.com/2017/07/07/chainer/

http://ai-kenkyujo.com/2017/07/07/chainer/

 

 

 

nanが解決した!!

データに0があるとlog10(0)で下記エラーが出る!

そうするとnanになる

これらデータを全て消すと解決した!!

919d3c0e_nohash_0.wav loaded
43fc47a7_nohash_2.wav loaded
f47d644e_nohash_0.wav loaded
39543cfd_nohash_0.wav loaded
98447c43_nohash_1.wav loaded
train_snack.py:77: RuntimeWarning: divide by zero encountered in log10
P[m, :] = np.log10(np.absolute(X[m, :N/2])) # 対数パワースペクトルに変換(256点)
9db2bfe9_nohash_0.wav loaded
f0edc767_nohash_0.wav loaded
02746d24_nohash_0.wav loaded
531a5b8a_nohash_1.wav loaded
cd7f8c1b_nohash_0.wav loaded
d98f6043_nohash_0.wav loaded
32561e9e_nohash_0.wav loaded