Positive-Unlabeled Learing

 

好的,这是一个关于 Positive-Unlabeled Learning(正类-无标记学习,简称 PU Learning) 的详细解释。

核心定义

Positive-Unlabeled Learning (PU Learning) 是一种特殊的半监督机器学习范式。在传统的分类问题中,我们通常拥有明确标记的正样本和负样本。但在 PU Learning 的场景下,我们的训练数据只包含两部分:

  1. 正样本 (P): 一组被明确标记为“正类”的样本。
  2. 无标记样本 (U): 一组未标记的样本,其中既包含隐藏的正样本,也包含负样本。

关键点:无标记样本集 不是负样本集,而是一个正样本和负样本的混合体,只是我们不知道每个样本的具体身份。


问题背景与挑战

为什么会出现这种情况?因为在实际应用中,获取负样本通常非常困难、昂贵或不明确。

  • 例子1:疾病诊断:我们很容易找到确诊患病的病人(正样本)。但“未患病”的人(潜在的负样本)很少会全部去医院做检查来证明自己是健康的。我们拥有的是一大群未做检查的“无标记”人群,其中既有健康人,也有未确诊的病人。
  • 例子2:推荐系统:用户点击过的商品可以视为正样本。但用户未点击的商品不代表就是负样本(用户可能没看到、暂时不想买等),它们是无标记样本。
  • 例子3:金融风控:已确认的欺诈交易是正样本。但大量的正常交易中,可能混有未被识别的欺诈交易,这些正常交易就是无标记样本。

如果直接把这些无标记样本全部当作负样本来训练一个二分类模型,会导致模型产生严重的偏见,因为它会把很多隐藏的正样本错误地当作负样本来学习,从而导致性能很差。


PU Learning 的核心思想与主要方法

PU Learning 的目标是:利用已知的正样本 P 和混合的无标记样本 U,训练出一个能有效区分正负样本的分类器。

其主要方法可以分为两大类:

1. 两阶段法

这是最直观和经典的方法,包含两个步骤:

  • 第一阶段:识别可靠的负样本
    • 从无标记集 U 中,找出那些与已知正样本 P 差异很大、极有可能为负的样本,称为“可靠负样本”。
    • 常用技术:使用聚类、最近邻、或基于决策边界的方法来寻找这些“可靠的负样本”。
  • 第二阶段:使用 P 和 RN 进行迭代学习
    • 一旦识别出一组可靠的负样本,就可以将问题转化为一个标准的监督学习问题:正样本 vs. 可靠负样本。
    • 训练一个初始分类器,然后用这个分类器对剩下的无标记样本进行预测。将那些被高置信度预测为负的样本加入到负样本集中。
    • 用扩充后的数据集重新训练分类器,并重复此过程,逐步优化。经典的算法如 SPY-EM 就是这种思路。

2. 类别先验法 / 概率修正法

这种方法基于一个重要的假设:无标记样本集中的类别先验概率是已知或可以估计的。即,我们知道无标记集 U 中正样本的比例 π = P(y=1)

  • 核心洞察:一个无标记样本,其实是一个以概率 π 为正、以概率 1-π 为负的样本。
  • 做法
    1. 首先,把全部无标记样本 U 都临时当作负样本,与正样本 P 一起训练一个非标准的分类器。这个分类器学习的是 P(s=1|x),即“样本被标记为正的概率”。
    2. 然后,通过一个概率修正公式,将学到的 P(s=1|x) 转换为真正需要的 P(y=1|x)(样本本身是正类的概率)。
      • 经典的修正公式为: P(y=1|x) = P(s=1|x) / π
    3. 通过这种方式,我们可以直接得到一个能估计样本真实正类概率的模型。

关键挑战

  1. 类别先验估计:对于类别先验法,准确估计无标记集中正样本的比例 π 至关重要,但通常很困难。
  2. 假设的合理性:很多方法依赖于“正样本与负样本是可分离的”或“正样本是代表性”的假设,在实际中可能不总是成立。
  3. 噪声影响:已知的正样本集中可能包含错误标记的噪声。

总结

Positive-Unlabeled Learning 是一种用于解决只有正样本和无标记样本这种特殊数据场景的强大工具。它通过巧妙的方法从无标记数据中“挖掘”出负样本信息或进行概率修正,从而克服了传统方法直接将无标记样本视为负样本所带来的偏差问题。它在信息检索、生物信息学、金融风控和医疗诊断等领域有着广泛的应用前景。