二元分类为什么不能用MSE做为损失函数?

  统计/机器学习 监督式学习 损失函数    浏览次数: 553
3

如果预测值为概率,真实值是0、1标签,那么为什么不能用MSE作为训练二元分类的损失函数呢?


 

剪叔   2018-03-05 13:27



   3个回答 
9

不用MSE也是有理论依据的。理论依据来源于surrogate loss function

准确率(accuray)是不连续的,所以需要用连续的函数来代理

红色是Hing Loss,绿色是Log Loss,而浅蓝色是MSE。明显可以看出浅蓝色不是好的代理,所以优化MSE并不能优化模型的准确度。


染盘   2018-03-08 11:13

谢谢!长见识了! - 剪叔   2018-03-09 05:37
5

我的理解是MSE可以作为二元分类的损失函数,但是效果不好。

其实某种意义上也可以将二元分类看做回归问题,即将$y=1$,$y=0$看做实数域上的两个值就可以了,不要想着类别,最终应该也可以得到一个模型,但是效果很差(网络上有人试过,你也可以自己试一试)。

其实机器学习很多问题是很灵活的,对于很多问题,可以考虑不同的模型、损失函数等等,但是当然要具体问题具体分析选择适合他的喽

dzzxjl   2018-03-05 21:16

2

感觉这就是个常识。均方根误差(MSE)只能用回归,二元分类一般用log loss。

我也不知道有没有什么科学道理。


Robin峰   2018-03-06 11:35



  相关主题

cross entropy是什么意思?   1回答

Hamming Loss汉明损失的计算公式是什么?   1回答

如何理解GBDT里面“损失函数的负梯度在当前模型的值,可以作为残差的估计”?   0回答

logloss的取值范围是多少?一般好的分类器能达到多少?   4回答

怎么理解surrogate loss function代理损失函数?   2回答

python求logloss   1回答

逻辑回归的损失函数是怎么来的   2回答

Gini指数、Gini系数、Gini不纯是一回事吗?   2回答

泊松回归(poission regression)的损失函数是什么?   1回答

huber loss是什么?什么时候用?   1回答

非平衡分类任务中weighted log loss   1回答

多分类问题有没有类似LogLoss的模型评判标准?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!