神经网络

开始学习神经网络模型,重点学习当中的BP模型,这也可以说是应用得最广的一个模型,但是我现在还在初学之中,刚接触它不足两三天,前几天看了一些理论,发现难度虽然不是很大,但是还是有点摸不着头脑.想通过一个具体的例子来帮助理解.MATLAB一个最大的好处就是把很多中间过程都省略了,我们只需要一个结果就可以了.但是如果要真正用好他还是需要知道里面的原理的.

以下的代码和注释是摘自 内蒙古科技与经济中发表的一篇论文基于MATLAB的BP神经网络设计与训练

>> k=2;   %余弦函数的参数
>> p=[-1:0.05:1];  %输入向量p
>> t=cos(k*pi*p);  %期望输出向量T,T与P合称输入样本
>> n=10;    %隐含层神经元个数
>> net=newff(minmax(p),[n 1],{'tansig','purelin'},'trainlm'); %建立网络,采用默认初始化参数对网络进行初始化
>> y1=sim(net,p);  %未经训练时的仿真结果
>> net.trainParam.epochs=50;  %训练函数的参数设置
>> net.trainParam.goal=0.01;    %训练函数的参数设置
>> net=train(net,p,t);        %网络的训练函数
TRAINLM, Epoch 0/50, MSE 11.9127/0.01, Gradient 295.605/1e-010
TRAINLM, Epoch 3/50, MSE 0.00453053/0.01, Gradient 4.46352/1e-010
TRAINLM, Performance goal met.

>> y2=sim(net,p);   %经过训练后的仿真结果
>> figure;    %绘图
>> plot(p,t,'-',p,y1,'--',p,y2,'--'); %绘制被逼近的函数,未经训练的仿真结果,经过训练的仿真结果
>> title('训练后网络的输出结果');
>> xlabel('时间');
>> ylabel('仿真输出');

 

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值