Learning Classifiers from Only Positive and Unlabeled Data

本文探讨了在PU学习环境下,如何利用正例和未标记数据来估计分类器。通过证明分类器和PU分类器之间的关系,提出了三种常数c的估计方法。通过权重调整策略改进未标记数据的处理,实验证明了这种方法的有效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PU learning 经典论文。

本文主要考虑在SCAR假设下,证明了普通的分类器和PU分类器只相差一个常数,因此可以使用普通分类器的方法来估计 p ( s ∣ x ) ​ p(s|x)​ p(sx),进而得到 p ( y ∣ x ) ​ p(y|x)​ p(yx)。同时提供了三种方法来估计这个常数,最后,还对先验 p ( y ) ​ p(y)​ p(y)的估计提供了思路。

Learning a traditional classifier

  1. 概念定义

    • x ​ x​ x 表示一个样本, y ​ y​ y 表示其label(0或者1), s ​ s​ s表示是否被select
    • 那么,在PU问题中,当$s =1 时 , 一 定 有 时,一定有 y = 1$
    • P ( s = 1 ∣ x , y = 0 ) = 0 ​ P(s = 1| x,y=0) = 0 ​ P(s=1x,y=0)=0 一定成立
  2. 两种采样假设

    • signle-training-set
      • 所有的样本都是从 ( x , y , s ) (x,y,s) (x,y,s)这个三元组的分布中采样的
    • case-control
      • 两个数据集(正类,未标记)是从三元组中独立的抽样出来的。当采样正类时被称为case,采样未标记数据时称为contaminated controls
    • 这两种假设有很明显的区别。总的来说,第一种假设比第二种假设要严格得多,也就能提供更多的信息:
      • 两种假设都能让我们估计 p ( x ) p(x) p(x)
      • 但只有在第一种假设下,能够让我们很容易的估计出 p ( s = 1 ) p(s = 1) p(s=1),因此也更容易估计出 p ( y = 1 ) p(y = 1) p(y=1),二第二种条件不可以。
  3. 基本假设

    • 我们需要训练的传统分类器是: f ( x ) = p ( y = 1 ∣ x ) ​ f(x) = p(y = 1|x)​ f(x)=p(y=1x)
    • 然而,对正类数据没有任何假设的前提下,我们很难得到较好的分类器
    • 因此,论文给出的假设是,正类样本数据是从正类数据中完全随机的抽取出来的。
      • 也就是说,当 y = 1 ​ y = 1​ y=1时,无论 x ​ x​ x取说明值,它们的概率都是相同的: p ( s = 1 ∣ x , y = 1 ) = p ( s = 1 ∣ y = 1 ) ​ p(s = 1| x,y=1) = p(s =1|y=1)​ p(s=1x,y=1)=p(s=1y=1)
      • 这个假设被称为selected completedly at random
    • 我们定义一个nontraditional classifier g ( x ) = p ( s = 1 ∣ x ) ​ g(x) = p(s =1|x)​ g(x)=p(s=1x)
    • 因此,我们需要一些定理来证明如何将非传统的分类器转化为传统的分类器
  4. Lemma:假设SCAR条件成立,那么 p ( y = 1 ∣ x ) = p ( s = 1 ∣ x ) c ​ p(y = 1|x) = \frac{p(s=1|x)}{c}​ p(y=1x)=cp(s=1x),其中 c = p ( s = 1 ∣ y = 1 ) ​ c = p(s=1|y=1)​ c=p(s=1y=1)

    • 证明:由于我们的假设是: p ( s = 1 ∣ x , y = 1 ) = p ( s = 1 ∣ y = 1 ) ​ p(s = 1| x,y=1) = p(s =1|y=1)​ p(s=1x,y=1)=p(s=1y=1),因此:

    • KaTeX parse error: No such environment: equation at position 7: \begin{̲e̲q̲u̲a̲t̲i̲o̲n̲}̲\begin{split}p(…

    • 将我们的分类器带入为: f ( x ) = g ( x ) p ( s = 1 ∣ y = 1 ) f(x) = \frac{g(x)}{p(s=1|y=1)} f(x)=p(s=1y=1)g(x)</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值