R のニューラル ネットワークは初めてです。Java でニューロフを使用して実装された次の動作をエミュレートしようとしています。
タイプ - 多層パーセプトロン、入力 - 7、出力 - 1、非表示 - 5 ニューロン、伝達関数 - シグモイド、学習規則 - 逆伝播、最大誤差 - 0.01、学習率 - 0.2
以下は私が実装したRコードです。
net.result <- neuralnet(Output ~ Input1 + Input2 + Input3 + Input4 + Input5 + Input6 + Input7,
traindata, algorithm = "backprop", hidden = 5,
threshold = 0.01, learningrate = 0.2, act.fct = "logistic",
linear.output = FALSE, rep =50, stepmax = 100)
データは比較的小さく (120 行)、以下は使用されたトレーニング データのサンプルです。入力は正規化され、0 ~ 1 の間でスケーリングされることに注意してください。
Input1 Input2 Input3 Input4 Input5 Input6 Input7 Output
1 0 0 0 0 0 0 0 0
2 0 0 0 0 0 1 0.0192307692 0
3 0 0 0 0 1 0 0.125 0
4 0 0 0 0 1 1 0.0673076923 0
5 0 0 0 1 0 0 0.1971153846 0
6 0 0 0 1 0 1 0.2644230769 0.3333333333
以下は、上記のコマンドを実行したときに表示される警告です。
Warning message:
algorithm did not converge in 50 of 50 repetition(s) within the stepmax
なぜこれが起こっているのかについての説明はありますか?