r语言中 怎样输出newff函数的BP神经网络训练结果

Python012

r语言中 怎样输出newff函数的BP神经网络训练结果,第1张

你在建立网络的时候不是用了net=newff(……)吗?这个net就是输出的结果。

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函数。

net=newff(minmax(p),[3,5,4],{'tansig','purelin','logsig'},'trainlm')

net.trainParam.goal= 0.00001

net.trainParam.epochs= 10000

net= train(net,p,t)

Y=sim(net,p)

隐含层数通常取输入层数的1.2~1.5倍,但隐含层数增加相对训练效果会好些。

输出结果是根据你的T决定的,你这个如果训练效果好的话输出值的和就为1。

3层,这是newff的旧语法,现在已经改了。

旧语法要求写出输出层的节点数。

net=newff(input,output,[3],{'tansig','purelin'},'traingd')

新语法不要求写出输出层的节点数。