matlab辅助神经网络设计(13)
i=1,2,?,R,j=1,2,?,M。
竞争层 M=m2个神经元
图7.3 SOFM网络模型
② 在样本集中随机选采样本p(t)输入。
③ 在输出节点集中寻找最佳匹配的节点C(即其权向量与n值最近的),如用欧氏(Euclid)距离,则C应为
‖p(t)―wc(t)‖=min{‖p(t)―wj(t)‖} (wj为P维向量)
j④ 权值学习:
??wj(t)??(t)h(t)[p(t)?wj(t)]j?Ncwj(i+1)=wj(i?1)??
w(t)j?N?0?j ⑤ t←t+1,转向②。
41
μ(t)为学习步长,h(t)为邻域大小,它们都随迭代次数而变化。
三、自组织特征映射网络的训练
SOFM网络在训练开始时其输入为竞争的胜利者代表某类模式。然后定义获胜节点的邻域节点,即以获胜节点为中心的某一半径内的所有节点,并对与其相似的权矩阵进行调整。随着训练的继续进行,获胜节点C的半径将逐渐变小,直到最后只包含获胜节点C本身。也就是说,在训练的初始阶段,不但对获胜的节点作权值的调整,而且对其周围较大范围内的几何邻接节点,也和相应的调整,而随着训练过程的进行,与获胜输出节点相连的权矩阵就越来越接近,其所代表的模式类,此时,需要对获胜节点进行较细致的权矩阵调整,同时,只对其几何邻接较近的节点进行相应的调整。这样,在训练结束后,几何上相近的输出节点的连接的权矢量既有联系,又相互有区别;保证了对于某一类输入模式获胜节点,能作出最大的响应。而相邻节点作出较小的响应。几何上相邻的节点代表特征上相似的模式类别。 训练设计步骤(适用于输入向量P具有某种概率分布的数组): 1.初始化:由输入向量确定网络结构,设置网络竞争层神经元节点;将输入模式P作归一化处理;归一随机化处理初始权值;设置最大训练次数max-cyde并确定基本学习速率lr以及最大邻层数。 2.学习速率是线性下降的: n=cycle/max_cycle; LR=(1-n)·lr;
这使得学习速率随着循环次数的增加,从lr*(maxcycle-1)/max=cycle逐渐降至0。
3.邻层数也是递减
h=max([ceil(max_neighba(1-x*4))1];
4.计算输入向量加权和,并通过竞争求出获胜节点。 A=compet(w*p);
5.根据获胜节点求出相邻层(以二维为例),并进行权值修正。 i=find(A==1); in=neighbad (i,[x,y],n);
42
dw=learnk(w,p,in,LR); w=w+dw;
6.检查是否达到最大训练次数max_cycle,如果达到了则输出或显示结果,否则转(2)继续训练。
四、重要的自组织网络函数
函数initc( )、simaC( )和trainc( )可分别用于竞争层的初始化,仿真和训练。函数initsm( )、simusm( )和trainsm( )分别用于自组织映射网络的初始化、仿真和训练。函数nbgrid( )、nbdist( )、nbman( )可生成一系列矩阵,以便用于定义自组织映射中神经元之间的邻域关系。 1.初始化
首先我们介绍一下竞争层初始化函数initc( )。利用函数initc( )可得到S个神经元的竞争层的权值和阀值。另外有一点特别重要,输入向量P的每一行中包含了网络输入的最大值和最小值,这样才能合适地初始化权值和阀值。输入变量为输入向量P和神经元数S,调用格式为
w=initc(p>s).
另外自组织网络初始化函数initc( )也可得到S个神经元的自组织网络的权值。与函数initc( )一样,输入向量P的每一行中包含了网络期望输入的最大值和最小值,这样才能合适地初始化权值和阀值。并且其调用格式也与函数initc( )一样为
w=initsm(p,s);
2.仿真
竞争层的仿真函数simue( )在任何时候只有最大网络输入的神经元的输出为1,其它神经元的输出为0。调用格式为:
a=simuc (p,w);
而自组织网络仿真函数simusm( )可得到自组织映射网络的输出,只有最大网络输入的神经元的输出为1,相邻神经元的输出为0.5,其余神经元的输出为0。调用格式为:
a=simusm(p,w,m,n);
式中m为自组织网络的邻阵,变量n为邻域的大小,其缺省值为1。
43
3.训练
对于竞争层的训练采用trainc( )函数,通过调整初始权值矩阵w和阀值向量b,得到了相应于随机顺序选取的输出向量P的新的权值矩阵,以便对一组输入向量进行分类。
w=trainc(w,p,tp);
输入变量tp为可选的训练参数:
·tp(1) 指定更新显示间的训练次数,其缺省值为25; ·tp(2) 指定训练的最大次数,其缺省值为100; ·tp(3) 指定学习速率,其缺省值为0.01; ·tp(4) 指定跟踪性能(0~1),其缺省值为0.999; ·tp(5) 指定加权性能(0~1)其缺省值为0.1。
tp(4)越接近于1,计算神经元输出均值就越慢;tp(5)越小,高均值或低均值对神经元阀值的影响也就越小,从而获得稳定的结果。
自组织映射网络的训练函数trainsm( )是利用Kohonen规则训练自组织映射网络。自组织映射网络由分布在一维或多维空间中的神经元构成的层组成,在任何时候,只有最大网络输入的神经元的输出为1,相邻的神经元的输出为0.5,其余神经元的输出为0。
w=trainsm(w,b,p,tp);
可选的训练参数tp为:
·tp(1) 指定两次更新显示间的次数,其缺省值为25; ·tp(2) 指定训练的最大次数,其缺省值为100; ·tp(3) 指定初始学习速率,其缺省值为1。
五、自组织网络应用举例
应用自组织网络对输入样本进行分类。
首先利用函数nngenc生成聚类数据点,具体生成过程如下: x=[0 1;0 1] 聚类数据点的范围; clusters=8 聚类数;
points=10 每个聚类的数据点个数; std_dev=0.05 聚类偏差;
44
p=nngenc(x, clusters, points, std_dev) 图形显示聚类数据点: plot(p(1,:),p(2,:),'+')
1.210.80.60.40.20-0.2-0.100.10.20.30.40.50.60.70.80.9 图7.4 聚类数据点 再运用函数initc初始化自组织神经网络,得到相应的网络节点和权值的初始值,再运用函数trainc对所构件的网络进行训练:
w=initc(p,8) df=25 me=1000 lr=0.1 tp=[df me lr] w=trainc(w,p,tp)
Competitive Learning: 1000 cycles1.210.80.60.40.20-0.2-0.100.10.20.30.40.50.60.70.80.9 图7.5 网络训练结果 45
对训练成熟的网络,可以利用函数simuc进行仿真: p1=[0.1; 0.4] a1=simuc(p1, w) 输出仿真结果: a1 =
(1, 1) 1 p2=[0.6; 0.2] a2=simuc(p2, w) 输出仿真结果:a2 =
(7, 1)
1 46
…… 此处隐藏:1386字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




