人工神经网络 - 构建块

ANN 的处理依赖于以下三个构建块 −

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

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

网络拓扑

网络拓扑是网络及其节点和连接线的排列。根据拓扑结构,ANN 可分为以下类型 −

前馈网络

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

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

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

多层前馈网络

反馈网络

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

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

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

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

Jordan 网络

权重调整或学习

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

监督学习

顾名思义,这种学习是在老师的监督下进行的。这个学习过程是依赖的。

在监督学习下训练 ANN 期间,输入向量被呈现给网络,这将产生输出向量。将此输出向量与期望输出向量进行比较。如果实际输出和期望输出向量之间存在差异,则生成误差信号。在此误差信号的基础上,调整权重,直到实际输出与期望输出匹配。

模型

无监督学习

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

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

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

无监督学习

强化学习

顾名思义,这种类型的学习用于强化或加强网络对某些关键信息的控制。这种学习过程类似于监督学习,但我们可能拥有的信息非常少。

在强化学习下训练网络时,网络会从环境中收到一些反馈。这使其有点类似于监督学习。但是,这里获得的反馈是评估性的而不是指导性的,这意味着没有像监督学习那样的老师。在收到反馈后,网络会对权重进行调整,以便将来获得更好的评价信息。

强化学习

激活函数

它可以定义为对输入施加额外的力或努力以获得精确的输出。在 ANN 中,我们还可以在输入上应用激活函数以获得精确的输出。以下是一些有趣的激活函数 −

线性激活函数

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

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

S 形激活函数

它有两种类型,如下所示 −

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

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

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

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