newff函数只是初始化一个神经网络,之后还得用train函数训练,训练好的net就是你要的网络。
newff函数的格式为:
net=newff(PR,[S1 S2 ...SN],{TF1 TF2...TFN},BTF,BLF,PF),函数newff建立一个可训练的前馈网络。输入参数说明:
PR:Rx2的矩阵以定义R个输入向量的最小值和最大值;
Si:第i层神经元个数;
TFi:第i层的传递函数,默认函数为tansig函数;
BTF:训练函数,默认函数为trainlm函数;
BLF:权值/阀值学习函数,默认函数为learngdm函数;
PF:性能函数,默认函数为mse函数。
这个不一定。之所以要分训练集和测试集是因为怕过度拟合(overfitting),所以需要一个测试集来检验确定 你建立的模型并不只是适合于这一组数据。我一般都是70%训练集30%测试集。当然,得看数据量有多大,以及复杂程度。只要训练集>=测试集,就不会错,但好不好得具体分析。如果数据量在1000以下的话,最好是k折交叉验证(基本上只要不是特别复杂的数据,都推荐k折交叉验证)。如果要是数据量大于10万的话,最好考虑80:20甚至90:10。