之所以会有这个问题,是因为在学习 logistic regression 时,《统计机器学习》一书说它的负对数似然函数是凸函数,而 logistic regression 的负对数似然函数(negative log likelihood)和 交叉熵函数(cross entropy)具有一样的形式。

先给出结论,logistic regression 时,cross entropy 是凸的,但多层神经网络时,cross entropy 不是凸的。

logistic regression 时,cross entropy 是凸的:

Why is the error function minimized in logistic regression convex? -- Deepak Roy Chittajallu

多层神经网络(MLP)时,cross entropy 不是凸的:(肯定不是凸的啊,不然调参哪来这么多问题)

Cost function of neural network is non-convex? - Cross Validated

cross entropy 损失函数:((hat{y}) 为预测值,(y) 为真实值)

[-y log hat{y}-(1-y) log (1-hat{y})]

直观解释

简单点的解释是,logistic regression 时,证明两个凸函数相加还是凸函数,因为 (y) 不是 0 就是 1,那就要证明此时 (- log hat{y})(- log (1-hat{y})) 关于 (w) 都是凸函数,也就是证明 Hessian 矩阵半正定。证明看上述链接。

而 MLP 时,给出直观解释是,在神经网络的某一隐藏层交换两个神经元的权重,最后输出层得到的值不会变,这就说明如果有一个最优解,那交换神经元权重后,解仍然是最优的,那么此时就存在两个最优解了,那就不是凸函数了。

logistic regression 为什么还用梯度下降法求解呢,不直接求解析解?

在令 cross entropy 一阶导数为 0 时,就会发现无法将权重 (w) 提到等式左边,即无法写成 (w = 式子) 这种形式,所以虽然有等式约束,但直接求解析解还是挺困难。所以梯度下降法、牛顿法、拟牛顿法常用来求解 logistic regression。

References

Why is the error function minimized in logistic regression convex? -- Deepak Roy Chittajallu
Cost function of neural network is non-convex? - Cross Validated
Logistic回归能有解析解吗? - Zzzzzzzz的回答 - 知乎

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/wuliytTaotao/p/11967620.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!