24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3220  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

ben_moody

木虫 (正式写手)

[求助] 利用matlab 编写BP神经网络的代码

那位大侠  会利用matlab 进行编写BP神经网络的代码,并利用遗传算法进行优化,标明一步的用处
回复此楼

» 收录本帖的淘帖专辑推荐

matlab典型案例

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

和光同尘
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

salor

木虫 (初入文坛)

【答案】应助回帖

inputs = P';
targets = T';hiddenLayerSize = 10;
net = fitnet(hiddenLayerSize);
net.inputs{1}.processFcns = {'removeconstantrows','mapminmax'};
net.outputs{2}.processFcns = {'removeconstantrows','mapminmax'};
net.divideFcn = 'dividerand';  % Divide data randomly
net.divideMode = 'sample';  % Divide up every sample
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;net.trainFcn = 'trainlm';  % Levenberg-Marquardt
net.performFcn = 'mse';  % Mean squared error
net.plotFcns = {'plotperform','plottrainstate','ploterrhist', ...  'plotregression', 'plotfit'};
[net,tr] = train(net,inputs,targets);
outputs = net(inputs);errors = gsubtract(targets,outputs);
performance = perform(net,targets,outputs)
trainTargets = targets .* tr.trainMask{1};
valTargets = targets  .* tr.valMask{1};
testTargets = targets  .* tr.testMask{1};
trainPerformance = perform(net,trainTargets,outputs)
valPerformance = perform(net,valTargets,outputs)
testPerformance = perform(net,testTargets,outputs)
view(net)
T_p=sim(net,P')
6楼2013-01-14 18:10:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主

【答案】应助回帖

感谢参与,应助指数 +1
直接使用MATLAB的神经网络工具箱和遗传算法工具箱
2楼2012-09-10 16:41:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

感谢参与,应助指数 +1
上次帮人写的,你看看吧。
CODE:
function ddd
p=[ 40 40 40 60 60 60 80 80 80;
    30 60 90 30 60 90 30 60 90;
    20 30 40 30 40 20 40 20 30;
    5  7  9  9  5  7  7  9  5];
t=[1.72, 3.15, 3.10, 3.32, 3.69, 3.99, 4.62, 5.083, 4.79];
net=newff(minmax(p),[20,1],{'tansig','purelin'},'traingdm');
%  设置训练参数
net.trainParam.show = 50;
net.trainParam.lr = 0.05;
net.trainParam.mc = 0.9;
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
net.trainfcn='trainbfg';
[net,tr]=train(net,p,t);
% p_test=[35 55 70 80;
%         40 40 70 70;
%         30 20 40 30;
%         6  6  8  8];
% A=sim(net,p_test);
lb=[1,1,1,1];
ub=[100,100,50,20];
options = gaoptimset;
x0=ga(@(x)fun1(x,net),4,[],[],[],[],lb,ub,@nonlcon,1:4,options)
tm=sim(net,x0')
end


function t=fun1(x,net)
x=x';
t=-sim(net,x);
end

function [c,ceq]=nonlcon(x)
c=[];
ceq=[];
end

showmethemoney
3楼2012-09-10 16:45:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ben_moody

木虫 (正式写手)

引用回帖:
2楼: Originally posted by nono2009 at 2012-09-10 16:41:56
直接使用MATLAB的神经网络工具箱和遗传算法工具箱

谢谢你的回复。但是matlab 神经网络工具箱里只有拟合工具箱、分类工具箱和图形识别工具箱。
和光同尘
4楼2012-09-11 09:48:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见