PU learning论文阅读。
本文从基本的分类损失出发,推导了PU的分类问题其实就是Cost-sensitive classification
的形式,同时,通过实验证明了如果使用凸函数作为loss function,例如hinge loss
会导致错误的分类边界(有bias),因此需要使用例如ramp loss
之类的凹函数。同时,论文还对先验 π \pi π存在偏差的情况进行了讨论,说明了如果样本中大部分都是正样本,那么就算先验差距比较大,但对总体的分类效果没有太大影响。最后对分类边界进行讨论,证明了使用PU进行分类的误差小于监督学习误差的 2 2 2\sqrt{2} 22倍。
基本概念和定义
Ordinary classification
Bayes optimal classifier
的目标是最小化misclassification rate
,这在Introduction to Statistical Machine Learning By Masashi Sugiyama 书里有定义,直观理解就是最小化期望错分率:- R ( f ) = π R 1 ( f ) + ( 1 − π ) R − 1 ( f ) R(f) = \pi R_1 (f) + (1 - \pi) R_{-1}(f) R(f)=πR1(f)+(1−π)R−1(f)
- 这里的 R 1 R_1 R1表示
false negative rate
,也就是分错正类的概率,乘以先验正类的概率 π \pi π - R − 1 R_{-1} R−1表示
false positive rate
,也就是分错负类的概率,乘以先验负类的概率 1 − π 1-\pi 1−π - 这样,对分错样本的概率分别乘以其先验概率,就是其错分概率的期望。
Cost-sensitive classification
- 如果对于某种错误我们的敏感程度不一样,那么就乘以不同的权重,重新定义为:
- R ( f ) = π c 1 R 1 ( f ) + ( 1 − π ) c − 1 R − 1 ( f ) R(f) = \pi c_1 R_1(f) + (1-\pi) c_{-1}R_{-1}(f) R(f)=πc1R1(f)+(1−π)c−1R−1(f)
- 这里用 c 1 c_1 c1和 c − 1 c_{-1} c−1分别表示对两种错分的代价
PU classification
- 定义在未标记数据集 X X X 中的分布:
- P X = π P 1 + ( 1 − π ) P − 1 P_X = \pi P_1 + (1-\pi) P_{-1} PX=πP1+(1−π)P−1
- 注意,这里的 P X
- 定义在未标记数据集 X X X 中的分布: