未标记样本
在现实任务中,会出现一部分样本被标记而另一部分样本未被标记的情况,那么如何利用好未标记样本数据呢?
主动学习:先用标记好的样本数据来进行训练,然后利用训练出的学习器找出未标记样本中对性能改善最大的数据来询问专家,如此只需要专家标记比较少的数据就可以得到比较强的学习器,这种方法被称为“主动学习”,此方法引入了额外的专家知识,还需要外部的介入来辅助学习。
显然,主动学习依旧需要依赖外部来进行,本质上是一种监督学习。让学习不依赖外部交互,自动地利用未标记样本数据来提升学习性能,这才是监督学习,即训练集同时包含了未标记样本和标记样本。
事实上,未标记样本虽然没有直接包含标记信息,但如果它们与有标记样本是从同样的数据源独立同分布采样而来,则它们所包含的关于数据分布的信息对建立模型有很大的益处。示例:若仅基于图中的一个正例和反例,则由于待判别样本恰位于两者正中间,大体上只能随机猜测;若能观察到图中的为标记样本,则将很有把握的判别为正例。
聚类假设:假设数据存在簇结构,同一个簇的样本属于同一个类别。
流形假设:假设数据分布在一个流形结构上,邻近的样本拥有相似的输出值。邻近程度常用相似程度来刻画,因此,流形假设可以看做聚类假设的推广,但流形假设对输出值没有限制,因此适用范围更广。
事实上,无论是聚类假设还是流形假设,其本质都是相似的样本拥有相似的输出 这个基本假设。
半监督学习进一步划分为纯半监督学习和直推学习,二者的区别:纯半监督学习假定训练数据中的未标记样本并非待预测的数据,而直推学习假定学习过程中未标记样本是待预测数据,学习目的就是在这些未标记样本上获得最优的泛化性能。
生成式方法
生成式方法是直接基于生成式模型的方法,此类方法假设所有数据都是由同一个潜在模型产生的。此假设使得我们能通过潜在模型的参数将未标记样本数据与学习目的关联起来,而未标记数据的标记则可看作模型的确实参数。
此类方法假定样本数据服从一个潜在的分布,因此需要充分可靠的先验知识,先假定总体是一个高斯混合分布,即由多个高斯分布组合形成,从而一个高斯分布就代表一个类簇。其概率密度函数如下:
假设所有样本独立同分布,且都是由一个高斯混合模型生成的,用极大似然法来估计高斯混合模型的参数, 的对数似然是:
式(13.3)是样本x由第i个高斯混合成分生成的后验概率。
显然,式(13.4)基于有标记数据的有监督项和基于未标记数据的无监督项,高斯混合模型参数估计可用EM算法进行求解,迭代更新式如下:基于半监督的高斯混合模型有机地整合了贝叶斯分类器与高斯混合聚类的核心思想,有效地利用了未标记样本数据隐含的分布信息,从而使得参数的估计更加准确。
以上过程不断迭代直至收敛,即可获得模型参数,然后由式(13.3)和式(13.2)就能对样本进行分类。
半监督SVM
半监督支持向量机(SVM)是支持向量机在半监督学习上的推广。监督学习中的SVM试图寻找一个划分超平面,使得两侧支持向量机之间的间隔最大,而对于半监督学习,S3VM则考虑超平面需要穿过数据低密度的区域。
半监督支持向量机中最具代表性的是TSVM,是针对而分类问题的学习方法。其核心思想是尝试为未标记样本找到合使的标记指派,使得超平面划分后的间隔最大化。
目标:
算法流程:
循环中止条件为 ,循环中逐渐增大来提高未标记样本对优化目标的影响。对于上图6—10行,如果存在一对未标记样本,其标记指派不同,且对应的松弛变量满足之和大于2,则意味着其标记指派很可能是错误的,需要对二者进行交换后重新求解式,如此每轮迭代后均可使得目标函数值下降。
图半监督学习
基本概念:给定一个数据集可以映射为一个图,样本作点,强度作边。
迭代式标记传播算法:
基于分歧的方法
与生成式方法和半监督SVM、图半监督学习等基于单学习器利用未标记数据不同,基于分歧的方法使用多学习器,而学习器之间的“分歧”对未标记数据的利用至关重要。其代表方法是协同训练,针对多视图数据。关于视图,引入两个重要性质:
相容性:即使用单个视图数据训练出的学习器的输出空间是一致的。例如都是{好,坏}、{+1,-1}等。
互补性:即不同视图所提供的信息是互补/相辅相成的,实质上这里体现的就是集成学习的思想。
协同训练的基本思想:基于有标记样本数据在每个视图上都训练一个初始分类器,然后让每个分类器去挑选分类置信度最高的样本并赋予标记,并将带有伪标记的样本数据给另一个分类器去学习。
算法流程:
基于分歧的方法只需要采用适合的基学习器,就能减少受到模型假设、损失函数非凸性和数据规模问题带来的影响。
半监督聚类
聚类是一种典型的无监督学习方法,然而在现实聚类任务中我们往往能获得一些额外的监督信息,于是可以通过半监督聚类来利用监督信息以活得更好的聚类效果。
监督信息的两种类型:
1、勿连约束:样本必定不属于同一个簇,监督信息是少量的有标记样本;
2、必连约束:样本必定属于同一个簇。
约束k均值算法(利用第一类监督信息的代表)
该算法与K-mean算法的区别在于给定必连关系集合和勿连关系集合,在聚类过程种确保必连关系集合和勿连关系集合的约束得到满足,否则返回错误。