私はneurolab
をpythonで使ってニューラルネットワークを作成しています。ネットワークnewff
を作成し、デフォルトのtrain_bfgs
トレーニング機能を使用しています。私の問題は何度もあり、エポックがなくなるか、エラーターゲットに達する前にトレーニングが終了します。私は周りを見回し、neurolabs githubページの投稿を見つけました。なぜなら、なぜこのことが起こったのかを説明していたからです。私の問題は、プログラムを数回再実行するだけでキャッチオンになり、トレーニングが開始され、エラーもまた落ちる(おそらくいくつかのランダムなスタートウェイトが他のものよりずっと優れている)ということです。私がしたいことは、エラーが高すぎて訓練されたエポックが総計にも近くない場合、ネットワークを再訓練するようなものです(プログラムを再実行するのと同じように)それは実行し、ここではネットワークのデフォルトの重み)Neurolabはネットワークを再訓練します
は、私が書いたものですが、明らかにそれは
trainingComplete = False
while not trainingComplete:
error = net.train(trainingData, TS, epochs=50, show=10, goal=0.001)
if len(error) < 0.8*epochs:
if len(error) > 0 and min(error) < 0.01:
trainingComplete = True
else:
net.reset()
continue
else:
trainingComplete = True
仕事doesntの何が起こっているか、それは最初の条件を通過したとき、すなわち、数が少なすぎるのトレーニングエポックであります再起動する前にnet.reset()
を実行した後に、実行中のトレーニングがなく、これが無限ループになります。 私が逃しているものは何ですか?
おかげので