感知器权重更新规则的直觉

问题描述 投票:0回答:2

我无法理解感知器的权重更新规则

w(t + 1) = w(t) + y(t)x(t).

假设我们有一个线性可分离的数据集。

  • w 是一组权重 [w0, w1, w2, ...],其中 w0 是偏差。
  • x 是一组输入参数 [x0, x1, x2, ...],其中 x0 固定为 1 以适应偏差。

在迭代 t 时,其中 t = 0, 1, 2, ...,

  • w(t) 是迭代 t 时的权重集。
  • x(t) 是错误分类的训练示例。
  • y(t)x(t) 的目标输出(-1 或 1)。

为什么这个更新规则会将边界向正确的方向移动?

algorithm machine-learning perceptron
2个回答
19
投票

感知器的输出是实例和权重之间点积的硬限制。让我们看看更新后情况有何变化。自从

w(t + 1) = w(t) + y(t)x(t),

然后

x(t) ⋅ w(t + 1) = x(t) ⋅ w(t) + x(t) ⋅ (y(t) x(t)) = x(t) ⋅ w(t) + y(t) [x(t) ⋅ x(t))].


请注意:

  • 根据算法的规范,仅当 x(t) 分类错误时才应用更新。
  • 根据点积的定义,x(t) ⋅ x(t) ≥ 0

这如何相对于 x(t) 移动边界?

  • 如果 x(t) 被正确分类,则算法不会应用更新规则,因此不会发生任何变化。
  • 如果 x(t) 被错误地分类为负数,则 y(t) = 1。由此可见,新的点积增加了 x(t) ⋅ x(t)(为正)。因此,就 x(t) 而言,边界朝正确的方向移动。
  • 相反,如果 x(t) 被错误地分类为正,则 y(t) = -1。由此可见,新的点积减少了 x(t) ⋅ x(t)(为正)。因此,就 x(t) 而言,边界朝正确的方向移动。

3
投票

感知器更新规则的更好推导记录在herehere。推导使用梯度下降。

  • 梯度下降算法的基本前提是找到分类的误差并设定参数以使误差最小化。

PS: 我非常努力地想了解为什么有人将 x 和 y 相乘来得出 w 的更新。因为 w 是单维 (y = wx+c) 的斜率,并且斜率 w = (y/x) 而不是 y * x。

© www.soinside.com 2019 - 2024. All rights reserved.