学习向量量化(LVQ)神经网络简述

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
������������ ������������ , ������������ ������������

其中,ρ为输入向量可能落进的接近于两个向量中段平面的窗口宽度,一般取 2/3 左右。则 有 ① 若神经元 i 对应的类别������������ 与输入向量对应的类别������������ ,一致,即������������ 经元 i 和神经元 j 的权值按如下方法进行修正。
������������ ,则用如下方法调整权值:
������������������ _������������������ =������������������ _������������������ + η(x−������������������ _������������������ )
������������ =
− ������������������ )2 ������ =1,2,3,„,������ 1
式中,������������������ 为输入层的神经元 j 与竞争层的神经元 i 之间的权值。 步骤 3:选择与输入向量距离最小的竞争层神经元,若������������ 最小,则记与之连接的线性输 出层神经元的类标签为������������ 。 步骤 4:记输入向量对应的类标签为������������ ,若������������ =
案例背景 LVQ 神经网络概述 学习向量量化(I。earning Vector Quantization,Lvo)神经网络是一种用于训练竞争层的有监督 学习( supervised learning)方法的输入前向神经网络, 其算法是从 Kohonen 竞争算法演化而来 的。LVQ 神经网络在模式识别和优化领域有着广泛的应用。 1.LVQ 神经网络的结构 LVQ 神经网络由 3 层神经元组成,即输入层、竞争层和线性输出层,如图 26 -1 所示。输入 层与竞争层之间采用全连接的方式, 竞争层与线性输出层之间采用部分连接的方式。 竞争层 神经元个数总是大于线性输出层神经元个数, 每个竞争层神经元只与一个线性输出层神经元 相连接且连接权值恒为 1。但是,每个线性输出层神经元可以与多个竞争层神经元相连接。 竞争层神经元与线性输出层神经元的值只能是 1 或 O。当某个输入模式被送至网络时,与输 入模式距离最近的竞争层神经元被激活,神经元的状态为“1” ,而其他竞争层神经元的状态 均为“0” 。因此,与被激活神经元相连接的线性输出层神经元状态也为“1” ,而其他线性输 出层神经元的状态均为“O” 。
否则,按如下方法进行权值更新:
������������������ _������������������ =������������������ _������������������ − η(x−������������������ _������������������ )
(2)LVQ 2 算法 在 LVQ 1 算法中,只有一个神经元可以获胜,即只有一个神经元的权值可以得到更新调整。 为了提高分类的正确率,Kohonen 改进了 LVQ 1,并且被称为新版本 LVQ 2。LVQ 2 算法基于 光滑的移动决策边界逼近 Bayes 极限。LVQ 2 版本接着被修改,产生 Lv0 2.1,并且最终发展 为 LVQ 3。这些后来的 LVQ 版本的共同特点是引入了“次获胜”神经元,获胜神经元的权值 向量和“次获胜”神经元的权值向量都被更新。具体计算步骤如下: 步骤 1:利用 LVQ 1 算法对所有输入模式进行学习。 步骤 2:将输入向量 X=(������1 , ������2 , … , ������������ )������ 送人到输入层,并根据步骤 2 式子计算竞争层与 输入向量的距离。 步骤 3:选择与输入向量距离最小的两个竞争层神经元 i,j。 步骤 4:如果神经元 i 和神经元 J 满足以下两个条件: ① 神经元 i 和神经元 J 对应于不同的类别; ② 神经元 i 和神经元 j 与当前输入向量的距离 d.和 dj 满足式: Min
步骤 5: 若神经元 i 和神经元 J 不满足步骤 4 中的条件, 则只更新距离输入向量最近 的神经元权值,更新公式与 LVQ 1 算法中步骤 4 相同。 3.LVQ 神经网络特点 竞争层神经网络可以自动学习对输入向量模式的分类, 但是竞争层进行的分类只取决于输入 向量之间的距离,当两个输入向量非常接近时,竞争层就可能将它们归为一类。在竞争层的 设计中没有这样的机制,即严格地判断任意的两个输入向量是属于同一类还是属于不同类。 而对于 LVQ 网络用户指定目标分类结果,网络可以通过监督学习完成对输入向量模式的准 确分类。 与其他模式识别和映射方式相比,LVQ 神经网络的优点在于网络结构简单,只通过内部 单元的相互作用就可以完成十分复杂的分类处理, 也很容易将设计域中的各种繁杂分散的设 计条件收敛到结论上来。而且它不需要对输入向量进行归一化、正交化处理,只需要直接计 算输入向量与竞争层之间的距离,从而实现模式识别,因此简单易行。 4 LVQ 网络的神经网络工具箱函数 MATLAB 的神经网络工具箱为 Lvo 神经网络提供了大量的函数工具,本节将详细介 绍这些函数的功能、调用格式和注意事项等问题。 4.1 LVQ 网络创建函数 newlvq()函数用于创建一个学习向量量化 Lvo 网络,其调用格式为: net=newlvq(PR,Sl,PC,IR,LF) 其中,PR 为输入向量的范围,size(PR)一[R 2],R 为输入向量的维数;Sl 为竞争层神经 元的个数;PC 为线性输出层期望类别各自所占的比重;LR 为学习速率,默认值为 0.01; LF 为学习函数,默认为“learnlvl” 。 4.2 LVQ 网络学习函数 1.LVQ 1 学习算法 learnlvl 是 LVQ 1 算法对应的权值学习函数,其调用格式为: [dW,LS] - learnlvl(W,P,Z,N,A,T,E,gW,gA,D,LP,LS) 其中,dW 为权值(或阈值)变化矩阵;LS 为当前学习状态(可省略) ;W 为权值矩阵 或者是阈值矢量;P 为输入矢量或者是全为 1 的矢量;Z 为输入层的权值矢量(可省略) ;N 为网络的输入矢量(可省略) ;A 为网络的输出矢量;T 为目标输出矢量(可省略) ;E 为误 差矢量(可省略) ;gW 为与性能相关的权值梯度矩阵(可省略) ;gA 为与性能相关的输出梯 度矩阵;D 为神经元的距离矩阵;LP 为学习参数,默认值为 0.01;LS 为初始学习状态。 2.LVQ 2 学习算法 learnlv2 是 Lv0 2 算法对应的权值学习函数,其调用格式为: [dW,LS]=learnlv2(W,P,Z,N,A,T,E,gW,gA,D,LP,LS) 其参数意义与 learnlvl 中的参数意义相同,只是权值调整的方法不同,在开始中已详细 描述,此处不再赘述。
1
步骤 1:初始化输入层与竞争层之间的权值������������������ 及学习率η(η>0)。������1 步骤 2:将输入向量 X=(������1 , ������2 , … , ������������ )������ 送入到输入层,并计算竞争层神经元与输入向量 的距离:
������ ������ =1(������������
= ������������ ,则神
������������������������������ =������������������������������ + ������(x − ������������������������������ ) ������������������������������ =������������������������������ − ������(x − ����������������������������� )
图 学习向量量化网络 图 26 -1 中,p 为 R 维的输入模式;S 为竞争层神经元个数;I������1.1 为输入层与竞争层之间的 连接权系数矩阵;n1 为竞争层神经元的输入;a1 为竞争层神经元的输出;L������2.1 为竞争层与 线性输出层之间的连接权系数矩阵; n2 为线性输出层神经元的输入; a2 为线性输出层神经元 的输出。 2.LVQ 神经网络的学习算法 LVQ 神经网络算法是在有教师状态下对竞争层进行训练的一种学习算法,因此 Lvo 算法 可以认为是把自组织特征映射算法改良成有教师学习的算法。 LVQ 神经网络算法可分为 ILVQ 1 算法和 LVQ 2 算法两种。 (1) LVQ 1 算法 向量量化是利用输入向量的固有结构进行数据压缩的技术,学习向量量化是在向量量化 I 基础上能将输入向量分类的监督学习技术。 Kohonen 把自组织特征映射算法改良成有教师 l 学习算法, 首先设计了 LVQ 1 算法。 LVQ 1 的训练过程开始于随机地自 “标定” 训练集合选 I 择一个输入向量以及该向量的正确类别。 I LVQ 1 算法的基本思想是:计算距离输入向量最近的竞争层神经元,从而找到与之相连 I 接的线性输出层神经元,若输入向量的类别与线性输出层神经元所对应的类别一致,则对 应的 I 覆竞争层神经元权值沿着输入向量的方向移动;反之,若两者的类别不一致,则对 应的竞争层神 l 翟经元权值沿着输入向量的反方向移动。基本的 LVQ1 算法的步骤为:
② 神经元 j 对应的类别������������ 与输入向量对应的类别������������ ,一致,即������������ j 的权值按如下方法进行修正。
= ������������ 则神经元
������������������������������ =������������������������������ − ������(x − ������������������������������ ) ������������������������������ =������������������������������ + ������(x − ������������������������������ )
相关文档
最新文档