神经网络与数据处理全解析
1. 神经网络训练参数与操作
在神经网络训练中,有几个关键参数需要了解:
- b :若需要对话框窗口显示学习率及其误差,b 设为 1(Java 中的 true)。Y 轴误差越小,学习成功的几率越高,且要确保误差值不随迭代次数变化。若 b 为 Java 的 false(Jython 中为“0”),则无法监控学习率和误差。
- max :学习的最大迭代次数。只有当每次迭代的误差大于 errEpoch 时,学习才会持续到达到 max 值。若达到最大迭代次数,意味着训练未成功。
- learnRate :权重矩阵基于学习进行调整的速率,通常在 0.1 到 0.2 之间。
- mom :前一次迭代的训练增量对当前迭代的影响,通常设为 0.1 - 0.4。
- err :训练的“迭代”误差,当达到该误差时学习停止。若在学习过程中未达到指定误差,程序在达到“max”次事件后停止学习。
训练完成后,可以使用 net.save()
方法保存网络,使用 net.read()
方法恢复网络。示例代码如下:
# 保存网络
net.save('test.eg', 'trainedNN', 'My trained NN')
# 恢复网络
net.read('test.eg', 'trainedNN')