我在尝试制作一个简单的感知机来执行逻辑与运算,但不知道如何解决0输入的问题。
weight+=error*learning_rate*input
此外,当输入为0时,无论误差如何,重量都不会改变。
还有一个问题,一般来说,在训练感知机时,我可以重复使用两个集合的示例(比如一个用于0,一个用于1),还是必须使用不同的示例?
回答:
这是一个有趣且非常重要的见解。这就是为什么通常在神经网络中应该有一个偏置项的原因。
想象一下感知机的决策面就像一条形式为
y = w*x+b
的线。当你从方程中去掉b(偏置)时,你只能学习通过点(0, 0)的线。