在阅读感知器更新规则时,我遇到了两个不同的公式。
$1. w(t+1) = w(t) + y(t)x(t) (Yasher's Learning from Data)$
$2. w(t+1) = w(t) + \alpha(d-y(t))x(t)$
为什么有两种不同的形式?
我不太明白为什么规则有效? 我怎样才能证明它有效?
答案 0 :(得分:1)
公式$1
是Hebb's Rule的数学公式(通常,您可以将学习率计算在第2个等式中)。它可以解释为“如果两个神经元同时发射,增加它们的重量”。这是神经网络最早,最简单的学习规则。
此规则不适合培训,例如如果输入向量x或目标向量y是二进制,则更新变为0并且您不再训练。
为了解决彼此连接但不一起发射的神经元,然后将此规则改进为等式$2
,即delta rule。现在,这个规则实际上是更通用的Backpropagation算法的特例,用于multiple layers的网络。
您可以阅读链接页面上的“校样”(在此处复制/粘贴它是没有意义的)。像Hebb规则这样的事情只需要一点思考而不是实际的证明(尝试用一张纸上的一些训练数据来计算它,你就会明白它做了什么,不做什么)。
我实际上建议首先阅读更复杂的模型(多层感知器/反向传播),因为它更相关(单层感知器仅限于线性可分数据,所以他们无法学习例如XOR如果你理解它,你会得到“免费”的单层感知器。