“分类问题用高斯过程比回归问题要求更高。”这句话出自一份硕士论文附录,直白点出了高斯过程模型在分类任务上的尴尬处境。同样是函数逼近,回归模型假设似然函数是高斯分布,搭配高斯过程先验,后验依然是高斯过程,整个数学推演流畅得像开了绿灯。一旦把目标变量换成离散的类别标签,绿灯就变成了红灯——高斯似然直接失效,精确推断无解,只能依赖近似方法。
这篇附录从回归与分类的底层差异讲起,核心逻辑很清晰:回归和分类都是函数逼近,但回归场景下,高斯过程先验乘上高斯似然,后验仍然是高斯过程,所有推导都在一个解析可解的框架里。分类场景里,目标值是离散的类别,高斯似然站不住脚,精确推断不可行,必须上近似推断。这个根本性的数学障碍,让很多用惯了高斯过程回归的人转到分类时浑身难受。
作者回顾了高斯过程回归是怎么从线性回归推广出来的——把线性回归的权重空间视角换成函数空间视角,用核函数代替内积,就得到了高斯过程回归。而对分类问题,对应线性模型的逻辑回归同样可以按照这个思路推广,得到高斯过程分类。这里面的关键纽带是:线性回归到高斯过程回归,和逻辑回归到高斯过程分类,用的是同一套推广思想。
文章接着拆解二元分类的概率建模机制。一个回归模型的输出,要变成类别概率,需要经过一个响应函数(或者换个角度看,链接函数的逆)。这个函数把取值范围从整个实数轴压缩到[0,1]区间,保证输出具备概率解释。线性逻辑回归就是最典型的例子:把线性模型和逻辑响应函数拼在一起。对于二分类,设标签y为+1和-1,似然函数p(y|w,x)=σ(y·wᵀx),其中σ是任意sigmoid函数。用逻辑函数时,模型就是标准的逻辑回归。两个类别概率必须和为1,所以p(y=−1|w,x)=1−p(y=+1|w,x)。单个数据点的似然就是这么来的,整个数据集的似然就是这些项的连乘。
二元分类的高斯过程预测,核心思路是:在潜在函数f上放一个高斯过程先验,然后把f压过一个逻辑函数,就得到类别概率π(x)=σ(f(x))的分布。这里f是随机过程,π就是f的确定性非线性函数,所以π也是随机的。关键点是,f是“讨厌参数”——我们根本观测不到它的值,只能看到输入x和类别标签y。我们对f本身并不感兴趣,真正想要的是给定x后y的预测分布。这就逼着我们必须把f从模型里积掉:p(y∗|x∗,D)=∫p(y∗|f∗)p(f∗|D)df∗。而p(f∗|D)=∫p(f∗|f)p(f|D)df,这里面p(f|D)∝p(y|f)p(f)又回到了那个棘手的非高斯似然,精确计算没门。
附录里这些推导虽然简短,但每个坑都踩得很实。从高斯过程回归的顺滑,到分类的非高斯似然带来的推断障碍,再到潜在函数引入后的边缘化计算难题,整条链路没有废话。对于已经熟悉高斯过程回归的人来说,三分钟就能看懂为什么分类不是换个损失函数那么简单。对于还在纠结“为什么我的高斯过程分类跑得又慢又不准”的人,答案早就写在这几段里了:不是代码写错了,是数学上就没给解析解。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.