基本可以意识到梯度下降和反向传播定理是什么意思了。但是不太理解的是:什么时候使用一个偏差?
例如,当映射AND函数时,当我使用2个输入和1个输出时,它不会给出正确的权重,但是当我使用3个输入(其中1个是偏差)时,它会给出正确的权重。
个人认为这种偏差几乎总是有帮助的。实际上,偏置值允许将激活功能左移或右移,这对于机器学习可能是至关重要的。
考虑看下这个没有偏差值的1输入1输出网络:
网络的输出通过将输入(x)乘以权重(w0)并通过某种激活函数(例如S形函数)传递结果来计算。
这是网络计算的函数,对于w0的各种值:
改变重量w0本质上改变了S形的“陡度”。但是如果你希望网络在x是2的时候输出0呢?只要改变S形的陡度就行不通了 - 而是希望能够把整个曲线向右移动。
这正是偏差值要做的事情。如果我们给这个网络增加一个偏差,像这样:
...那么网络的输出变成sig(w0*x + w1*1.0)。以下是网络的输出对于w 1的各种值的示例:
当w1的权重为-5时,曲线向右移动,这使得当x是2时,我们可以有一个输出0的网络。
只是为了增加我的两分钱。
一个更简单的方法来理解偏差是什么:它与线性函数的常数b类似
y = ax + b
它允许您上下移动线路,以更好地适应数据的预测。如果没有b,那么总是通过原点(0,0),你可能会变得更穷。