在实际生活中,常常会出现一部分样本有标记和较多样本无标记的情形。如何利用未标记样本数据呢?
主动学习:从未标记样本中挑选不确定性高或分类置信度低的样本来咨询专家进行打标。最后使用扩充后的训练集重新训练学习器,这样便能大幅度降低标记成本,这便是主动学习
,其目标是使用尽量少的,有价值的查询
来获得更好的性能。
显然,主动学习需要与外界进行交互,其本质仍然属于一种监督学习。事实上,无标记样本通标记样本都是从同样的数据源独立同分布采样得来,他们所包含的关于数据分布的信息对建立模型将大有裨益。
让学习不依赖外界交互、自动地利用未标记样本来提升学习性能,就是半监督学习
。即训练集同时包含有标记样本数据和未标记样本数据。
聚类假设:假设数据存在簇结构,同一个簇的样本属于同一个类别。
流形假设:假设数据分布在一个流形结构上,邻近的样本你拥有相似的输出值。邻近
程度常用相似程度来刻画,因此,流形假设可以看做聚类假设的推广,但流形假设对输出值没有限制,因此适用范围更广。
事实上,聚类假设和流形假设其本质都是相似的样本有相似的输出
。
半监督学习可进一步划分为纯半监督学习
和直推学习
,两者的区别在于:纯半监督学习假定训练数据中的未标记样本并非待预测的数据,而直推学习假定学习过程中未标记样本恰是待预测数据,学习的目的就是在这些未标记样本上获得最优泛化性能。
生成式方法是直接基于生成式模型的方法。其假设所有数据艘是由同一个潜在模型“生成”的,未标记的可看做模型的缺失参数,通常可用EM算法进行极大似然估计求解。此类方法的区别主要在于生成式模型的假设。
此类方法假定样本数据服从一个潜在的分布,因此需要充分可靠的先验知识,先假定总体是一个高斯混合分布,即由多个高斯分布组合形成,从而一个高斯分布就代表一个类簇。其概率密度函数如下:
不失一般性,假设类簇与真实类别按照顺序一一对应,即第i个类簇与第i个高斯混合成分。
主要任务:估计出各个高斯混合成分的参数以及混合系数,不同的是:对于有标记样本,不再是可能属于每一个类簇,而是只能属于真实类标对应的特定类簇。
基于半监督的高斯混合模型有机地整合了贝叶斯分类器与高斯混合聚类的核心思想,有小弟利用率未标记样本数据隐含的分布信息,从而使参数的估计更加准确。
EM算法: 首先对各个高斯混合成分的参数及混合系数进行随机初始化,计算出各个PM ;在最大化似然函数 (即LL(D)分别对α、u和∑求偏导 ) ,对参数进行迭代更新。
以上过程不断迭代直至收敛,对于带预测样本x,便可向贝叶斯分类器那样计算出样本属于每个类簇的后验概率,接着找出概率最大的即可。
此类方法十分依赖于对潜在数据分布的假设,即假设的分布要能和真实的分布相吻合。否则利用未标记数据反倒会降低泛华性能。
半监督支持向量机(Semi-Supervised Support Vector Machine)是支持向量机在半监督学习上的推广,在不考虑未标记样本是,支持向量机试图找到最大间隔划分超平面,而在考虑未标记样本后S3VM试图找到能将两类有标记样本分尅,且穿过数据低密度区域的划分超平面。这里的基本假设是**“低密度分隔”**
TSVM(Transductive Support Vector Machine)是支持向量机最著名的代表。其核心思想:尝试为未标记样本找到合适的标记指派,使得超平面划分后的间隔最大化。
TSVM采用局部搜索的策略来尽心迭代求解,即首先使用有标记样本训练出一个厨师SVM,接着使用该学习器对未标记样本进行打标,这样所有样本都有了标记,并且基于这些有标记的样本重新训练SVM,之后再寻找易出错样本不断进行调整。
TSVM算法:
半监督SVM研究的一个重点是如何设计出高效的优化求解策略。
给定一个数据集,我们可以将其映射为一个图,数据集中每个样本对应于图中一个结点,若连个样本之间的相似度很高,则对应节点之间存在一条边,边的强度正比于样本之间的相似度,
基于分歧的方法通过多个学习器之间的分歧/多样性来利用未标记样本数据,协同训练就是此类方法的重要代表。他最初是针对”多视图“数据设计的,因此也被看做”多视图学习“的代表。
多视图:一个数据对象往往同时拥有多个属性集,每个属性集就构成了一个“视图”。
相容性:即使用单个视图数据训练出的学习器的输出空间是一致的。例如都是{好、坏}、{+1,-1}等。
互补性:即不同视图所提供的信息是互补/相辅相成的,实质上这里提现的就是集成学习的思想。
协同训练正式很好滴利用了多视图数据的**“相容互补性”,其基本思想是:首先基于有标记样本数据在每个视图上都训练一个初始分类器然后让每个分类器去挑选分类置信度高**的样本并赋予标记,并将带有伪标记的样本数据传给另一个分类器去学习,从而共同进步。这个“互相学习、共同进步”的过程不断迭代进行,直到两个分类器都不再发生变化,或者达到预先设定的迭代轮数。
协同训练算法:
基于分歧的方法值需采用合适的基学习器,就能较少受到模型假设,损失函数非凸和数据规模问题的影响。
为了使用此类方法,需能生成具有显著分歧,性能尚可的多个学习器,但当有标记样本很少,尤其是数据不具有多视图是,要做到这一点需要巧妙的设计。
聚类是一种典型的无监督学习任务,然而现实聚类任务中我们往往能够获得一些额外的监督信息,于是可通过半监督聚类(semi-supervised slustering)来利用监督信息以获得更好的聚类效果。借助已有的监督信息辅助聚类的过程。
一般而言,监督信息大致有两种类型:
必连与勿连约束:必连指的是两个样本必须在同一个聚类,勿连则是必不在同一个类簇
**标记信息:**少量的样本带有真实的标记。
约束k均值算法(Constrained k-means)是利用第一类监督信息的代表。
第一种:数据集包含一些必连与勿连关系,另外一种是包含少量带有标记的样本。
对于带有约束关系的k-均值算法,在迭代过程中对每个样本划分类簇是,需要检测当前划分是否满足约束关系,若不满足则会将该样本划分到距离次小对应的类簇中,再继续检测是否满足约束关系,直至完成所有的样本划分。
带有少量标记的k-均值算法,则可以利用这些有标记样本进行类中心的指定,同时在对样本进行划分时,不需要改变这些有标记样本的簇隶属关系
,直接将其划分到对应的类簇即可。