跳到正文
格致开物MATHWIKI

广义可加模型

广义可加模型(generalized additive model,GAM)把多个预测变量各自的平滑影响相加,再通过链接函数连接到响应均值。它允许一个变量与响应之间呈曲线关系,同时保留各项可分开阅读的结构。曲线的平滑程度需要估计,不能靠增加大量弯曲来代替模型检验。

可加结构与链接函数

对条件独立观测 Yi,给定预测变量后,设均值为 μi,并选择合适的响应分布与链接函数 g,写 g(μi)=β0+∑j=1pfj(xij). 高斯响应常用恒等链接;二元响应可用 g(μ)=log⁡(μ/(1−μ));计数响应可用对数链接。因此各项相加发生在线性预测子尺度上,不一定发生在原始响应尺度上。[1]

为区分截距和曲线的常数部分,常对每项施加样本中心化约束 ∑ifj(xij)=0。否则把某项加上常数、再从截距减去同样常数,会给出完全相同的预测。多个预测变量高度相关时,不同曲线还可能相互补偿,单项解释应结合这种不确定性。

基函数与惩罚的作用

把平滑函数表示为 fj(x)=∑r=1kjbjr(x)θjr。基函数 bjr 固定后,未知量是系数 θ。以高斯响应、恒等链接为例,估计可写成 minθ ‖y−Bθ‖22+θ𝖳Sλθ,Sλ=∑jλjSj. Sj 描述某项的弯曲代价;例如积分 ∫(fj″(x))2dx 展开后是系数的二次型。对目标求梯度,得到 (B𝖳B+Sλ)θ^=B𝖳y. 若左矩阵正定,解唯一;若存在既不被数据看见也不被惩罚的非零方向,就须增加约束或调整基。较大 λj 抑制被惩罚的曲率,但不一定把整项变为零,例如二阶导数惩罚仍留下线性函数。[1]

三个点上的收缩算例

取教学数据 x=(−1,0,1)、y=(2,0,2)。只用一个中心化二次基 z(x)=x2−2/3,拟合 β0+bz(x),惩罚取 λb2。样本中的 z=(1/3,−2/3,1/3) 之和为零,因此最优截距是 y¯=4/3。又 ∑izi2=2/3,∑izi(yi−y¯)=4/3,b^=4/32/3+λ=42+3λ. 无惩罚时 b=2,曲线恰穿过三点;取 λ=2/3 时 b=1,预测为 (5/3,2/3,5/3)。惩罚让三个预测向共同均值收缩,却保留了对称的弯曲形状。这是一个可手算的单基示例,并非完整软件通常使用的多基样条拟合。

三个教学点与无惩罚、有限惩罚和极大惩罚三种二次拟合
同一组基函数随惩罚增强而变平。绿色曲线穿过三点并不自动说明它对新数据预测最好。

变式。 取 λ=2,得 b=1/2,三个预测为 (3/2,1,3/2)。它们的平均仍是 4/3;收缩的是形状系数,而非截距。实际平滑参数可通过交叉验证或合适的似然准则选择,应与观测相关性及抽样设计相容。

可加性与交互

若真实均值是 x1x2,在 x1,x2∈{−1,1} 的四个角点,矩形差分为 f(1,1)−f(1,−1)−f(−1,1)+f(−1,−1)=4. 任何纯可加形式 a(x1)+b(x2) 的同一差分都为零,因为每项恰好抵消。因此再多的一维基函数也不能消除这种结构缺口;应在有依据时增加二维平滑或交互项。链接尺度的单项曲线也不自动具有因果意义,外推到训练范围以外尤其依赖所选基与惩罚。

参考文献

  1. ↑ 1.0 1.1 Simon N. Wood,mgcv 官方文档:Specifying generalized additive models,模型公式与链接;Smooth terms in GAM,基函数与二次平滑惩罚。