8. 高斯过程和空类别噪音模型

        高斯过程分类器(GPC)的目的是预测后验概率的类标签给出协变向量。在GPC从业者通常调用的标准假设下,这种后验概率不受未标记数据点的影响,不为未标记数据提供任何作用。这与支持向量机(SVM)等基于边缘的方法形成了明显的对比;对于这些方法,未标记的数据会影响决策边界的位置,使其通过低数据密度的区域(见第6章)。在本章中,我们提出了一个标准概率分类模型的扩充,它包含一个空类别。给出了适用于模型类别的概率模型,得到了边缘的概率对应。将该噪声模型与GPC相结合,得到了一种同时具有识别性、半监督性和贝叶斯特性的分类方法。我们的方法结合了集群假设,而不显式地建模数据密度,也不需要专门的内核。

8.1 介绍

        在本章中,我们考虑分类问题的贝叶斯公式,并在贝叶斯框架内提出半监督学习问题的解决方案。

        贝叶斯方法自然被用于生成分类问题的方法。生成方法明确地模拟了类条件密度和,将这些密度与类先验概率p(y= 1)和p(y= 1)结合起来,并利用贝叶斯定理形成后验概率:

                 。

    在未观察到标签的半监督设置中,通过将边缘化,获得对可能性的相应贡献。这产生了的混合密度,作为标准缺失数据问题在贝叶斯公式内容易处理的可能性的贡献。因此,半监督学习很容易适应生成贝叶斯框架。

        生成方法在预测性能方面有众所周知的局限性,然而,最近关于分类的大多数文献都致力于发展判别方法。许多著名的区分分类器例子都是非贝叶斯的,包括支持向量机(SVM)、核化逻辑回归(KLR)和Adaboost(Shawe Taylor和Cristianini,2004)。然而,也有可能在贝叶斯框架内开发判别分类器;特别是高斯过程分类器是与SVM和KLR共享使用核函数在输入空间形成非线性识别边界的判别分类器(O'Hagan,1992)。

        贝叶斯分类判别方法的重点是对后验概率进行建模。幼稚的是,似乎半监督学习并不适用于任何这样的方法,上的边缘化会对可能性产生持续的贡献,因此没有提供有关参数的信息。非贝叶斯方法可以避开这种困难。特别是,非贝叶斯分类器的统计推断涉及到“损失函数”(例如,基于边际的损失函数)的规范以及模型的规范,并且,如本书其他几章所示,损失函数可以被调制以捕获来自未标记数据点的信息。NTS。相关的一点是,非贝叶斯方法不需要对后验概率进行建模,这在损失函数的设计中提供了额外的灵活性。另一方面,贝叶斯方法从后验概率开始,这似乎束缚了设计者的手,使得开发discr变得困难,如果不是不可能的话。我是半监督贝叶斯学习者。

        在这一章中,我们证明了在一个有区别的贝叶斯框架内解决半监督学习问题实际上是可能的。为了激发这一基本思想,首先让我们利用贝叶斯分类器的图形化模型表示,更准确地理解上面提到的天真直觉。首先考虑生成分类器的图形模型表示,如图8.1左面板所示。在此图中,参数化类条件密度。(我们省略了一个表示类先验概率的节点。)矩形(或称“板”)捕获复制。特别地,该图捕获了数据是条件于和独立和相同分布的假设。最后,阴影表示条件作用;因此图8.1中的图形模型捕获了标准的监督学习设置,其中标签被完全观察到。

        

图 8.1 (左)生成模型的图形表示。(右)判别模型的图形表示。

         图8.1的右面板显示了一个鉴别分类器的图形表示。在这种情况下,参数化后验概率(两个图中的含义不同)。图中再次显示了标准的监督学习设置。

        现在让我们来考虑半监督学习问题。在半监督学习中,数据被分成一个标记为的子集和一个未标记为的子集。这可以在图8.2所示的图形模型表示中捕获。考虑左面板中显示的生成案例模型。使用用于评估图形模型中条件独立性的 D-分离标准(Pearl,1988),我们发现参数和类标签依赖于它们的共同后代(图中阴影部分)。这个图形主题通常被称为“V型结构”。当两个节点指向一个共同的后代时,只有当后代不被注意时它们(必然)是独立的。无论是观察到还是观察不到,这都是正确的。因此,标记和未标记的数据点都会影响的贝叶斯后验分布。


图 8.2 生成框架(左)和判别框架(右)中半监督数据的图形模型。

        将其与识别模型中的情况进行对比(图8.2的右面板)。在这种情况下,对于未标记的数据,d-分离准则表明独立于。当不被观测到时,的观测值对的后验分布没有影响。

        在本章的其余部分中,我们将展示如何增强判别模型,使其能够处理未标记的数据。

8.1.1 增强模型

        在图8.2(右面板)中,我们看到了在识别方法中,未标记的数据点如何不会影响的后面,从而影响决策边界的位置。这是因为当标签未被观察时,未标记的点和参数会被分离(相互独立)。为了恢复依赖性,我们需要增加模型。这可以通过引入一个额外的变量来实现,该变量是的子变量,并且始终被观察到。如图8.3所示,这打破了和的-分离,并允许概率依赖性在这些变量之间流动,即使未被观察到。

        

图 8.3 增强判别模型。即使在未观察到 的情况下, 也不再与 进行d-分离,因为它们具有观察到的共同后代。注意,对于标记的示例,参数通过 的观察与指标变量 进行 -分离。

        作为这种增广模型的一个简单(和幼稚)示例,让成为一个标识数据点是否被标记的指标变量;即,如果第个点被标记,则被视为0;如果该点未被标记,则被视为1。当然,本身总是被观察到的。现在,通过允许标记点的概率依赖于其标签,即通过模型概率的特定规范,我们可以重新引入参数对未标记数据的依赖性。

        当然,这种简单的装置并不能解决半监督学习问题。事实上,如果我们没有理由相信数据点未标记的概率在这两个类中是不同的,即,如果,那么我们有,与有效地解耦,再次将与分离。

        另一方面,没有必要把自己局限于二进制指标变量;我们可以更聪明地进行扩充。本章的其余部分发展了我们提出的具体扩充。正如将要看到的,我们的建议在精神上类似于转导SVM(见第6章);我们希望将决策边界置于低数据密度的区域。类间区域数据密度较低的假设称为聚类假设(见第1章)。我们将展示一个增强模型如何捕获聚类假设的精神,但不实现一个明确的密度模型。

8.2 噪声模型

        我们的方法是基于一个空类别的概念,一个我们从不观察任何数据的类。空类别可以看作是对SVM中“空白”的概率解释。

        为了简化对零类噪声模型的讨论,我们首先引入了一个潜在的过程变量。这个变量允许我们独立于“过程模型”讨论噪声模型。潜变量允许类成员的概率分解为

                ,

其中 我们把作为噪声模型,作为过程模型。

8.2.1 有序分类模型

        零类噪声模型源自有序分类模型的一般类(Agresti,2002)。在二元分类的具体上下文中,我们将考虑一个包含三个类别的有序分类模型:

        p(y_i|f_i)=\begin{cases}  
\phi(-(f_i+\frac{a}{2} ))    \ \ \ \ \  \ \ \ \ \  \ \ \ \ \  \ \ \ \ for \  \ y_i =-1 \\
\phi(f_i+\frac{a}{2} )-\phi(f_i-\frac{a}{2} )    \ \ \ \ for \  \ y_i = 0 \\
\phi(f_i-\frac{a}{2} )     \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \  for 
 \  \  y_i =1
\end{cases}   ,

其中  是累计高斯分布函数,而且 a 是一个给出 类  的宽度的参数(参见图 8.4)。


图 8.4 有序分类噪声模型。图中显示了 的不同值的 。这里我们假设了三个类别。

        我们也可以用一个 Heaviside 阶跃函数代替累积高斯分布,以一种等价而简单的形式表示这个模型。

                                

并添加一个独立高斯噪声到过程模型:

                                p(y_i|f_i)=
\begin{cases} 
\ \ \ \ \ \  H(-(f_i+1/2)) \ \ \ \ \ \ \ \ \ \  \ \ \ \ \ \ \ \ for \ \ \ \  y_i=-1\\
H(f_i+1/2)-H(f_i -1/2) \ \ \ \  for \ \ \ \ y_i=0 \\
\ \ \ \ \ \ \ \ \ \  \ H(f_i-1/2)  \ \ \ \ \ \ \ \ \ \  \ \ \ \ \ \ \ \ \ for \ \ \ \   y_i = 1
\end{cases} ,

其中,我们将宽度参数标准化为1,假设整个比例也由流程模型处理。

8.2.2 空类别噪声模型

        如前所述,为了在未标记数据点、和参数之间引起统计依赖性,我们可以用附加的变量来增强模型,该子变量指示标签是否丢失。对于空类别噪声模型,我们还施加了

                                ;                                           (8.1)

换句话说,一个数据点不能来自于类  且没有被标记。然后将其他类别的缺失标签的概率参数化为  和 。

        对于存在标签的点,潜过程会像往常一样更新(因为和被分开了)。当数据点的标签缺失时,后验过程通过似然函数

                          

进行更新。当标签丢失时,通过在中进行边缘化,或者使用标准似然,我们可以恢复单个数据点的“有效似然函数”。它有三种形式:  

                            L(f_i)=
\begin{cases} 
\ \ \ \ \ \ \ \ \  \ \ \  \ \ \  H(-(f_i+1/2)) \ \ \ \ \ \ \ \ \  \ \ \  \ \ \  \ \ \ \ \  \ \ \  \ for  \ \ \ \  y_i=-1,z_i=0 \\ 
\gamma_-H(-(f_i+1/2))+\gamma_+H(f_i-1/2) \ \ \ \ for \ \ \ \ \  z_i=1 \\
\ \ \ \ \ \ \ \ \  \ \ \  \ \ \   \ \ \  \ \ \   H(f_i-1/2) \ \ \ \ \ \ \ \ \  \ \ \  \ \ \   \ \ \  \ \ \  \ \ \ for \ \ \ \   y_i=1,z_i=0 
\end{cases}

        (8.1)所施加的约束意味着未标记的数据点永远不会来自类。由于位于标记的类之间,这相当于一个硬假设,即没有数据来自决策边界周围的区域。如果需要的话,我们也可以通过向过程模型中注入噪声来软化这一硬假设。如果我们还假设我们的标记数据仅来自和类,我们将永远不会获得任何关于的数据的证据;因此,我们将此类别称为空类别,而整体模型称为空类别噪声模型(NCNM)。

8.3 空类别的过程模型和效果

        我们所描述的噪声模型可以在一系列优化框架内使用。实际上,如果我们指定的话,将噪声模型看作是对支持向量机边际的概率解释,如果我们指定

                                    

为  规定高斯先验分布,

                                    ,

让有一个多元高斯分布,均值和协方差,

                                    

然后用线性支持向量机算法给出了的最大后验(MAP)解。自然地,可以被“内核化”,模型的映射解就相当于非线性。然而,在这个领域中,上先验分布的含义并不完全清楚,而且考虑上的先验过程通常更方便。众所周知,将支持向量机作为映射解决方案的先验过程是高斯先验过程(有关高斯过程的两个有用评论,请参阅O'Hagan(1992年);Williams(1998年))。在高斯过程中,先验值fi作为一个零均值高斯分布,协方差由核矩阵给出。

8.3.1 高斯过程

        在本章的其余部分中,我们将考虑使用先于的高斯过程。我们考虑的算法是以顺序的方式在后面更新进程,一次只包含一个数据点。因此,考虑给出的一个单变量分布就足够了。

                                 ,

其中均值和方差是协变量的函数。在这种设置中的自然考虑是当合并新的数据点时,我们的似然函数对上的分布的影响。正如我们已经提到的,如果我们观察到,那么参数是从中分离出来的。在这种情况下,可能性对后验过程的影响将类似于二进制分类中产生的影响,因为后验将是阶跃函数和高斯分布的卷积。然而,当数据点的标签丢失时,效果将取决于的均值和方差。如果高斯在空类别区域(即类与类之间的区域)中质量很小,则后面的区域与前面的区域相似。但是,如果高斯在空类别区域有显著质量,则结果可以用两种方式进行松散描述:

1. 如果“跨越可能性”,图8.5(左),那么后质量可以分配到空范畴区域的任何一侧,导致双峰后。后验函数的方差将大于前验函数的方差,这是有效似然函数不是对数凹函数的结果(很容易验证)。

2.如果是“由似然校正的”,图8.5(右),那么后质量将被推入空类别的一侧,后方差将小于前方差。

        请注意,对于先前分布的一部分质量属于空类别区域的所有情况,都会将其推到一边或两边。这两种情况背后的直觉是,在案例1中,不清楚数据点具有什么标签,但很明显,它不应该位于当前的位置(在空类别中)。结果是过程差异增大。在情况2中,数据点被分配一个标签,决策边界被推到该点的一侧,以便根据分配的标签对其进行分类。


图 8.5 两种感兴趣的情况。图表显示了 (长破折号)上的先验分布, (短破折号)时噪声模型的有效似然函数,以及由此产生的fi(实线)后验的示意图。(左)后位是双峰的,并且比前位有更大的方差。(右)后位有一个显性模式,方差比前位低。在这两种情况下,进程都被推离空类别。



图 8.6 样本来自标准高斯过程分类器,它有一个 Probit 噪声模型(左)和一个高斯过程,它有一个零类噪声模型(右)。协变向量最初是从单位平方均匀采样的。零类噪声模型具有降低决策边界区域数据密度的作用。

在图8.6中,我们演示了空类别的影响。我们从具有径向基函数(RBF)核的高斯过程中采样了一个向量。协变量从二维单位平方均匀采样。

        在左侧面板中,点被依概率  分配给类  ,  另外被分配给类  。在右侧的面板中,点被依概率  分配给 类  , 依概率   分配给类 ;所有其他点都假定来自空类别并被删除。请注意,这种对点的拒绝会降低决策边界附近的数据密度。

8.4 后验推理和预测

        从广义上讲,以上讨论的影响与过程模型无关:有效似然总是迫使潜在函数远离零类别。然而,要实现我们的模型,我们必须选择一个特定的流程模型和推理方法。噪声模型的性质意味着我们不太可能找到一个非平凡的过程模型,对于这个过程模型,推论(根据边缘)是可以处理的。因此,我们转向由“假设密度过滤”(ADF)方法所启发的近似值;参见,例如,CSAT'O(2002)。ADF中的思想是通过匹配近似值和真实后验值之间的矩来近似(通常是非高斯)后验值和高斯值。随着后验分布的发展,ADF也得到了扩展,使得每一个近似值都能被重新考虑和改进(Minka,2001年)。

        另一个复杂的问题是,与零类噪声模型相关的“有效似然”不是对数凹面。这意味着当包含一个点时,后验过程的方差会增加。这种情况如图8.5所示(左);图中所示的后验方差大于前验方差。这种方差的增加很难在ADF近似框架内拟合,在我们的实现中,它被忽略了。

        高斯过程框架的一个重要优点是,它可以接受经验贝叶斯处理,通过优化边缘似然性可以获得协方差函数中的超参数。然而,在实践中,如果过程方差以无约束的方式最大化,则可以将空类别的有效宽度驱动为零,从而生成一个等效于标准二进制分类噪声模型的模型。过程差异控制函数的规模。如果允许过程方差以不受约束的方式增长,则空类别区域的有效宽度将变为零,从而消除了未标记数据点的任何影响。为了防止这种情况的发生,我们通过对过程方差施加一个惩罚来规范化(这相当于在这些参数上放置一个指数先验)。惩罚偏好较小的过程方差,从而增加空类别区域的有效宽度。因此,该模型更喜欢一个大的空类别区域。这类似于在支持向量机中最大化边缘。

8.4.1 使用 NCNM 进行预测

        一旦了解了过程模型的参数,我们希望通过边际分布对新的测试点进行预测。对于NCNM,这里出现了一个问题:这个分布的概率为,这是一个标签,在我们的标签或未标签数据中都不存在。这就是的作用变得至关重要的地方。新点的,因此实际上,数据点来自正类的概率由下式给出:

                         。                      (8.2)

的约束使预测正确规范化。因此,为了正确规范化测试数据点的分布,我们必须假设我们已经观察到。

        一个有趣的结果是观察将对过程模型产生影响。这与标准高斯过程设置相反(见Williams(1998)),其中预测分布仅取决于标记的训练数据和测试点的位置。在NCNM中,整个过程模型应在观察后更新。这不是NCNM的一个特殊缺点;它是任何允许未标记数据影响决策边界位置的方法的必然结果——概率框架明确说明了这一结果。然而,在实践中,我们可以忽略这些考虑因素,并根据(8.2)对类标签做出(可能是次优的)预测,而无需更新决策边界的位置。

8.5 结果

        训练数据的稀疏表示对于加快学习过程至关重要。利用信息向量机(IVM)方法,利用连续贪婪法对数据进行稀疏化,并根据信息论准则将数据点置为活动集。这种方法提供了一种近似的全高斯过程分类器,在速度和精度方面与支持向量机相竞争。IVM还可以有效地学习内核超参数,我们在所有的实验中都使用了这个特性。


图 8.7 玩具问题的结果。有400个点,概率为0.1。标记的数据点显示为圆和十字。活动集中的数据点显示为大点。所有其他数据点显示为小点。(左)使用IVM算法学习标记数据。所有标记的点都在活动集中使用。(右)使用NCNM学习标记和未标记数据。活动集合中有100个点。在两个图中,决策边界显示为实线;虚线表示决策边界0.5范围内的轮廓(对于NCNM,这是空类别的边缘)。

        在我们所有的实验中,我们使用一个形式为 

                             

的核函数,其中  为 Kronecker delta 函数。通过在活动集上执行类型II最大似然来学习内核的参数。由于活动集选择导致边缘化的可能性波动,因此不能用于监控收敛性;因此,我们只需在活动集选择和内核参数优化之间迭代15次。噪声模型的参数也可以优化,但请注意,如果我们约束,那么通过将设置为未标记的训练集的比例来最大化可能性。

        我们首先考虑了一个说明性的玩具问题来展示我们模型的能力。我们生成了两类条件密度互锁的二维数据。原始数据集中有400个点。每个点被分配一个概率为0.1的标签,导致37个标记点。首先,一个标准的IVM分类器只接受标记数据的训练(图8.7,左图)。然后,我们使用空类别方法来训练一个包含未标记数据的分类器。如图8.7(右)所示,所得到的决策边界发现了一个数据密度较低的区域,更准确地反映了底层数据分布。

8.5.1 USPS数字

        接下来我们考虑学习USPS手写数字数据集的零类别噪声模型。这个数据集是完全标记的,但是我们可以忽略一部分标签,将数据集视为半监督任务。在接下来的实验中,我们使用了一个带有线性分量的RBF内核。我们对每个实验进行十次,随机选择标记的数据点。标记点的分数在0.01和0.25之间变化。每个数字都被视为一个单独的“一对另一”二进制分类类。通过将每个测试数据点分配给概率最高的类,我们还以总体错误率总结了这些二进制分类任务。在我们的第一个实验中,我们试图通过最大化IVM对边缘似然的逼近来学习内核的参数。结果汇总在表8.1中。


对于这些结果,模型学习了内核参数。我们给出了单个二值分类任务的结果以及由组合分类器计算出的总体误差。每一个结果都是通过在不同随机种子的十次运行中分类误差百分比的平均值和标准偏差来总结的。

        从表中可以看出,值大于0.1时,分类结果较好,值小于0.1时,分类结果较差。考虑到许多半监督学习算法即使在未标记数据的比例低至0.1的情况下也能提供合理的性能,这一点乍一看似乎很麻烦。然而,必须记住,这里提出的算法面临学习内核超参数的额外负担。大多数其他方法都没有这种能力,因此通常会报告给定的、经过调整的一组内核参数的结果。为了进行更直接的比较,我们还进行了一些实验,其中内核超参数被固定到由一个在完全标记数据集上训练的IVM发现的值上。表8.2总结了这些结果。正如预期的那样,在<0.1的范围内,这些结果要好得多。除了数字2(=0.01)之外,即使=0.01,至少一次运行也会学习到一个明智的决策边界。

8.6 讨论

        我们提出了一种半监督学习问题的贝叶斯方法。虽然半监督学习的贝叶斯方法在生成环境中是众所周知的,并且易于表述,但在识别环境中,它们似乎更难表述一种不幸的情况,因为使用识别方法可以获得优越的性能。事实上,我们还没有意识到以前对分类算法的研究,这些算法同时具有识别性、半监督性和贝叶斯。前一篇文章提出的方法表明,文献中的这种差距并不是由于一个基本的限制。事实上,存在歧视性的、半监督的贝叶斯算法,并且可以通过涉及“空类别”的相对直接的扩充来开发。从支持向量机中边缘的作用出发,我们的空类别噪声模型提供了一个概率实现,即讨论Minant边界应通过低数据密度区域。我们在一个完全区分的框架内实现这一点,该框架不需要对类条件密度进行建模。


对于这些结果,模型给出了IVM在标准全标记数据上学习的内核参数。我们给出了单个二值分类任务的结果以及由组合分类器计算出的总体误差。

        我们的方法提供了一种在不需要专门内核设计的情况下执行基于内核的半监督学习的实用方法。

        重新创建实验的代码可从 http://ww.dcs.shef.ac.uk/~neil/ncnm 获得。

你可能感兴趣的:(8. 高斯过程和空类别噪音模型)