无监督学习


顾名思义,这种类型的学习是在没有老师监督的情况下完成的。这个学习过程是独立的。在无监督学习下训练 ANN 时,相似类型的输入向量被组合起来形成簇。当应用新的输入模式时,神经网络给出输出响应,指示输入模式所属的类。在这种情况下,环境不会就期望的输出是什么以及它是正确还是错误提供反馈。因此,在这种类型的学习中,网络本身必须发现输入数据的模式、特征以及输入数据与输出的关系。

赢者通吃的网络

此类网络基于竞争学习规则,并将使用选择总输入最大的神经元作为获胜者的策略。输出神经元之间的连接显示了它们之间的竞争,其中一个神经元将处于“ON”状态,这意味着它将成为获胜者,而其他神经元将处于“OFF”状态。

以下是一些基于使用无监督学习的简单概念的网络。

汉明网络

在大多数使用无监督学习的神经网络中,计算距离并进行比较至关重要。这种网络就是汉明网络,对于每个给定的输入向量,它会被聚类成不同的组。以下是汉明网络的一些重要特征 -

  • 李普曼于 1987 年开始研究汉明网络。

  • 它是一个单层网络。

  • 输入可以是二进制 {0, 1} 或双极性 {-1, 1}。

  • 网络的权重由样本向量计算。

  • 它是一个固定权重网络,这意味着即使在训练期间权重也将保持不变。

最大净值

这也是一个固定权重网络,用作选择具有最高输入的节点的子网。所有节点都是完全互连的,并且所有这些加权互连中都存在对称权重。

建筑学

最大净值

它使用迭代过程的机制,每个节点通过连接接收来自所有其他节点的抑制输入。值最大的单个节点将是活动的或获胜者,所有其他节点的激活将是不活动的。Max Net 使用身份激活函数 $$f(x)\:=\:\begin{cases}x & if\:x > 0\\0 & if\:x \leq 0\end{cases}$$

该网络的任务是通过+1的自激权重和互抑制幅度来完成,其设置为[0 < ɛ < $\frac{1}{m}$],其中“m”是数量节点。

人工神经网络中的竞争性学习

它涉及无监督训练,其中输出节点尝试相互竞争以表示输入模式。要理解这个学习规则,我们必须了解竞争网络,解释如下 -

竞争网络的基本概念

该网络就像一个单层前馈网络,在输出之间具有反馈连接。输出之间的连接是抑制型的,用虚线表示,这意味着竞争对手永远不会支持自己。

基本概念

竞争学习规则的基本概念

如前所述,输出节点之间会存在竞争,因此主要概念是 - 在训练期间,对给定输入模式具有最高激活的输出单元将被宣布为获胜者。该规则也称为赢家通吃,因为只有获胜的神经元被更新,其余神经元保持不变。

数学公式

以下是此学习规则的数学公式的三个重要因素 -

  • 成为获胜者的条件

    假设如果一个神经元y k想成为获胜者,那么就会有以下条件

    $$y_{k}\:=\:\begin{cases}1 & if\:v_{k} > v_{j}\:对于所有\:\:j,\:j\:\neq\ :k\\0 & 否则\end{cases}$$

    这意味着,如果任何神经元(例如y k )想获胜,那么它的感应局部场(求和单元的输出)(例如v k)必须是网络中所有其他神经元中最大的。

  • 总重量状况

    竞争性学习规则的另一个约束是特定输出神经元的权重总和将为 1。例如,如果我们考虑神经元k,则

    $$\displaystyle\sum\limits_{k} w_{kj}\:=\:1\:\:\:\:对于所有\:\:k$$

  • 获胜者的体重变化

    如果神经元不响应输入模式,则该神经元不会进行学习。然而,如果特定神经元获胜,则相应的权重将调整如下 -

    $$\Delta w_{kj}\:=\:\begin{cases}-\alpha(x_{j}\:-\:w_{kj}), & if\:神经元\:k\:获胜\\ 0 & if\:神经元\:k\:损失\end{cases}$$

    这里$\alpha$是学习率。

    这清楚地表明,我们通过调整获胜神经元的权重来支持获胜的神经元,如果神经元丢失,那么我们无需费心重新调整其权重。

