Artificial Neural Network 简明教程
Adaptive Resonance Theory
此网络由 Stephen Grossberg 和 Gail Carpenter 于 1987 年开发。它基于竞争,并使用无监督学习模型。自适应共振理论 (ART) 网络,顾名思义,始终对新事物保持开放(适应)而不会丢失旧模式(共振)。基本上,ART 网络是一个向量分类器,它接受一个输入向量并根据它与哪个存储模式最相似将其分类到某个类别中。
Operating Principal
ART 分类的主要操作可分为以下阶段 −
-
Recognition phase − 将输入向量与输出层中每个节点处的分类进行比较。如果神经元与应用的分类最匹配,则其输出变为“1”,否则变为“0”。
-
Comparison phase − 在此阶段,将输入向量与比较层向量进行比较。重置的条件是相似度低于警惕性参数。
-
Search phase − 在此阶段,网络将搜索重置以及在上述阶段中完成的匹配。因此,如果没有重置且匹配相当好,则分类结束。否则,这个过程将被重复,并且必须发送其他存储的模式以找到正确的匹配。
ART1
它是一种 ART,被设计为对二进制向量进行聚类。我们可以通过其架构来理解这一点。
Architecture of ART1
它由以下两个单元组成 −
Computational Unit − 它由以下内容组成 −
-
Input unit (F1 layer) − 它进一步拥有以下两个部分 − F1(a) layer (Input portion) − 在 ART1 中,除了仅具有输入向量之外,这部分将不会进行任何处理。连接至 F1(b) 层(接口部分)。 F1(b) layer (Interface portion) − 此部分将输入部分的信号与 F2 层的信号进行组合。F1(b) 层通过自下而上的权重 bij 连接至 F2 层,并且 F2 层通过自上而下的权重 tji 连接至 F1(b) 层。
-
Cluster Unit (F2 layer) − 这是一个竞争层。选择具有最大净输入的单元来学习输入模式。所有其他集群单元的激活都设为 0。
-
Reset Mechanism − 此机制的工作基于自上而下权重和输入向量之间的相似性。现在,如果相似程度低于警惕性参数,则不允许集群学习模式,并且将发生重置。
Supplement Unit − 重置机制的问题实际上在于,第 F2 层必须在某些条件下受到抑制,并且在发生某些学习时也必须可用。这就是加 gain control units 两个补充单元即 G1 和 G2 以及重置单元 R 的原因。这些单元接收并向网络中存在的其他单元发送信号。 ‘+’ 指示激励信号,而 ‘−’ 指示抑制信号。
Parameters Used
以下参数使用 −
-
n − 输入矢量中分量的数量
-
m − 可以形成的最大簇数
-
bij − F1(b) 到 F2 层的权重,即自底向上的权重
-
tji − F2 到 F1(b) 层的权重,即自顶向下的权重
-
ρ − Vigilance parameter
-
||x|| − 矢量 x 的范数
Algorithm
Step 1 − 初始化学习率、警觉性参数和权重如下 −
\alpha\:>\:1\:\:and\:\:0\:<\rho\:\leq\:1
0\:<\:b_{ij}(0)\:<\:\frac{\alpha}{\alpha\:-\:1\:+\:n}\:\:and\:\:t_{ij}(0)\:=\:1
Step 2 − 当停止条件为假时,继续执行步骤 3-9。
Step 3 − 为每个训练输入继续执行步骤 4-6。
Step 4 − 将所有 F1(a) 和 F1 单元的激活设置如下
F2 = 0 and F1(a) = input vectors
Step 5 − 从 F1(a) 到 F1(b) 层的输入信号必须像
s_{i}\:=\:x_{i}
Step 6 − 对于每个抑制的 F2 节点
$y_{j}\:=\:\sum_ib_{ij}x_{i}$ 条件为 yj ≠ -1
Step 7 − 当重置为真时,执行步骤 8-10。
Step 8 - 找在所有节点 j 中 yJ ≥ yj 的 J
Step 9 - 再按如下方式计算F1(b)上的激活
x_{i}\:=\:sitJi
Step 10 - 在计算出矢量 x 的范数和矢量 s 的范数后,需要按如下方式检查重置条件 -
如果 ||x||/ ||s|| < 警觉参数 ρ ,则抑制节点 J 并转到步骤7
否则,如果 ||x||/ ||s|| ≥ 警觉参数 ρ ,则继续。
Step 11 - 节点 J 的权重更新可按如下方式进行 -
b_{ij}(new)\:=\:\frac{\alpha x_{i}}{\alpha\:-\:1\:+\:||x||}
t_{ij}(new)\:=\:x_{i}
Step 12 - 必须检查算法的停止条件,它可能如下 -
-
无权重变化。
-
不对单元进行重置。
-
达到最大迭代次数。