什么是co-training
首先先认识下什么是co-training:
在计算机视觉中,我们都知道训练一个分类器的时候,我们需要两类样本,分别是正样本和负样本。监督训练又可以成为off-line training,就是提前准备好已经标注过样本,然后对分类器进行训练,最后将训练好的分类器对需要进行分类的东西进行分类。而另一个是online training. 刚开始的时候我们用一些标注过的样本对分类器进行初始化训练。这样分类器就有一定的效果,然后在这之后对未标注的样本进行分类,之后利用相关的方法识别出正样本和负样本,然后再过程中不断改进分类器,从这个过程中不断提高分类器的分类效果。
co-training最早是有Blum he Mitchell在1998年提出的Combining labeled and unlabeled data with co-training
早期主要用于1:Web-page classification (Page text\ Hyperlink text))
2:bilmetric recognition systems(appearance and voice)
在物体检测中,co-training主要应用于监控中车辆检测和移动物体的识别。
Co-training是目前很流行的一种半指导机器学习的方法,它的基本思想是:构造两个不同的分类器,利用小规模的标注语料,对大规模的未标注语料进行标注的方法.Co-training方法最大的优点是不用人工干涉,能够从未标注的语料中自动学习到知识。Co-training方法,是有指导和无指导机器学习两者的一个折中办法,它的原则是:在不牺牲性能的前提下,尽量多的使用未带标数据,它从一个小规模的带标的语料库开始,同时使用大规模的未带标语料来进行学习。Co-training算法应用于属性存在天然可分割性的数据集,即数据集的某些属性能够在某种角度上描绘数据的某种特征,而这些属性不是唯一的,有许多不同的属性能够将同样的特征从不同的角度描绘出来,这样的数据属性集就具有天然可分割性,忽视了数据集特性的可分割性.Co-training算法则利用两个不同学习器在数据集的/分割的特性集上独立学习,并结合两个学习器的学习结果作出最后学习结论,这样来达到降低错误率的目的.
Co-training的描述如下:
- 从两个view是看一个分类问题;
- 根据不同的角度分别建立一个模型,在标注集下训练每个模型;
- 标注未标注的句子,然后找出每个模型都比较高自信度标注的句子;
- 以不同的方式挑出这些高自信度的句子;
- 把这些句子加入到训练集中,迭代这个过程,直到未标注数据耗尽;
什么是co-training的更多相关文章
- hdu 4946 2014 Multi-University Training Contest 8
Area of Mushroom Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- 2016 Multi-University Training Contests
2016 Multi-University Training Contest 1 2016 Multi-University Training Contest 2 2016 Multi-Univers ...
- 2016 Multi-University Training Contest 2 D. Differencia
Differencia Time Limit: 10000/10000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tot ...
- 2016 Multi-University Training Contest 1 G. Rigid Frameworks
Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- ACM: Gym 101047K Training with Phuket's larvae - 思维题
Gym 101047K Training with Phuket's larvae Time Limit:2000MS Memory Limit:65536KB 64bit IO F ...
- The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C
Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...
- 2012 Multi-University Training Contest 9 / hdu4389
2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...
- 2014 Multi-University Training Contest 9#11
2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others) ...
- 2014 Multi-University Training Contest 9#6
2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...
- 2016 Multi-University Training Contest 1
8/11 2016 Multi-University Training Contest 1 官方题解 老年选手历险记 最小生成树+线性期望 A Abandoned country(BH) 题意: 1. ...
随机推荐
- .NET 反射的使用
1.根据类名获取类实例 string className = "Company.BigProgram.BLL.TestClass"; Type type = Type.GetTyp ...
- Nde模块篇
/*模块分为两种:原生模块和文件模块.原生模块即Node.js API提供的原生模块,原生模块在启动时已经被加载.文件模块即为动态加载模块,加载文件模块的工作主要由原生模块 module 来实现和完成 ...
- SeekableByteChannel 和 FileChannel
Java7中引入了SeekableByteChannel接口,允许我们定位到文件的任意位置进行读写.注意这里的写,不是新增式的插入,而是覆盖,当然在文件末尾的写,是新增. java.nio.chann ...
- 烂泥:KVM虚拟机windows系统增加硬盘
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 前一篇文章介绍了有关linux系统添加硬盘的方法,这次我们来介绍有关windows系统添加的相关步骤. 其实linux和windows添加的硬盘的方法都 ...
- grub条目示例
https://wiki.archlinux.org/index.php/GRUB#Install_to_disk /boot/grub/menu.lst default=0 timeout=5 ti ...
- Mac SVN ignore 等相关
OSX自带了SVN命令行,通过终端就可以使用了. 一.SVN ignore Mac的SVN想把node_modules 忽略,即svn status时(svn st缩写)不显示node_nodules ...
- Hadoop with tool interface
Often Hadoop jobsare executed through a command line. Therefore, each Hadoop job has to support read ...
- MFC双缓冲绘图实例
本人之前一直了解双缓冲绘图的基本原理,但是在研究很久之后才大概知道具体的使用过程,本文将详细介绍本人在实际项目中使用双缓冲绘图的案例. 实现功能:主界面显示某张包含人脸的图片,通过dlib detec ...
- 使用LVS实现负载平衡之Windows Server 2008配置
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一.承载于 II ...
- java 21 - 8 复制文本文件的5种方式
需求:复制文本文件 分析: 由于文本文件我们用记事本打开后可以读懂,所以使用字符流. 而字符流有5种复制的方式: 首先写main方法 public static void main(String[] ...