非平衡分类任务中weighted log loss

  统计/机器学习 监督式学习 模型验证 损失函数    浏览次数: 202
0

对于相对平衡的二元分类,我们一般用log loss

非平衡的二元分类有weighted log loss,但细节不大了解

weighted log loss具体是怎么weighted的,定义是怎么样的


 

ljljlj   2018-03-28 22:19



   1个回答 
3

正常的log loss

$$\text{logloss}=-\frac{1}{n}\sum_{i=1}^n\left(y_i\log(p_i)+(1-y_1)\log(1-p_i)\right)$$

$y_i$是真实值,0或者1;$p_i$是预测出的为1的概率。

加权重$r$,就是考虑到0和1的真实比例。weighted log loss可以写成

$$\text{logloss}_w=-\frac{1}{n}\sum_{i=1}^n\left(ry_i\log(p_i)+(1-r)(1-y_i)\log(1-p_i)\right)$$

如果0标签样本较少,你想给它们加权重,那就可以让$r$取一个小于0.5的数值。

还有一个比较直接的设置方法是让$r$是全部样本中是0的比例,比如100个样本,0有10个,那么$r=0.1$。


mrhust   2018-04-17 22:36



  相关主题

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

MSE问题   2回答

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

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

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

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

cross entropy是什么意思?   1回答

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

python求logloss   1回答

sklearn有没有生成混淆矩阵的函数?   1回答

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

sklearn里LogisticRegressionCV总是报错:Expected sequence or array-like, got estimator   1回答



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

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

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

我们谢绝答非所问。

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

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