数据挖掘中的反向传播分类

2024年11月20日 | 阅读5分钟

它是一种将误差从输出节点传播到输入节点的算法。我们可以说它用于传播所有误差。我们可以将误差传播回数据挖掘中的各种应用,例如字符识别、签名验证等。

神经网络

它是一种受人类神经系统启发的图像处理系统范例。与人类神经系统一样,我们在神经网络中也有中性人工神经元。人脑拥有 100 亿个神经元,每个神经元平均连接到 10,000 个其他神经元。每个神经元通过突触接收信号,突触控制信号对神经元的影响。

Classification By Backpropagation In Data Mining

反向传播

它是一种广泛用于神经网络训练的算法。它用于计算网络权重的损失函数。它非常高效,可以直接计算与每个权重相关的梯度。借助它,还可以使用梯度方法训练多层网络并更新权重以最小化损失;通常使用梯度下降或随机梯度下降等变体。

反向传播算法的主要工作是,通过链式法则计算损失函数对每个权重的梯度,逐层计算梯度,并从最后一层开始反向迭代,以避免链式法则中中间项的冗余计算。

反向传播的特点

反向传播有许多特点。这些特点如下。

  1. 它是用于创建具有可微分单元的简单感知器网络的梯度方法之一。
  2. 它比其他网络困难得多。它用于计算网络的学习周期。
  3. 训练中使用了三个阶段。这三个阶段如下。
    • 输入训练模式的正向传播、计算和误差的反向传播。
    • 权重的更新。

反向传播的工作原理

我们可以使用神经网络来监督学习,它用于根据网络操作的输入向量生成输出向量。我们可以创建比较输出,如果错误报告的结果与向量的输出不匹配,它还可以生成错误报告。然后,它会根据错误报告调整权重,以获得所需的输出。

反向传播算法

它是神经网络最基本的组成部分。它于 1960 年被引入,并在 1989 年由 Rumelhart、Hinton 和 Williams 在一篇名为“通过反向传播误差学习表示”的论文中推广开来。

4 层神经网络包括 4 个输入层神经元,4 个隐藏层神经元和 1 个输出层神经元。

在上图中,紫色表示输入数据。这些输入数据类似于标量,并且与向量的相似性较难。

Classification By Backpropagation In Data Mining

在第一组激活中,(a) 也等于输入值。激活一词指的是神经元的值,它是在生成激活函数后生成的。

绿色表示神经元的最终值。这些值是使用 z^l — 第 l 层的加权输入和 a^l— 第 l 层的激活计算得出的。对于第 2 层和第 3 层,公式变为

对于 l=2,公式变为

Classification By Backpropagation In Data Mining

对于 l=3,公式变为

Classification By Backpropagation In Data Mining

这里,W2 和 W3 分别表示第 2 层和第 3 层的权重。b2 和 d3 表示第 2 层和第 3 层的偏差。

我们可以使用激活函数 f 计算 a2 和 a3。这里函数 f 是非线性的,借助它,网络可以学习数据中的复杂模式。

Classification By Backpropagation In Data Mining

仔细观察,我们发现上面 4 层网络插图中缺少 x, z², a², z³, a³, W¹, W², b¹ 和 b² 的下标。主要原因是我们将所有参数值组合在按层分组的矩阵中。通过这种方式,我们可以使用神经网络,并且应该熟悉这些计算。让我们通过一个例子来理解这一点。

让我们以两层及其参数为例。我们可以在任何网络的任何层中应用相同的操作。

  • 这里,W1 被称为形状为 (n, m) 的权重矩阵,其中 n 是输出神经元(下一层中的神经元)的数量,m 是输入神经元(上一层中的神经元)的数量。在我们的示例中,令 n = 2 且 m = 4。
Classification By Backpropagation In Data Mining

这里,任何权重的下标中的第一个数字与下一层中神经元的索引匹配(在我们的例子中是 Hidden_2 层),第二个数字与上一层中神经元的索引匹配(在我们的例子中是 Input 层)。

  • 这里,x 被称为形状为 (m, 1) 的输入向量,其中 m 是输入神经元的数量。令 m=4,
Classification By Backpropagation In Data Mining
  • 这里,b1 被称为形状为 (n, 1) 的偏置向量,其中 n 是当前层中神经元的数量。这里,我们取 n = 2。
Classification By Backpropagation In Data Mining
  • 根据 z² 的公式,我们可以使用 W¹、x 和 b¹ 的上述定义来推导出“z² 的公式”
Classification By Backpropagation In Data Mining

现在,我们必须观察下图中的神经网络图片。

Classification By Backpropagation In Data Mining

在上图中,我们必须看到 z² 可以用 (z_1)² 和 (z_2)² 来表示,其中 (z_1)² 和 (z_2)² 是每个输入 x_i 与相应权重 (W_ij)¹ 之间乘积的总和。这个上述方程导致了“z² 的方程”,并证明了 z²、a²、z³ 和 a³ 的矩阵表示是正确的。神经网络的最后一部分是输出层,它产生预测值。在我们的简单示例中,它表示为单个神经元,颜色为蓝色,计算如下

Classification By Backpropagation In Data Mining

反向传播的必要性

这种反向传播误差对于训练神经网络非常有用。它非常容易实现,并且本质上非常简单。除了输入数量之外,它不需要设置任何参数。它也是一种灵活的方法,因为它对网络没有任何先验知识。

反向传播的类型

网络中有两种反向传播。这两种如下。

  1. 静态反向传播
    静态反向传播是一种旨在将静态输入映射到静态输出的网络。这些类型的网络可以解决静态分类问题,例如 OCR(光学字符识别)。
  2. 递归反向传播
    递归反向传播是另一种用于定点学习的网络。递归反向传播中的激活会向前传播,直到达到固定值。静态反向传播提供即时映射,而递归反向传播不提供即时映射。

下一主题数据挖掘应用