Alex_McAvoy

想要成为渔夫的猎手

半监督支持向量机 S3VM

【概述】

半监督支持向量机(Semi-Supervised Support Vector Machine,S3VM)支持向量机在半监督学习上的推广,在不考虑未标记样本时,支持向量机试图找到最大间隔划分超平面,而在考虑未标记样本后,S3VM 试图找到能将两类有标记样本分开,且穿过数据低密度区域的划分超平面

如图下图所示,这里的基本假设是低密度分隔(Low-density Separation),显然,这是聚类假设在考虑线性超平面划分后的推广

在一系列半监督支持向量机中,最著名的是直推支持向量机(Transductive Support Vector Machine,TSVM),与标准 SVM 一样,TSVM 也是针对二分类问题的学习方法

【TSVM】

模型

TSVM 试图考虑对未标记样本进行各种可能的标记指派(Label assignment),即尝试将每个未标记样本分别作为正例或反例,然后在所有这些结果中,寻求一个在所有样本上间隔最大化的划分超平面,一旦划分超平面得以确定,未标记样本的最终标记指派就是其预测结果

对于给定有标记样本集 $D_l=\{(\mathbf{x}_1,y_1),(\mathbf{x}_2,y_2),\cdots,(\mathbf{x}_l,y_l)\}$ 和未标记样本集 $D_u=\{\mathbf{x}_{l+1},\mathbf{x}_{l+2},\cdots,\mathbf{x}_{l+u}\}$,其中 $l$ 和 $u$ 满足 $l\ll u,l+u=n$,标记 $y_i\in \{-1,1\}$,TSVM 的学习目标是为 $D_u$ 中的样本给出预测标记 $\hat{\mathbf{y}}=(\hat{y}_{l+1},\hat{y}_{l+2},\cdots,\hat{y}_{l+u}),\hat{y}_i\in\{-1,1\}$,使得:

其中,$(\mathbf{w},b)$ 确定了一个划分超平面,$\boldsymbol{\xi}$ 为松弛向量,$\xi_i,i=1,2,\cdots,l$ 对应于有标记样本,$\xi_i,i=l+1,l+2,\cdots,n$ 对应于未标记样本,$C_l$ 与 $C_u$ 是用于平衡模型复杂度、有标记样本与无标记样本重要程度的折中参数

显然,尝试未标记样本的各种标记指派是一个穷举过程,当且仅当未标记样本很少时才有可能直接求解,因此必须要考虑更高效的优化策略

学习方法

TSVM 采用局部搜索来迭代地寻找上式的近似解

首先,利用有标记样本学得一个 SVM,即忽略上式中关于 $D_u$ 与 $\hat{\mathbf{y}}$ 的项及约束

然后,利用这个 SVM 对未标记数据进行标记指派,即将 SVM 预测的结果作为伪标记(Pseudo-label),赋予给未标记样本

此时,$\hat{\mathbf{y}}$ 变为已知,将其带回上式中,即可得到一个标准 SVM 问题,于是可求解出新的划分超平面和松弛向量

需要注意的是,此时未标记样本的伪标记很可能不准确,因此 $C_u$ 要设置为比 $C_l$ 更小的值,使有标记样本所起作用更大

进一步,TSVM 找出两个标记指派为异类且很可能发生错误的未标记样本,交换它们的标记,再重新基于上式求解出更新后的划分超平面和松弛向量,再找出两个标记指派为异类且很可能发生错误的未标记样本,逐渐增大 $C_u$ 以提高未标记样本对优化目标的影响,重复这个过程,直到 $C_u=C_l$ 为止

此时,求解得到的 SVM 不仅给未标记样本提供了标记,还能对训练过程中未见的示例进行预测

上述的算法流程如下图所示

类别不平衡问题

在对未标记样本进行标记指派及调整的过程中,有可能出现类别不平衡问题,即某类的样本远多于另一类,这将对SVM 的训练造成困扰

为了减轻类别不平衡性所造成的不利影响,可对上述的学习过程进行改进,即将优化目标中的 $C_u$ 项拆为 $C_u^+$ 与 $C_u^-$ 两项,分别对应于基于伪标记而当作正样本、负样本使用的未标记样本,并在初始化时,令:

其中,$u_+$ 与 $u_-$ 是基于伪标记而当作正样本、负样本使用的未标记样本数

感谢您对我的支持,让我继续努力分享有用的技术与知识点!