我是 R 中神经网络的新手。我正在尝试模拟在 java 中使用神经网络实现的以下行为。
类型 - 多层感知器,输入 - 7,输出 - 1,隐藏 - 5 个神经元,传递函数 - sigmoid,学习规则 - 反向传播,最大误差 - 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
关于为什么会发生这种情况的任何澄清?