之因此会有这个问题,是由于在学习 logistic regression 时,《统计机器学习》一书说它的负对数似然函数是凸函数,而 logistic regression 的负对数似然函数(negative log likelihood)和 交叉熵函数(cross entropy)具备同样的形式。html
先给出结论,logistic regression 时,cross entropy 是凸的,但多层神经网络时,cross entropy 不是凸的。网络
Why is the error function minimized in logistic regression convex? -- Deepak Roy Chittajallu机器学习
Cost function of neural network is non-convex? - Cross Validated函数
\[-y \log \hat{y}-(1-y) \log (1-\hat{y})\]学习
简单点的解释是,logistic regression 时,证实两个凸函数相加仍是凸函数,由于 \(y\) 不是 0 就是 1,那就要证实此时 \(- \log \hat{y}\) 和 \(- \log (1-\hat{y})\) 关于 \(w\) 都是凸函数,也就是证实 Hessian 矩阵半正定。证实看上述连接。spa
而 MLP 时,给出直观解释是,在神经网络的某一隐藏层交换两个神经元的权重,最后输出层获得的值不会变,这就说明若是有一个最优解,那交换神经元权重后,解仍然是最优的,那么此时就存在两个最优解了,那就不是凸函数了。htm
在令 cross entropy 一阶导数为 0 时,就会发现没法将权重 \(w\) 提到等式左边,即没法写成 \(w = 式子\) 这种形式,因此虽然有等式约束,但直接求解析解仍是挺困难。因此梯度降低法、牛顿法、拟牛顿法经常使用来求解 logistic regression。blog
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的回答 - 知乎get