求BP神经网络的MATLAB算法

求BP神经网络的MATLAB算法 参数说明用法
2025-03-09 22:49:13
推荐回答(1个)
回答1:

以常用的三层BP为例:net=newff(P,T,{m},{'tansig'},'trainlm');//用newff建立新的网络net,P为样本输入,T为目标输出,m为隐层的神经元数目,tansig为隐层到输出层的传输函数,如果是多隐层则要给出每层的输出函数,trainlm为训练函数net.trainParam.goal = 0.01; //设置要达到的误差精度
net.trainParam.epochs = 6000; //设置训练次数,6000次
[net,tr] = train(net,p',t); //开始训练网络然后就可以看到结果了,包括训练的进程结果,最后可以用sim函数进行预测
a=sim(net,R);//R为测试数据,a为网络输出 也可以直接用神经网络工具箱进行设计,比较简单直观化,内置样本数据的归一化,精度更好一些