不完全监督学习(一)里提到了杉山将的弱监督学习,接下来看看从Positive and Unlabeled的角度观察不完全监督。

Bojak:不完全监督学习(一)?

zhuanlan.zhihu.com
图标

PU Learning最开始的应用场景是对文本分类。已知某部分文档属于ci 类,要从大量没有标记的文档中找出 ci 类的样本。本文将对解决PU Learning的常见演算法进行总结,主要叙述策略思路。

目前的方法可以归结到以下几类。

(1) 样本标记:先在未标记数据中识别出一些可靠负样本,然后在正样本和这些可靠负样本上进行监督学习;

(2) 样本赋权:对正样本和未标记样本赋予权重,并给出样本属于正标签的条件概率估计;

(3) 杂讯处理:把未标记样本当作杂讯很大的负样本进行处理。

样本标记

样本标记的思路是通过一定手段得到可靠负样本,然后与正样本组成数据集供模型训练和测试,得到负样本的常见方法如下所示。

Rocchio演算法

该演算法属于较早的文本分类方法之一,基本思想是先计算正样本集合P和未标记样本集合U的一个原型向量,计算公式如下所示。

C_{j} 表示文档类别的第 j 类, alphaeta 表示对正样本和未标记样本的权重,D 表示样本集合,d表示某个样本, c_{j} 即原型向量 (prototype vector)。

然后再求每个文档与以上两个向量的相似性,如果某个文档与未标记样本的相似性远远大于它与正样本的相似性,那么就认为该文档是可靠的负样本。

贝叶斯方法

利用贝叶斯方法找到可靠负样本的步骤如下。

(1) 将所有正样本标记为+1,所有未标记样本当作-1;

(2) 利用正样本和未标记样本训练一个贝叶斯分类器;

(3) 用分类器来预测未标记样本,被预测为负样本的就是可靠负样本。

间谍法

基本思路是从正样本里抽取一部分样本(间谍)放进未标记样本,然后将未标记样本都记为-1,正样本记为+1,然后利用贝叶斯进行分类,求出「间谍样本」的分类概率阈值,小于该阈值的记为可靠负样本。具体步骤如下。

样本赋权

通过对正负样本加权处理,权重类似于弱监督学习里的置信度,来标记不同样本,模型训练时根据权重来调整分类面[1]。

杂讯处理

论文[2]提出了一种改进的SVM方法,把未标记样本当作杂讯很大的负样本进行学习,优化目标如下所示。

C 用来在训练中控制正负样本的误差,值越大,表示模型容忍较大的误差。对于Positive-Unlabeled data,一般对正样本设置较大的C,负样本设置较小的C

参考文献

[1] Lee W S , Liu B . Learning with Positive and Unlabeled Examples Using Weighted Logistic Regression[C]// Machine Learning, Twentieth International Conference. DBLP, 2003.?

www-new.comp.nus.edu.sg

[2] Liu B , Dai Y , Li X , et al. Building Text Classifiers Using Positive and Unlabeled Examples[C]// null. IEEE Computer Society, 2003.?

static.aminer.org


推荐阅读:

相关文章