本tips是针对小白使用matlab官方的神经网络工具箱的情况,大神们自编码请随意。
1. 多输入多输出的的训练中,特征的个数如果成百上千了,建议使用transcg,效果和速度都比默认的trainlm好
2. 成百上千的多输入多输出训练出来的网络很可能不是只有一个确定解,进而会带来不稳定(可以搜一下多NP问题的概念)。这里的不稳定是指,虽然训练集、测试集都拟合的非常好,各种0.99,但是等到输入真的想预测的输入值,输出值得到范围很可能超乎预料和及其不稳定。
3. 如果因为不稳定,想批量地训练,成百上千次训练评估网络不稳定的情况,或者想找出一个最优解,那么批量运行的方法和注意事项是
a、训练一个网络后,导出带有部署的脚本,编写循环
b、在循环中,最好把弹出反馈网络训练情况的的的窗口关掉,这样每次循环甚至能够节约十几秒的时间。
关闭弹窗的代码为增加一行如下内容:
net.trainParam.showWindow = false;