Learning Classifiers from Only Positive and Unlabeled Data

【每周一文】Building Text Classifiers Using Positive and Unlabeled Examples(2003) 概述 PULearning是一类机器学习算法,主要解决的问题是给定训练样本只有正样本和一批未标记的样本,学习一个分类器进行分类。这是一类比较难解决的问题,由于没有负样本其评估的方法不好确定;但是有很多的应用场景,例如蛋白质序列查找、噪声发现等。 常用的解决思路主要分为两步: 1. 识别出一批可靠的负样本集合。 2. 根据正负样本训练多个分类器从中选择一个最优的作为最终的分类器。 该文介绍 阅读详情

PU learning 经典论文。

本文主要考虑在SCAR假设下,证明了普通的分类器和PU分类器只相差一个常数,因此可以使用普通分类器的方法来估计 p ( s ∣ x ) ​ p(s|x)​ p(s∣x)​,进而得到 p ( y ∣ x ) ​ p(y|x)​ p(y∣x)​。同时提供了三种方法来估计这个常数,最后,还对先验 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=1∣x,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=1∣x)​
    • 然而,对正类数据没有任何假设的前提下,我们很难得到较好的分类器
    • 因此,论文给出的假设是,正类样本数据是从正类数据中完全随机的抽取出来的。
      • 也就是说,当 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=1∣x,y=1)=p(s=1∣y=1)​
      • 这个假设被称为selected completedly at random
    • 我们定义一个nontraditional classifier: g ( x ) = p ( s = 1 ∣ x ) ​ g(x) = p(s =1|x)​ g(x)=p(s=1∣x)​
    • 因此,我们需要一些定理来证明如何将非传统的分类器转化为传统的分类器
  4. Lemma:假设SCAR条件成立,那么 p ( y = 1 ∣ x ) = p ( s = 1 ∣ x ) c ​ p(y = 1|x) = \frac{p(s=1|x)}{c}​ p(y=1∣x)=cp(s=1∣x)​​,其中 c = p ( s = 1 ∣ y = 1 ) ​ c = p(s=1|y=1)​ c=p(s=1∣y=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=1∣x,y=1)=p(s=1∣y=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=1∣y=1)g(x)</

Analysis of Learning from Positive and Unlabeled Data PU learning论文阅读。 本文从基本的分类损失出发,推导了PU的分类问题其实就是Cost-sensitive classification的形式,同时,通过实验证明了如果使用凸函数作为loss function,例如hinge loss会导致错误的分类边界(有bias),因此需要使用例如ramp loss之类的凹函数。同时,论文还对先验π\piπ存在偏差的情况进行了讨论,说明了如果样本中... 阅读详情

相关推荐

[paper]UPSET and ANGRI:Breaking High Performance Image Classifiers

提出了两种攻击算法,第一种是针对输出类别生成通用扰动(定向攻击),第二种针对不同图像生成特定扰动(定向攻击)。 UPSET:Universal Perturbations for Steering to Exact Targets UPSET网络为针对原始图像生成具有通用扰动的对抗样本,且可以使模型误分类为指定的目标类别。 xxx:原始图像 ttt :目标类别 x^\hat{x}x^ :对抗样本 对抗扰动:rj,j∈1,2,⋯,nr_j,j∈{1,2,⋯,n}rj​,j∈1,2,⋯,n即生成第jjj个目

weixin_43150428的博客 914

pu简单使用pu简单使用

pu简单使用

深度学习入门:使用CMSIS-NN在微控制器上部署模型的完整指南与Python Jupyter实践

CMSIS-NN是ARM为Cortex-M系列微控制器设计的神经网络库。它旨在提供一套高效、轻量级的神经网络API,使得开发者可以在资源受限的微控制器上运行深度学习模型。CMSIS-NN优化了各种常见的神经网络层,如卷积层、全连接层等,确保它们在微控制器上的运行效率。# 定义模型])# 编译模型# 训练模型这样,我们就得到了一个简单的手写数字识别模型。注意:为了简洁和清晰,本文中的代码可能不是最优的或最完整的实现。为了获得完整的项目和更多的优化技巧,请下载完整项目。

