1. 假设x1与y之间为线性关系,而x2与y之间为复杂的曲线关系。拟合广义相加模型为:
模型有两个部分:参数项( β
0 + β
1 x
1 )和非参数平滑项f(
x
2
)。
其中,参数项等同于最小二乘回归模型以及广义线性模型中可以包含的所有参数项,例如线性项或多项式项。另外,还包括了非参数平滑项,这是广义相加模型的关键部分。其左侧与广义线性模型类似。
2. 非参数平滑项是什么?
简单线性回归和多项式回归的拟合都是全局性的,即使用相同的回归方程来预测自变量的每一个值所对应的因变量。然而,在自变量和因变量之间为形状不明确的非线性关系时,即,随着自变量取值的变化,其与因变量之间的关系也是在不断变化时,用一个回归方程来预测所有自变量所对应的因变量就不太合理了。
一种可行的改进方法是把该自变量划分成多个连续的区间,每一个区间都用单独的线性函数或非线性的低阶多项式函数来拟合。这种方法被称为样条函数(Spline),其生成的回归线为平稳、光滑的曲线,因此经样条函数变化后的自变量也被称作非参数平滑项。
3. 由此可知,样条函数是非参数平滑项的关键,其具体内容包括:应该把数据分成几个连续区间?每个区间该如何确定拟合函数?
1
)首先来看应该把数据分成几个连续区间,也就是说在拟合样条函数时,我们该选择几个节点?
推荐使用广义交叉验证(GCV:Generalized Cross Validation)的方法选择节点数。这种方法的基本思路是,a)取出一部分数据;b)用某一数量的节点使样条拟合剩下的这些数据;c)用样条拟合之前取出的数据;d)重复a)~c),直到每个观察值都被取出过一次,计算整个交叉验证过程的均方根误差(RMSE:Root Mean Square Error);e)针对不同数量的节点重复a)~d),最后选择最小RMSE时的节点数量。
2)确定节点数量后,这些节点应该放在什么位置?
可以放在数据中的剧烈变化区域,如大气污染情况突然转好(如2015年北京的阅兵蓝)或突然加重(如伦敦烟雾事件)的时间点;也可以在数据变化复杂的地方多设置节点,在看起来更稳定的地方少设置节点,比如研究大气污染的健康效应时,在暴露反应关系可能存在拐点的地方设置节点。
但实际上,为便于操作,一般会截取长度相同的区间设置节点。
3)接下来,看看每个区间该如何确定拟合函数?
一般来说,如果我们在整个自变量范围内设置了k个不同的节点,我们最终将拟合k+1个不同的多项式。我们要为每个区间拟合不同的函数,理论上可以用任意低阶多项式拟合某个单独区间。所以最终得到的模型就是分段多项式。能拟合目标区间数据的函数有很多,但分段多项式不能随便设定,它有两个限制条件。
a) 由于分段,相邻区间的函数可能会出现不连续的现象。为了避免这种情况,一个必要的限制就是多项式在节点处应该是连续的。
b) 在a)之后,虽得到了一条连续的曲线,但其连接处过度很不自然,为了使节点处更平滑,我们需要增加一个新约束:相邻多项式的导数必须相同(具体地讲,如果拟合的是m阶多项式,则应保证相邻多项式的一阶导数至m-1阶导数均相等)。
像这样具有m-1个连续导数的m阶分段多项式,我们称之为样条函数(Spline),
那么三次样条函数指的就是具有连续性、且一阶和二阶导连续的三阶分段多项式。
在实际研究中,我们一般使用三次样条函数;除此之外,也可选择自然三次样条函数(增加了三次样条函数在边界区域的平滑性)、薄板样条函数(可同时平滑多个变量,因此一般在研究多个变量的交互作用时使用)等
。
至此,广义相加模型的基本知识点就介绍完了。总结起来就是,为了尽可能多地捕捉回归模型中的非线性因素对因变量的影响,我们采用样条函数来灵活地将自变量拟合为平滑的曲线;同时又相对不那么“灵活”,能有效防止过度拟合。
三、广义相加模型在
R
中的实现
1. 在R中,拟合广义相加模型的包是mgcv,函数是gam()。
举例:model
式中,
- death_cases为因变量,PM2.5和Temperature为自变量。
- PM2.5为参数部分,s()为非参数平滑项。
- s()中,bs代表样条函数类型,我们选择cr即为三次样条函数。df代表样条函数的自由度,除用GCV法外,也可参考相关文献的选择。对于三次样条函数,节点数等于自由度-3;对于自然样条函数,节点数等于自由度-1。如想使用自然样条函数,则s()应替换为ns()。
- family为因变量的分布类型;data为建模所需数据。
2. 查看模型,语句为summary(model),可查看自变量参数的点估计值、参数项和非参数项是否为有意义的预测因子、评价模型预测情况的GCV值(越小越好)。
为平滑项绘图,语句为plot(model)。
参考文献:
https://cran.r-project.org/web/packages/gam/gam.pdf
https://www.r-bloggers.com/generalized-addictive-models-and-mixed-effects-in-agriculture/
https://www.andrew.cmu.edu/user/achoulde/95791/lectures/lecture02/lecture02-95791.pdf