人工神经网络 - 构建模块


ANN 的处理取决于以下三个构建块 -

  • 网络拓扑结构
  • 权重或学习的调整
  • 激活函数

在本章中,我们将详细讨论 ANN 的这三个构建模块

网络拓扑结构

网络拓扑是网络及其节点和连接线的排列。根据拓扑结构,人工神经网络可以分为以下几种 -

前馈网络

它是一个非循环网络,具有分层的处理单元/节点,并且一层中的所有节点都与前一层的节点连接。连接对它们有不同的权重。没有反馈回路意味着信号只能沿一个方向流动,从输入到输出。它可以分为以下两种类型 -

  • 单层前馈网络- 该概念是前馈 ANN 仅具有一个加权层。换句话说,我们可以说输入层完全连接到输出层。

单层前馈网络
  • 多层前馈网络- 该概念是前馈 ANN 具有多个加权层。由于该网络在输入层和输出层之间有一层或多层,因此称为隐藏层。

多层前馈网络

反馈网络

顾名思义,反馈网络具有反馈路径,这意味着信号可以使用环路在两个方向上流动。这使其成为一个非线性动态系统,不断变化直至达到平衡状态。它可以分为以下类型 -

  • 循环网络- 它们是具有闭环的反馈网络。以下是两种类型的循环网络。

  • 完全循环网络- 它是最简单的神经网络架构,因为所有节点都连接到所有其他节点,并且每个节点都充当输入和输出。

完全循环网络
  • Jordan 网络- 它是一个闭环网络,其中输出将作为反馈再次进入输入,如下图所示。

约旦网

权重或学习的调整

人工神经网络中的学习是修改指定网络神经元之间连接权重的方法。ANN 中的学习可以分为三类,即监督学习、无监督学习和强化学习。

监督学习

顾名思义,这种类型的学习是在老师的监督下完成的。这个学习过程是依赖的。

在监督学习下训练人工神经网络期间,输入向量被提供给网络,网络将给出输出向量。将该输出向量与所需的输出向量进行比较。如果实际输出与所需输出矢量之间存在差异,则会生成误差信号。根据该误差信号,调整权重,直到实际输出与期望输出匹配。

模型

无监督学习

顾名思义,这种类型的学习是在没有老师监督的情况下完成的。这个学习过程是独立的。

在无监督学习下训练 ANN 时,相似类型的输入向量被组合起来形成簇。当应用新的输入模式时,神经网络给出输出响应,指示输入模式所属的类别。

环境没有反馈关于期望的输出是什么以及它是否正确。因此,在这种类型的学习中,网络本身必须从输入数据中发现模式和特征,以及输入数据与输出之间的关系。

无监督学习

强化学习

顾名思义,这种类型的学习用于强化或加强针对某些批评信息的网络。这个学习过程类似于监督学习,但是我们的信息可能非常少。

在强化学习下的网络训练过程中,网络会收到来自环境的一些反馈。这使得它有点类似于监督学习。然而,这里获得的反馈是评估性的而不是指导性的,这意味着监督学习中没有老师。收到反馈后,网络会调整权重,以便将来获得更好的批评者信息。

强化学习

激活函数

它可以定义为为获得精确输出而对输入施加的额外力或努力。在人工神经网络中,我们还可以对输入应用激活函数以获得准确的输出。以下是一些感兴趣的激活函数 -

线性激活函数

它也称为恒等函数,因为它不执行输入编辑。它可以定义为 -

$$F(x)\:=\:x$$

S 形激活函数

它有两种类型,如下 -

  • 二元 sigmoidal 函数- 此激活函数执行 0 和 1 之间的输入编辑。它本质上是积极的。它总是有界的,这意味着它的输出不能小于 0 且不能大于 1。它本质上也是严格递增的,这意味着输入越多,输出就越高。它可以定义为

    $$F(x)\:=\:sigm(x)\:=\:\frac{1}{1\:+\:exp(-x)}$$

  • 双极 S 形函数- 此激活函数在 -1 和 1 之间执行输入编辑。它本质上可以是正数或负数。它总是有界的,这意味着它的输出不能小于-1也不能大于1。它本质上也像sigmoid函数一样严格递增。它可以定义为

    $$F(x)\:=\:sigm(x)\:=\:\frac{2}{1\:+\:exp(-x)}\:-\:1\:=\:\压裂{1\:-\:exp(x)}{1\:+\:exp(x)}$$