发信人: freebaby (感恩的心), 信区: AI
标 题: Matlab的神经网络工具箱实用指南(3)
发信站: 飘渺水云间 (Fri Mar 14 09:03:46 2003), 转信
静态网络中的批处理方式
批处理方式可以用adapt或train函数来实现,虽然由于由于采用了更高效的学习算
法,train通常是最好的选择。增加方式只能用adapt来实现,train函数只能用于批处理
方式。
让我们用前面用过的静态网络的例子开始,学习速率设置为0.1。
net = newlin([-1 1;-1 1],1,0,0.1);
net.IW{1,1} = [0 0];
net.b{1} = 0;
用adapt函数实现静态网络的批处理方式,输入向量必须用同步向量矩阵的方式放置
:
P = [1 2 2 3; 2 1 3 1];
T = [4 5 7 7];
当我们调用adapt时将触发adaptwb函数,这是缺省的线性网络调整函数。learnwh是
缺省的权重和偏置学习函数。因此,Widrow-Hoff学习法将会被使用:
[net,a,e,pf] = adapt(net,P,T);
a = 0 0 0 0
e = 4 5 7 7
注意网络的输出全部为0,因为在所有要训练的数据提交前权重没有被更新,如果我
们显示权重,我们就会发现:
>>net.IW{1,1}
ans = 4.9000 4.1000
>>net.b{1}
ans =
2.3000
经过了用adapt函数的批处理方式调整,这就和原来不一样了。
现在用train函数来实现批处理方式。由于Widrow-Hoff规则能够在增加方式和批处
理方式中应用,它可以通过adapt和train触发。我们有好几种算法只能用于批处理方式
(特别是Levenberg-Marquardt算法),所以这些算法只能用train触发。
网络用相同的方法建立:
net = newlin([-1 1;-1 1],1,0,0.1);
net.IW{1,1} = [0 0];
net.b{1} = 0;
在这种情况下输入向量即能用同步向量矩阵表示也能用异步向量细胞数组表示。用
train函数,任何异步向量细胞数组都会转换成同步向量矩阵。这是因为网络是静态的,
并且因为train总是在批处理方式中使用。因为MATLAB实现同步模式效率更高,所以只要
可能总是采用同步模式处理。
P = [1 2 2 3; 2 1 3 1];
T = [4 5 7 7];
现在我们开始训练网络。由于我们只用了一次adapt,我们这里训练它一次。缺省的
线性网络训练函数是trainwb。learnwh是缺省的权重和偏置学习函数。因此,我们应该
和前面缺省调整函数是adaptwb的例子得到同样的结果。
net.inputWeights{1,1}.learnParam.lr = 0.1;
net.biases{1}.learnParam.lr = 0.1;
net.trainParam.epoc
Matlab的神经网络工具箱实用指南(3) by freebaby
来源:互联网 发布日期:2011-10-03 20:33:33 浏览:13805次
导读:飘渺水云间,bbs,浙江大学,BBS,论坛...
上一篇:《神经网络原理及其应用》
相关内容
AiLab云推荐
最新资讯
本月热点
热门排行
-
科学家成功研发可弯曲的非硅柔性芯片,成本不到 1 美元
阅读量:5959
-
FuriosaAI推出高能效AI芯片:性能与英伟达L40S接近,功耗低40%!
阅读量:5488
-
瑞士团队打造超小脑机接口,意识转文本准确率高达 91%
阅读量:4817
-
马斯克的新愿景对准盲人,Neuralink下一代脑机接口已获批
阅读量:4542
-
清华洪波教授:脑机接口实现语音解码输出应该在三年左右
阅读量:4330
-
为了获诺奖,AI不仅要懂物理学,还要懂哲学?
阅读量:3749