经典CTR预估场景,主要对是否曝光/点击(0/1)进行二分类。最近遇到多分类(类别之间互斥)问题,踩了一些坑,总结和整理下,希望能够加深对多分类理解和思考。
区别
| 二分类 | 多分类 | |
| 标签 | 0/1 | c类,如c=10:[0,1,0,0,0,0,0,0,0,0] |
| 损失函数 | 交叉熵 | 多分类交叉熵 |
| 预估输出 | (0,1)值 | c维向量,如c=10:[0.1,0.1,0.2,0.2,0.1,0.1,0.1,0.2,0.2,0.1] |
| auc评估 | 随机选取正样本和负样本,正样本预估概率>负样本概率 | c类中每个单类auc; macro:c类每个类别的F1均值(各类别F1的权重相同); micro:计算总体的TP,FN和FP的数量,再计算F1; |
标签
标签为(0/1)int,而多分类为c的one-hot向量,如下:
binary label:0/1
mult label:[0,1,0,0,0,0,0,0,0,0]
损失函数
二分类Cross Entropy

本文对比了二分类与多分类任务的区别,从标签形式、损失函数、预估输出及评估方式等方面进行了详细说明,并提供了代码实例。对于多分类任务,还介绍了三种不同的评估方法。
最低0.47元/天 解锁文章
3501

被折叠的 条评论
为什么被折叠?



