是否应该在 CNN 中进行卷积运算后添加偏差值?

数据挖掘 机器学习 深度学习 美国有线电视新闻网
2021-10-04 09:36:09

我们应该在卷积的每个条目上添加偏差然后求和,还是在计算 CNN 中的卷积结束时添加偏差?

2个回答

简短的回答:在计算卷积之后添加一次偏差。

长答案:您在 CNN 中看到的离散卷积是应用于图像小区域中的像素值的线性函数。然后,这个线性函数的输出会通过一些非线性(如 ReLU)受到干扰。对于一个地区x大小的i×j图像和卷积滤波器k,并且没有偏置项,这个线性函数f将被定义为:

f(x,k)=xk=i,jki,jxi,j

没有偏置项,这个线性函数f必须经过原点。换句话说,如果x或者k都是零,的输出f也将为零。这可能是不可取的,所以我们添加了一个偏置项b. 这通过提供一个始终添加到卷积输出的值来赋予模型更大的灵活性,而不管xk- 换句话说,它是截距值。

f(x,k,b)=b+(xk)=b+i,jki,jxi,j

如果将此值添加到卷积的每个条目中,则无法达到其目的f仍然必须经过原点。

根据此处的答案和此处的博客文章在卷积层中使用偏差有两种变体。如果您对每个卷积滤波器/内核使用一个偏差,则为绑定偏差如果您对每个内核和输出位置使用一个偏差,则为非绑定偏差。