多层人工神经网络有哪些方法?
人工神经网络的机制比感知器模型复杂得多。多层人工神经网络中有多种方法,如下所示:
网络可以在其输入层和输出层之间包含多个中间层。这些中间层称为隐藏层,安装在这些层中的节点称为隐藏节点。由此产生的架构称为多层神经网络。
在前馈神经网络中,一层中的节点仅与下一层中的节点连接。感知器是一个单层前馈神经网络,因为它只有一层节点(输出层)来实现复杂的数值运算。在循环神经网络中,链接可以连接同一层内的节点或一层中的节点到先前层。
网络可以使用除了符号函数之外的其他激活函数方法。多种激活函数的实例,例如线性、S型(逻辑)和双曲正切函数。这些激活函数使隐藏节点和输出节点能够产生对其输入参数呈非线性关系的输出值。
这些更复杂的特性使多层神经网络能够模拟输入和输出变量之间更复杂的关系。实例可以使用两个将输入空间划分为其特定类别的超平面来定义。
要了解 ANN 模型的权重,需要一个有效的算法,当提供足够数量的训练数据时,该算法能够汇集到正确的解决方案。一种方法是将网络中的每个隐藏节点或输出节点视为一个单独的感知器单元,并使用相同的权重更新公式。
此方法将不起作用,因为它可能缺乏关于隐藏节点正确输出的先验知识。这使得确定与每个隐藏节点相关的误差项(y – y')变得复杂。接下来将展示一种了解神经网络权重的方法,该方法依赖于梯度下降法。
ANN 学习算法的目标是确定一类权重 w,以最小化平方误差的总和:
$$\mathrm{E(w)\:=\:\frac{1}{2}\displaystyle\sum\limits_{i=1}^N (Y_{i}-Y^{'}_i)^2}$$
平方误差之和基于 w,因为预测类别 y' 是创建到隐藏节点和输出节点的权重的函数。在这些情况下,由于选择了其激活函数(例如 S 型或 tanh 函数),因此 ANN 的输出是其参数的非线性函数。