K-means聚类算法

K-means 是最流行的聚类算法之一,其中我们使用分区过程的概念。我们从初始分区开始,反复将模式从一个集群移动到另一个集群,直到获得满意的结果。

算法

步骤 1 - 选择k点作为初始质心。初始化k 个原型(w 1 ,…,w k ),例如我们可以使用随机选择的输入向量来识别它们 -

$$W_{j}\:=\:i_{p},\:\:\: 其中\:j\:\in \lbrace1,....,k\rbrace\:和\:p\:\在 \lbrace1,....,n\rbrace$$

每个簇C j与原型w j相关联。

步骤 2 - 重复步骤 3-5,直到 E 不再减少,或者集群成员资格不再更改。

步骤 3 - 对于每个输入向量i p(其中p ∈ {1,…,n}),将i p放入具有以下关系的最近原型w j*的簇C j*中

$$|i_{p}\:-\:w_{j*}|\:\leq\:|i_{p}\:-\:w_{j}|,\:j\:\in \lbrace1, ....,k\r大括号$$

步骤 4 - 对于每个簇C j,其中j ∈ { 1,…,k},将原型w j更新为当前C j中所有样本的质心,以便

$$w_{j}\:=\:\sum_{i_{p}\in C_{j}}\frac{i_{p}}{|C_{j}|}$$

步骤 5 - 计算总量化误差如下 -

$$E\:=\:\sum_{j=1}^k\sum_{i_{p}\in w_{j}}|i_{p}\:-\:w_{j}|^2$$

新认知机

它是一种多层前馈网络,由福岛于 20 世纪 80 年代开发。该模型基于监督学习,用于视觉模式识别,主要是手写字符。它基本上是 Cognitron 网络的延伸,Cognitron 网络也是由福岛于 1975 年开发的。

建筑学

它是一个分层网络,由许多层组成,并且这些层中存在本地连接模式。

新认知机

正如我们在上图中看到的,新认知机分为不同的连接层,每层有两个单元。这些单元格的解释如下 -

S-Cell - 它被称为简单细胞,经过训练以响应特定模式或一组模式。

C-Cell - 它被称为复杂单元,它结合了 S-cell 的输出,同时减少了每个数组中的单元数量。从另一种意义上说,C-cell取代了S-cell的结果。

训练算法

发现新认知机的训练是逐层进行的。从输入层到第一层的权重被训练并冻结。然后,训练第一层到第二层的权重,依此类推。S-cell 和 Ccell 之间的内部计算取决于来自前一层的权重。因此,我们可以说训练算法取决于S-cell和C-cell的计算。

S-cell 中的计算

S-cell 拥有从前一层接收到的兴奋信号,并拥有在同一层内获得的抑制信号。

$$\theta=\:\sqrt{\sum\sum t_{i} c_{i}^2}$$

这里,t i是固定权重,ciC-cell 的输出。

S-cell 的缩放输入可以计算如下 -

$$x\:=\:\frac{1\:+\:e}{1\:+\:vw_{0}}\:-\:1$$

这里,$e\:=\:\sum_i c_{i}w_{i}$

w i是从C-cell调整到S-cell的权重。

w 0是输入和S-cell之间可调节的权重。

v是来自 C 细胞的兴奋性输入。

输出信号的激活是,

$$s\:=\:\begin{cases}x, & if\:x \geq 0\\0, & if\:x < 0\end{cases}$$

C 单元中的计算

C层的净输入为

$$C\:=\:\displaystyle\sum\limits_i s_{i}x_{i}$$

这里,s i 是S-cell的输出,xi从S-cell到C-cell的固定权重。

最终输出如下 -

$$C_{out}\:=\:\begin{cases}\frac{C}{a+C}, & 如果\:C > 0\\0, & 否则\end{cases}$$

这里“a”是取决于网络性能的参数。