m0_57781768的博客 5882

Tesseract OCR 字库训练教程:提高识别率进阶版

通过 Tesseract 字库训练,你可以提高 OCR 对特定文本或字体的识别能力。训练过程包括准备训练数据、生成标签文件、运行训练工具,以及将训练结果集成到实际项目中。虽然训练过程需要一些时间和精力,但对于需要高精度文本识别的场景来说,字库训练是非常有效的提升识别率的方法。

小蜗牛的珍贵百宝箱 1865

Amesim应用篇-电芯等效电路模型标定

为了使计算模型更加准确,在有电芯实验测试数据的情况下,依据现有的实验数据对Amesim中的电池等效电路模型进行标定。标定的目的是为了获得更加符合项目实际情况的电芯等效电路模型,标定完的电芯可以用于搭建PACK模型,也可以用于其他虚拟实验。本文以充电标定为例,进行介绍。放电标定与充电一致。

2201_75375391的博客 1213

【系统架构设计师】预测试卷十:综合知识(75道选择题)

本文包含75道选择题,覆盖计算机系统、操作系统、网络、数据库、软件工程等核心知识域,其中系统架构设计与评估占比最高(19题)。题目难度稍高,注重灵活应用,题干全新且不与前8套重复。部分典型题目解析包括:计算机性能比较(CPU时间公式TLB/页表机制)、Cache写策略、流水线分支惩罚、管程条件变量、LRU近似算法、自旋锁适用场景、TCP字节流特性、Anycast应用、MVCC机制、分布式事务选型等。答案详解强调易错点,如性能比较需综合计算、TLB缺失不等于缺页、

数据知道的博客 476

9篇5章2节:NHIS 数据库的常规数据下载

文章概述了 NHIS-Teen、NHPI NHIS 等补充性调查以及 2024 年 NHIS 数据资源的具体内容,包括问卷材料、技术文档和数据模块,为研究者高效、规范地使用 NHIS 数据提供参考框架。

MD Code 1439

AndroidKiller之APK 编译失败,无法继续下一步签名【BUG解决】【App反向解析】

文章目录项目场景:问题描述原因分析:解决方案:BUG解决 项目场景: AndroidKiller: 在反向解析APP包时报错:APK 编译失败,无法继续下一步签名。 网上很多方法都是无效的哈,我追究原因发现,这个bug的出现大部分情况都是因为Apktool的问题。 此方法:百分之百解决此bug! 错误如下: 问题描述 APK 编译失败,无法继续下一步签名! 原因分析: Apktool版本不适配的问题,现在的技术更新换代太快,我们安装AndroidKiller的时候,有时候不是官方渠道的话,他的版本是非常

一键难忘的博客 2万+

python爬虫项目(六十八):爬取电商平台用户购买历史数据,分析消费行为

本文详细介绍了如何爬取电商平台用户购买历史数据,并分析其消费行为。通过爬虫技术、数据存储、分析和可视化等步骤,可以深入了解消费者的行为特征。未来,随着数据分析技术的不断发展,利用人工智能和机器学习方法对消费行为进行更深层次的分析,将成为电商平台提升竞争力的重要手段。

斌擎科技 2767

ArcGIS Pro 3.4 二次开发 - 布局

本文介绍了在ArcGIS Pro SDK 3.4和.NET 8环境下操作布局工程项的相关方法。主要内容包括:引用布局工程项和关联布局,在新视图中打开或激活已有布局视图,引用活动布局视图,导入/移除布局工程项,创建基本布局或带参考线的自定义布局,修改布局页面尺寸,以及创建圆形图形元素等操作。重点演示了如何通过CIM(Core Infrastructure Model)进行高级布局配置,并详细说明了圆形图形元素的创建过程,包括几何构建、符号设置和图形生成。所有涉及UI线程的操作都遵循ArcGIS Pro SDK

Winemonk 794

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

上一篇: 日志分析
下一篇: Analysis of Learning from Positive and Unlabeled Data
zealscott
博客等级 码龄9年 327粉丝 196原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值