【每周一文】Learning Classifiers from Only Positive and Unlabeled Data(2008)_下一步的博客-程序员宅基地_learning classifiers from only positive and unlabe

技术标签: 机器学习  每周一文  PULearning  ML  

概述

本文也是用于求解PULearning问题,并且提出在样本满足一定分布情况下,根据正样本和未标记样本作为负样本训练出来的分类模型,预测出来的结果和该样本属于正样本的概率存在一个固定常数系数。
根据该假设提出两种模型训练思路,能够得到最好的效果。

问题求解

对于给定的样本数据引入第三个随机变量S表示该样本是否被标记过,则p(x,y,s)满足一定的概率分布。
变量含义x为样本特征数据;y为样本标签,y=1表示为正样本;s=1表示该样本是否是标记过的样本,如果s=1则该样本被标记过,此时y肯定为1.
问题转变为求解p(y=1|x,s=0)的概率。
根据以上随机变量定义,则有:
p(s=1| x,y=0)=0,如果某样本为负样本并且该样本标记为1,和假设矛盾,概率为0;即只有正样本被标记。
此外还假设正样本选取满足一个概率分布,和特征没有关系,即p(s=1|x,y=1)=p(s=1|y=1),即“selected completely at random”这里我们将此值即为c=p(s=1|y=1)

原理

根据以上假设样本数据是按照某分布p(x,s,y)生成的,并且满足以上两个条件。
假设g(x)是对数据s=1和s=0得到的分类器,目标转换为寻找真实分类器f(x)和g(x)的关系。

p(y=1|x) = p(s=1|x)/c
1. 即f(x)和g(x)只相差一个常数值。
2. 简单推导P(y=1|x)=p(y=1^s=1|x) —前提假设
=p(y=1|x)p(s=1|y=1,x) —-条件概率
=p(y=1|x)p(s=1|y=1) ——前提假设2

常数C的估计算法

根据上述定理,问题转换为求解常数c,有几个策略可以用于估计c
一般思路是通过交叉验证获取,假设交叉验证集合为V,其中正样本集合为P。

策略一: e1=1nxPg(x) ,如果x为正样本此时g(x)=p(s=1|y=1)
策略二: e2=xPg(x)xVg(x)
策略三: e3=maxxVg(x)
在实际中策略一比较好用并且效果较好,相对于三偏差较小。

样本加权

根据上述定理可以认为样本的权重是不一样的,对某个估计量进行估计时转换为对带权重的样本进行预估。

可以推导得到如下结论
p(y=1|x,s=1)=1
p(y=1|x,s=0)=1ccp(s=1|x)1p(s=1|x)
此时E[h(x,y)]转换为

E[h]=1m(x,s=1h(x,1)+x,s=0(w(x)h(x,1)+(1w(x)h(x,0))))

就是说将正样本看出权重为1的样本;未标记的样本看出两份数据一份是权重为w(x)且标签为1和权重为1-w的且标签为0.

其中w(x)=p(y=1|x,s=0)

此时根据传统分类器g(x)就可以将每个样本加上一个权重,此时可以用带样本权重的分类器进行进一步的分类,可以取得更好的效果。

进一步优化

由于

c=p(s=1|y=1)=p(y=1|s=1)p(s=1)p(y=1)...=p(s=1)p(y=1)

其中p(s=1)可以很容易的估计,问题转换为p(y=1),即某个样本属于正例的先验概率。
估计方法有:
方法1:根据上述介绍取h(x,y)=y此时有
E[y]=p(y=1)=1m(x,s=11+x,s=0(w(x)1+(1w(x)0)))=1m(n+x,s=0w(x))

方法2:2014年一篇论文提出将p(y=1)类别先验通过部分匹配的策略进行求解,部分匹配采用Pearson离散度进行求解,并且证明该文提出的方法只是该方法的一个特例。
方法3:该优化只要是针对模型选择上,SVM是一个未经校准的模型,转换为概率时一般通过isotonic 回归进行校准。但是合页损失函数会导致误分类,因此提出采用非凸损失函数进行模型训练,损失函数采用ramp loss
l(z)=12max(0,min(2,1z))
实验证明效果较好。
并且采用类似算法最终误差能够保证最大误差倍数为 22

结论

该文根据两个前提假设条件,提出了一个非常漂亮的结论。根据该结论可以很容易的构造PULearning算法,并且还有理论保证。

注其他两篇PULearning论文,偏理论证明。
1. Class Prior Estimation from positive and Unlabelled Data(2014)
2. Analysis of Learning from Positive and Unlabeled Data(2016)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/fangqingan_java/article/details/50918591

智能推荐

【Python55--爬虫:代理】_angqiang4680的博客-程序员宅基地

一、反爬虫之隐藏1、网站检查访问的是正常用户还是程序,关键在于User-Agent1)、第一种方法:采用header --修改header(两种方法):  --> 在Request之前通过headers参数修改  --> 在Request之后通过Request.add_header()修改import urllib.requestimpo...

