私はテンソルフローを使用して簡単なニューラルネットワークを記述し、少しの研究を行っています。トレーニング中に「nan」の重みに多くの問題がありました。オプティマイザの変更、損失、データサイズの変更など、さまざまな解決策を試しましたが、役に立ちませんでした。最後に、学習率の変化が私の体重に信じられないほどの違いをもたらすことに気づきました。
.001の学習率(かなり保守的だと思いました)を使用すると、最小化関数は実際に指数関数的に損失を発生させます。1エポック後、損失は数千から1兆、そして無限( 'nan')にジャンプする可能性があります。学習率を.0001に下げたところ、すべてうまくいきました。
1)なぜ1桁がそのような影響を与えるのですか?
2)最小化機能が文字通りその機能の反対を実行し、損失を最大化するのはなぜですか?学習率に関係なく、それは起こらないはずです。