竞争学习是自组织网络中最常采用的一种学习策略。 

一、基本概念
先说明几个重要的概念。

1. 模式、分类、聚类与相似性

在神经网络应用中,输入样本、输入模式和输入模式样本这样的术语基本上是等同的概念。在涉及识别、分类问题时,常用到输入模式的概念。模式是对某些感兴趣的客体的定量描述或结构描述,模式类是具有某些共同特征的模式的集合。分类是在类别知识等导师信号的指导下,将待识别的输入模式分配到各自的模式类中去。无导师指导的分类称为聚类,聚类的目的是将相似的模式样本划归一类,而将不相似的分离开,其结果实现了模式样本的类内相似性和类间分类性。由于无导师学习的训练样本中不含有期望输出,因此对于某一输入模式样本应归属于哪一类并没有任何先验知识。对于一组输入模式,只能根据它们之间的相似程度分为若干类,因此相似性是输入模式聚类依据。

2. 相似性测量

比较不同模式的相似性通常可以转化为两个向量之间的距离进行衡量。所以相似性测量通常转化为向量的距离度量。而向量之间的度量标准决定了在某一应用中的相似度。传统模式识别最常用到的两种聚类判别依据是欧氏距离与角度测量。欧氏距离通常是L2范数;而角度测量采用的是余弦定理。两者的距离度量图示如下:

竞争学习的基本概念和原理_二维

3. 侧抑制与竞争

实验表明,当一个神经元细胞兴奋后,会对周围神经元的神经细胞产生抑制作用,使得神经细胞之间出现竞争,开始可能多个细胞兴奋,但是一个兴奋程度最强的神经细胞对周围神经细胞的抑制作用也越强,其结果使得周围神经元细胞兴奋程度减弱,从而该神经元细胞在这次竞争中胜出,其他神经元失败。下图所示的网络在竞争层各神经元之间的虚连接线表明了这种抑制作用。它们是模拟生物神经网络层内神经元相互抑制现象的权值。这类抑制性权值通常满足一定的分布关系,如距离远的抑制作用弱,距离近的抑制作用强。这种权值在学习算法中通常固定。采用的竞争学习方法就是上一篇博文《人工神经网络基础概念、原理知识(补)》中所总结的神经网络三要素之学习中“胜者为王”的方法。

竞争学习的基本概念和原理_聚类_02

4. 向量归一化

由于不同的模式具有的单位不统一,因此在进行数据处理前,会将模式向量进行规范化(normalization),即单位长度,所以在进行相似性度量时方便计算。比如二维和三维单位向量可以在单位圆和单位球上直观表示。这里单独作为一小节进行描述是为了突出这一点的重要性,因为在机器学习中大部分时候输入模式都是向量,而且通常都会采用normalization进行预处理。

二、竞争学习原理

1. 竞争学习规则

采用的是“胜者为王”的学习规则。分为三个步骤:

(1) 向量归一化

首先将自组织网络中的当前输入模式向量X和竞争层中各神经元对应的内星权向量Wj全部进行归一化处理。

(2)寻找获胜神经元

当网络得到一个输入模式向量X时,竞争层的所有神经元对应的内星权向量均与X进行相似性比较,将与X最相似的内星权向量判为竞争获胜神经元,其权向量记为Wj。测量相似性的方法就按照上面所讲解的方法。

(3) 网络输出与权值调整

胜者为王竞争学习算法规定,获胜神经元输出为1,其余输出为0。只有获胜神经元才有权调整其权向量,调整后权向量为如下图所示:


竞争学习的基本概念和原理_二维_03

α∈(0,1]为学习率,一般随着学习的进展而减小。从式中可以看出当竞争失败后,对应的神经元权重就无法进行调节,所谓调节也就是兴奋,没有机会兴奋,所以从原理上模拟了侧抑制与竞争。

注意:归一化后的权向量在调整之后得到的新向量不再是单位向量,因此还需进行单位化。

步骤(3)完成之后回到步骤(1)继续训练,直到学习速率α衰减到0或规定的值。

2. 竞争学习原理

以输入模式为2维,即输入层有两个神经元,而竞争层有四个神经元为例。则输入向量X为二维,而四个竞争层神经元的内星权值也是二维向量。归一化后可以分布在单位圆上的向量进行标示。下面对竞争学习原理进行说明:

用圆圈标示输入模式,用星号标示内星权向量。输入模式点的分布如下图所示:


竞争学习的基本概念和原理_二维_04

从它的分布上可以看出大体上聚集为4簇,因而可分为4类。然而自组织网络的训练样本中只提供了输入模式,而没有分类的指导信息,即无监督学习。那么网络如何通过竞争机制自动发现空间的类别划分呢?

自组织网络在开始训练前先对竞争层的权向量进行随机初始化,因此初始状态时,单位圆上的星号是随机分布的。自组织权向量调整如下图所示:


竞争学习的基本概念和原理_输入模式_05

距离当前输入模式最近的那个星号获胜,从获胜神经元的权值调整式子可以看出,调整的结果使得该星号与当前输入模式进一步接近。调整后,获胜的星号位置进一步移向输入模式及其所在的簇。显然,当下次出现与该输入模式相近的同簇内的输入模式时,上次获胜的星号更容易获胜。以此方式经过充分训练后,单位圆上的4个星点会逐渐移入各个输入模式的簇中心,从而使竞争层每个神经元的权向量成为一类输入模式的聚类中心。当向网络输入一个模式时,竞争层中哪个神经元获胜使得输出为1,当前输入模式就归属哪类。

************************

2015-8-14

艺少