9、common.js源码(非压缩版)、require.js源码(非压缩版) 、sea.js源码(非压缩版)、el-tag源码_固始县钱成_WEB前端工程师的博客-程序员宅基地_cmd require 源码

一、common.js源码(非压缩版)// // CommonJS Client-side Implementation// // Author: James Brumond <[email protected]> (http://www.jbrumond.me)// GitHub: https://www.github.com/UmbraEngineering/commonjs-preprocessor// (function(window) { var head .

docker 部署java_适用于Java开发人员的Docker:在Docker上部署_danpob13624的博客-程序员宅基地

docker 部署java 本文是我们学院课程中名为“ 面向Java开发人员的Docker教程 ”的一部分。 在本课程中,我们提供了一系列教程,以便您可以开发自己的基于Docker的应用程序。 我们涵盖了广泛的主题,从通过命令行的Docker到开发,测试,部署和持续集成。 通过我们简单易懂的教程,您将能够在最短的时间内启动并运行自己的项目。 在这里查看 ! 目录 1.简介 2...

ACM_大牛总结的线段树专辑_知足--常乐的博客-程序员宅基地

【完全版】线段树很早前写的那篇线段树专辑至今一直是本博客阅读点击量最大的一片文章,当时觉得挺自豪的,还去pku打广告,但是现在我自己都不太好意思去看那篇文章了,觉得当时的代码风格实在是太丑了,很多线段树的初学者可能就是看着这篇文章来练习的,如果不小心被我培养出了这么糟糕的风格,实在是过意不去,正好过几天又要给集训队讲解线段树,所以决定把这些题目重新写一遍,顺便把近年我接触到的一些新题更新上去~;并

SR-LSTM: State Refinement for LSTM towards Pedestrian Trajectory Prediction_放牛娃子的博客-程序员宅基地

SR-LSTM: State Refinement for LSTM towards Pedestrian Trajectory Prediction在预测轨迹时,SR-LSTM充分考虑了场景中其他个体的行为对当前行为的影响。在ETH和UCY数据集上测试,达到了state-of-the-art的结果。In crowd scenarios, reliable trajectory predi...

RAII技术与智能指针(超详细)_暮光mg的博客-程序员宅基地_raii

RAII技术与智能指针RAII技术什么是RAII技术RAII,即Resource Acquisition Is Initialization,“资源获取就是初始化”,是C++语言的一种管理资源、避免泄漏的一种方法。是一种资源管理技术,利用对象的生命周期管理程序的资源(如内存,文件句柄,锁等)的技术,因为对象在离开作用域的时候,会自动调用析构函数。实现原理利用对象的生命周期管理资源,在对象离开作用域时,会自动调用析构函数。特征在构造时初始化资源,或叫做托管资源。在析构时释放资源不允许赋值

随便推点

css3 数据图形之——饼状图的实现(圆弧的终点坐标)_qq_34464415的博客-程序员宅基地_css3圆饼图

css3 数据图形之——饼状图的实现(圆弧的终点坐标)css3 数据图形之——饼状图的实现大家知道web页的数据图表基本上都是由canvas或svg配合javaScript来实现。图形表大致有 饼图、雷达图、对比图、折线图、条形图、曲线图、面积图、柱形图、圆环图、气泡图在这之前,我们先了解一下用css制作图形的几种方法 。clip-path 裁剪路径border三角形利用line...

mac appstore磁盘空间不足_Mac中毒怎么办-5招教你百”毒“不侵_weixin_39525313的博客-程序员宅基地

Mac电脑永不中毒!曾几何时,高冷的Mac用户淡淡的嘲讽了装了**安全卫士、安全浏览器及***杀毒的低贱的Windows用户。Mac OS似乎一直自带光环,贴着稳定、安全的标签。然而Mac OS真的永不中毒吗?事实真相似乎并不那么美好。Mac OS会不会中毒当然会。首先要承认的是,Mac本身的沙箱机制及其他权限管理机制,确实能够有效的隔离威胁,但是并不是能完全做到。早前,因为绝大多数的用户使用Wi...

IDEA指定MAVEN项目中的JDK编译版本_readwa的博客-程序员宅基地_idea指定编译jdk

在idea,新建建立或者导入的MAVEN项目,编译时不指定编译版本,会自动编程成jdk1.5版本的,不利于项目的开发,百度一番,未能完美解决问题,有两个可借鉴的方式,比较粗暴。

vue-router 路由传参方式/缓存路由/路由跳转_探鱼不是鱼的博客-程序员宅基地

下载下载包yarn add vue-routerviews组件About和Home组件<template> <h1>About</h1></template><script>export default { name: 'About',};</script><style></style>src下定义router文件夹// 因为要安装到Vue上面import Vu

mac 安装svn 之弯曲历程_weixin_34364071的博客-程序员宅基地

2019独角兽企业重金招聘Python工程师标准>>> ...

推荐文章

热门文章

相关标签