在cs231n课程中,当我阅读有关激活功能的注释时,遇到了关于S形函数的问题。这是屏幕截图:
cons and pros of sigmoid
我认为,既然梯度dw = x.T dot dout
尽管现在x.T
都为正,但是在矩阵乘法之后,为什么dw
都为正还是负?唯一的机会是dout
都是正数或负数,但是为什么呢?
有人能帮我吗?
最佳答案
如果您阅读的是确切的句子,那么它的整体内容(略述)为:
如果进入神经元的数据始终为正,则反向传播期间权重上的梯度将变为全正或全负(取决于整个表达式f的梯度)。
假设f = w^Tx + b
。则权重的梯度为\nabla_w L = (dL/df)(df/dw)
。由于dL/df
是标量,因此它可以是正数或负数(或为零,但这不太可能)。另一方面,df/dw = x
。很明显,如果x
全部为正或全部为负,则df/dw
也全部为正或全部为负。但这意味着\nabla_w L
还必须全部为正或全部为负,因为dL/df
不能不同地更改df/dw
的各个元素的符号。因此,梯度的符号是均匀的。