为什么感知器标准函数是可微的?

人工智能 优化 梯度下降 感知器
2021-11-03 00:01:54

我正在阅读Aggarwal的《神经网络和深度学习》一书的第一章。

在本书的 1.2.1.1 节中,我正在学习感知器。这本书说的一件事是,如果我们将符号函数用于以下损失函数:i=0N[yisign(WXi)]2,该损失函数将不可微。因此,本书建议我们使用感知器标准,而不是损失函数中的符号函数,该标准将被定义为:

Li=max(yi(WXi),0)

问题是:为什么感知器标准函数是可微的?我们不会面临零的不连续性吗?有什么我在这里想念的吗?

2个回答

max(yi(wxi),0)不是偏导的尊重w如果wxi=0.

损失函数在某些点不可推导时是有问题的,但当它们在权重的某个区间内是平坦的(恒定的)时会更严重。

认为yi=1wxi<0(即“假阴性”类型的错误)。

在这种情况下,函数[yisign(wxi)]2=4. 所有区间的导数wxi<0为零,因此,学习算法无法确定是增加还是减少更好w.

在同样的情况下,max(yi(wxi),0)=wxi, 偏导数是xi. 学习算法知道它必须增加w如果值xi>0, 否则减少。这就是这个损失函数被认为比以前的更实用的真正原因。

如何解决问题wxi=0? 简单地说,如果你增加w结果是准确的0, 分配给它一个非常小的值,w=ϵ. 其余情况的类似逻辑。

由于我们正在处理实值变量,因此几乎可以肯定函数的参数不会是0.

如果你非常关心这一点,你可以只使用子梯度(我们确实有这个函数的子梯度,所以没有问题)。