matlab神经网络30例代码
R=1%输入元素matlab神经网络搭建的数目为1 S2=1%输出曾的神经元个数为1 S1=10%中间层有10个神经元 net=newelm2matlab神经网络搭建,2matlab神经网络搭建,S1matlab神经网络搭建,S2,#39tansig#39,#39purelin#39=100%设定次数 net=trainnet,Pseq,Tseqy=simnet,Pseq预测 P=randn12,2T=randn12,2threshold=0 1。
第1步随机生成200个采样点用于训练 x=unifrnd5,5,1,200y=unifrnd5,5,1,200z=sinx+y第2步建立神经网络模型其中参数一是输入数据的范围,参数二是各层神经元数量,参数三是各层传递函数类型N=newff5 55 5,5,5,1,#39tansig#39,#39tansig#39,#39purelin#39第。
设置一些初始参数,Epochs是迭代上限次数,NodeNum是第一个隐藏层的神经元个数,%TypeNum是几层TF1和TF2分别定义matlab神经网络搭建了几个传递函数net=newffminmaxP,NodeNum TypeNum,TF1 TF2,#39trainlm#39建立一个神经网络,训练输入和输出数据都有了,设置隐藏层的个数=Epochsnet。
1 人工神经元 Artificial Neuron 模型 人工神经元是神经网络的基本元素,其原理可以用下图表示图中x1~xn是从其他神经元传来的输入信号,wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值 threshold ,或称为偏置 bias 则神经元i的输出与输入的关系表示为图中 yi表示神经元。
y1=simnet,xplotx,y1,#39#39采用LM优化算法 nettrainFcn=#39trainlm#39设置训练算法 =500=10^6调用相应算法训练BP网络 net,tr,yy=trainnet,x,y对BP网络进行仿真 y1=simnet,x计算仿真误差 E=yy1MSE=mseEhold on 绘制。
使用神经网络工具箱可以非常简便地实现网络建立和训练,实例代码如下BP算法function Out=bpnetp,t,p_test%p,t为样本需要提前组织好global S1net=newffminmaxp,S1,8,#39tansig#39,#39purelin#39,#39trainlm#39 %trainlm训练函数最有效%net=newffP,T,31,#39tansig#39,#39purelin#39,#39trainlm#39。
newff建立网络,train训练网络,sim仿真进行预测 具体help以上三个函数 nb,minb,maxb,na,mina,maxa=premnmxtraindata,trainlabelsnc=tramnmxtest_patterns,minb,maxbnet=newffminmaxtraindata,4,6,1,#39tansig#39,tansig#39,#39purelin#39net=trainnet,nb,nand= simnet,nc。
仅含一个隐层的神经网络就可以任意逼近一个非线性函数,所以可以选择只有一个隐层的但隐层节点数并没有规则,你可以采用试凑法这几个隐层节点的公式你可以参考这几个公式m=n+l+a开根号m=log2的n次方m=nl开根号其中,m为隐层节点数n为输入层节点数,l为输出层。
单击View,即可显示结构然后按train,在 inputs和targets里面填入输入值X和训练的Y,在training parameters中设置你要的参数,比如误差最后按train就可以开始训练完了一定记住按网络模型输出Export,将模型转入command windows下面调用如y1=simnetwork1,x0plotx,y,#39o#39,x0,y0,y1,#39#39。
当你用newff的时候,里面有一个参数可以控制层数,比如说P = 0 1 2 3 4 5 6 7 8 9 10T = 0 1 2 3 4 3 2 1 2 3 4net = newffP,T,5 %这样表示有1个隐藏层,里面那个5表示神经元的个数 net = newffP,T,5,10 %这样表示有2个隐藏层 net = newffP。
net=newlindP,T%用输入和期望训练网络 Y=simnet,P%仿真,可以看到仿真结果Y和期望输出T的接近程度 P = 1 2 2 3 2 1 3 1 T = 1 2 3 4 Y = 08889 21667 30556 38889 楼主可以从matlab神经网络与应用第二版董长虹 开始入门。
S2=1%输出曾的神经元个数为1 S1=10%中间层有10个神经元 net=newelm2,2,S1,S2,#39tansig#39,#39purelin#39=100%设定次数 net=trainnet,Pseq,Tseqy=simnet,Pseq预测 P=randn12,2T=randn12,2threshold=0 10 10 10 10 10。
建立BP神经网络, 12个隐层神经元,4个输出神经元 tranferFcn属性 #39logsig#39 隐层采用Sigmoid传输函数 tranferFcn属性 #39logsig#39 输出层采用Sigmoid传输函数 trainFcn属性 #39traingdx#39 自适应调整学习速率附加动量因子梯度下降反向传播算法训练函数 learn属性 #39learngdm#39 附加动量因子的梯度下降学习函数 net。
对y=x1^2+x2^2非线性系统进行建模,用1500组数据对网络进行构建网络,500组数据测试网络由于BP神经网络初始神经元之间的权值和阈值一般随机选择,因此容易陷入局部最小值本方法使用遗传算法优化初始神经元之间的权值和阈值,并对比使用遗传算法前后的效果步骤未经遗传算法优化的BP神经网络建模 1。
原理就是建立网络数据归一化训练预测数据反归一化附件是电力负荷预测的例子,可以参考BPBack Propagation神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一BP网络能学习和存贮大量的输入输出模式。