前面有介绍逻辑回归模型是如何从二分类推广到多分类,参见 二分类 到 多分类 之 逻辑回归多分类推广。这次谈一谈单目标分类到多目标分类。
首先,解释一下二者的区别。单目标分类是指每个样本只能属于一个类别,比如训练猫狗分类器时,一张图片中只能包含猫或者狗; 多目标则一个样本中可以同时包含多个类别,如一张图片中可以同时包含一只猫和狗。注意,二分类和多分类都属于单目标分类的范畴。
1. 基本思路
首先,还是回顾一下逻辑回归模型的基本思路:
- 对于单个样本 x x x,根据多项式函数 f ( x ) = ω i T x f(x)=\omega_i^T x f(x)=ωiTx,得到其属于类别 i i i 的得分 s i s_i si;
- 通过非线性函数将样本属于各个类别的得分 s = ( s 0 , … , s n ) s=(s_0, …,s_n) s=(s0,…,sn) 映射为概率值 p = ( p 0 , … , p n ) p=(p_0, …,p_n) p=(p0,…,pn),其中,n为总类别数;
- 最后计算交叉熵作为 loss,反向梯度传播求解参数 ω \omega ω。
其中,第二步的非线性函数:
- 对于二分类逻辑回归模型,为 sigmoid 函数,
- 对于多分类逻辑回归模型,则为 softmax 函数,如下图所示。
详细介绍参见 二分类 到 多分类 之 逻辑回归多分类推广
2. 概率值转换
在前面的文章里我们有提到,对于多分类,如果需要将 p p