我研究神经网络已经有几个星期了,发现所有指南和文档都没有提到Bias单位和/或始终假定它是1。 是否有任何原因或情况要求我们将偏差单位设为1? 还是将其作为网络中的可调参数?
编辑:很抱歉,我是堆栈溢出的新手,并且发现了类似的问题,所以我认为这是一个好地方,谢谢您纠正我。
编辑:当人们提到偏见时,大多数情况下是指bias_weight:
偏差单位也是我们在反向传播中获得偏差Δb的方程式的原因: Δb=ΔY* 1(* 1通常不会出现在方程上,因为它对方程没有影响)
希望清除后会想起来。
答案 0 :(得分:0)
这个问题更适合交叉验证或数据科学(根本不涉及代码)。
我认为您有一个误解,偏见是一个可训练的参数,它在训练过程中也会学习并更新。
我想我知道您困惑的根源(如果我错了,请纠正我)。在许多地方,偏差项都作为常数1元素并入输入向量x中。
因此,如果我们输入以下内容:
某些操作的输出可以写为:
其中训练有素的参数为:
但是也可以通过以下方式编写:
但是,尽管事实上我们的输入中有常数1,但由于仍然是可训练的参数之一,因此偏差仍然可以是任何值。