神经网络中的反向传播:机器学习算法
在学习反向传播神经网络(BPNN)之前,让我们先了解一下
什么是人工智能神经网络?
神经网络是一组连接的输入/输出单元,每个连接都有一个与其计算机程序关联的权重。它能帮助您从大型数据库中构建预测模型。该模型基于人类神经系统。它有助于您进行图像理解、人类学习、计算机语音等。
什么是反向传播?
反向传播是神经网络训练的精髓。它是根据前一个时期(即迭代)获得的错误率来微调神经网络权值的方法。正确调整权值可以降低错误率,并通过提高模型的泛化能力使其更加可靠。
神经网络中的反向传播是“误差反向传播”的缩写。它是训练人工神经网络的标准方法。该方法有助于计算损失函数相对于网络中所有权值的梯度。
反向传播算法的工作原理
神经网络中的反向传播算法通过链式法则计算单个权值的损失函数梯度。与直接计算相比,它一次可以有效地计算一层。它计算梯度,但并不定义梯度如何使用。它泛化了 delta 规则中的计算。
请看下面的反向传播神经网络示例图以帮助理解
- 输入 X,通过预连接路径到达
- 输入使用实际权值 W 进行建模。权值通常是随机选择的。
- 计算从输入层到隐藏层再到输出层的每个神经元的输出。
- 计算输出中的错误
ErrorB= Actual Output – Desired Output
- 从输出层向后传播到隐藏层,以调整权值,从而减小错误。
持续重复此过程,直到达到所需的输出
我们为什么需要反向传播?
反向传播最显著的优点是:
- 反向传播速度快、简单且易于编程
- 除了输入数量外,它没有需要调整的参数
- 它是一种灵活的方法,因为它不需要关于网络的先验知识
- 它是一种通常效果良好的标准方法
- 它不需要对要学习的函数特征进行任何特殊说明。
什么是前馈网络?
前馈神经网络是一种人工神经网络,其中节点不形成循环。这种神经网络有一个输入层、隐藏层和一个输出层。它是第一种也是最简单的一种人工神经网络。
反向传播网络的类型
反向传播网络的两种类型是:
- 静态反向传播
- 递归反向传播
静态反向传播
这是一种反向传播网络,它产生静态输入到静态输出的映射。它可用于解决静态分类问题,如光学字符识别。
递归反向传播
数据挖掘中的递归反向传播被前馈直到达到固定值。之后,计算并反向传播误差。
这两种方法的主要区别在于:静态反向传播的映射是快速的,而递归反向传播的映射是非静态的。
反向传播的历史
- 1961年,J. Kelly、Henry Arthur 和 E. Bryson 在控制论的背景下推导出了连续反向传播的基本概念。
- 1969年,Bryson 和 Ho 提出了一种多阶段动态系统优化方法。
- 1974年,Werbos 指出了将此原理应用于人工神经网络的可能性。
- 1982年,Hopfield 提出了他的神经网络思想。
- 1986年,通过 David E. Rumelhart、Geoffrey E. Hinton、Ronald J. Williams 的努力,反向传播获得了认可。
- 1993年,Wan 在反向传播方法的帮助下赢得了第一个国际模式识别竞赛。
反向传播要点
- 通过加权链接的元素简化网络结构,这些链接对训练网络的影响最小
- 您需要研究一组输入和激活值,以建立输入和隐藏单元层之间的关系。
- 它有助于评估给定的输入变量对网络输出的影响。从该分析中获得的知识应以规则表示。
- 反向传播对于处理易出错项目(如图像或语音识别)的深度神经网络尤其有用。
- 反向传播利用链式法则和幂法则,允许反向传播处理任意数量的输出。
反向传播最佳实践
神经网络中的反向传播可以通过“鞋带”类比来解释
张力太小 =
- 约束不足且非常松散
张力太大 =
- 约束过多(过度训练)
- 耗时太长(过程相对缓慢)
- 破损的可能性更高
拉一条鞋带比另一条更紧 =
- 不适(偏差)
使用反向传播的缺点
- 反向传播在特定问题上的实际性能取决于输入数据。
- 数据挖掘中的反向传播算法可能对噪声数据非常敏感
- 您需要使用基于矩阵的方法进行反向传播,而不是小批量。
摘要
- 神经网络是一组连接的输入/输出单元,每个连接都有一个与其计算机程序关联的权值。
- 反向传播是“误差反向传播”的缩写。它是训练人工神经网络的标准方法
- 数据挖掘中的反向传播算法机器学习快速、简单且易于编程
- 前馈 BPN 网络是一种人工神经网络。
- 反向传播网络的两种类型是:1) 静态反向传播 2) 递归反向传播
- 1961年,J. Kelly、Henry Arthur 和 E. Bryson 在控制论的背景下推导出了连续反向传播的基本概念。
- 数据挖掘中的反向传播简化了网络结构,移除了对训练网络影响最小的加权链接。
- 它对于处理易出错项目(如图像或语音识别)的深度神经网络尤其有用。
- 反向传播的最大缺点是它对噪声数据可能很敏感。