对数几率回归(logistic regression) 1模型的思路为用
模型由
显然这些概率的和为 1。为了凸显这个模型依赖于整个参数集合
当
4.4.1 对数几率回归模型的拟合
对数几率回归模型通常对条件于
其中
下面详细介绍两个类型的情况,其算法简化了很多。简便起见,将两个类型
其中
通过设置一阶导数为 0 来求对数似然度的最大化,得到 评分(score) 等式
为
运用牛顿-拉弗森(Newton–Raphson)求解评分等式 4.21,需要用到海森(Hessian)矩阵,即二阶导数矩阵:
若从
其中的一阶和二阶导数在
用矩阵的形式标记评分和海森可以更简便地进行推导。让
牛顿算法更新可写为:
从第二和第三行可见牛顿算法的步骤可以被视为一个加权最小二乘,其使用的输出变量为:
其有时称之为 调整输出变量(adjusted response)。在每一次更新中,
一般
多类型问题(glmnet
(Friedman et al., 2010)可以快速地拟合较大
对数几率回归模型大多作为一个数据分析和推断的工具,其目的在于理解输入变量对输出变量的影响方式和程度。很多时候会通过对数几率回归的结果来选择输入变量以及可能有交叉项,最终建立一个简洁的模型。
4.4.2 例:南非心脏病数据
下面通过一个二元输出变量数据的分析,来演示对数几率回归模型在传统统计学中的应用。图 4.12 中展示的是在南非西开普省的三个农村地区进行的(Rousseauw et al., 1983)“冠心病风险因子研究(Coronary Risk Factor Study, CORIS)”基础研究的部分数据。这项研究的目的是探究缺血性心脏病在高发地区中的各种风险因子的严重程度。数据中包括 15 到 64 岁的白人男性,输出变量为在调查时是否存在心肌梗塞(MI)(区域整体的患病率为 5.1%)。图中的数据集中包括了 160 个患病案例和 302 个未患病对照组。对数据更详细的说明可参考 Hastie and Tibshirani (1987)。

表 4.2 为用最大似然估计法拟合的对数几率回归模型的结果。表中包含了模型中每个系数的 Z 分数(系数值与其标注误差的比值);Z 分数不显著代表其对应的输入变量可以从模型中排除。每个 Z 分数对应的是在该系数为 0 的原假设下的检验统计量(沃德检验)。在 5% 的置信水平上显著的条件大约为 Z 评分的绝对值大于 2。
系数值 | 标准误差 | Z 分数 | |
---|---|---|---|
(Intercept) | −4.130 | 0.964 | −4.285 |
sbp | 0.006 | 0.006 | 1.023 |
tobacco | 0.080 | 0.026 | 3.034 |
ldl | 0.185 | 0.057 | 3.219 |
famhist | 0.939 | 0.225 | 4.178 |
obesity | -0.035 | 0.029 | −1.187 |
alcohol | 0.001 | 0.004 | 0.136 |
age | 0.043 | 0.010 | 4.184 |
表 4.2:南非心脏病数据的对数几率回归拟合结果。
结果中有些出乎意料的发现,需要谨慎地审视。收缩压(高压,sbp)不是显著变量!肥胖度(obesity)也不显著,并且其系数方向为负。这种违背常理的结果是由系数之间的相关性造成的。在单独使用时,两个变量 sbp 和 obesity 均为显著的,且符号为正。但在存在其他与之相关的变量时,这个结论不一定继续成立(甚至会产生符号相反的系数)。
根据上面的分析结果,可对模型做一些筛选,即挑选一部分可以较好的对是否患病(chd)做出解释的输入变量。一种方法是排除最不显著的变量,对模型重新拟合,再进行排除;直到模型中所有的变量均为显著变量。这个方法的结果为表 4.3:
系数值 | 标准误差 | Z 分数 | |
---|---|---|---|
(Intercept) | −4.204 | 0.498 | −8.45 |
tobacco | 0.081 | 0.026 | 3.16 |
ldl | 0.168 | 0.054 | 3.09 |
famhist | 0.924 | 0.223 | 4.14 |
age | 0.044 | 0.010 | 4.52 |
表 4.3:南非心脏病数据的逐步对数几率回归拟合结果。
一个更优但更费时的策略是轮流去掉每一个变量后重新拟合模型,通过分析偏差来绝对排除哪一个变量。拟合的残差偏差为
以吸烟量(tobacco)为例,如何解释一个系数值 0.081 和标准误差 0.026 的影响?吸烟量衡量的是以公斤为单位的一生吸烟量,未患病组的中位数为 1 公斤,患病组的中位数为 4.1 公斤。因此,每增加 1 公斤的一生吸烟量,可增加冠心病患病几率
第五章会继续以这个数据集为例,届时可看到其中某些变量的影响是非线性的,在合适的模型中不用被排除模型。
4.4.3 二次项近似和推断
最大似然的参数估计
其权重为
- 加权残差平方和即为常见的皮尔森卡方检验统计量:
{« math »}
{« /math »} 也是对偏差的二次项近似。 - 似然度的渐进理论可证明,如果模型的选择正确,则
为一致估计量(即随着样本量增大,会收敛到真实的参数 )。 - 利用中央极限定理可证明
的分布收敛于 。这些渐进性质均可从加权最小二乘拟合推导出来,其过程类似于正态分布下的推断理论。 - 由于拟合中需要迭代计算,对数几率回归模型的计算可能耗时较多。一些常见的加速技巧包括用 拉奥评分检验(Rao score test) 判断是否包含某个变量,用 沃德检验(Wald test) 判断是否排除某个变量。两者均基于当前模型的最大似然估计,不涉及迭代拟合。两者的结果均为从加权最小二乘法中添加或去除变量,而维持原有权重值。这样的计算过程不用反复地计算整个加权最小二乘拟合,因此可快速完成。
软件中的实现会利用上述的性质。例如,R 中的广义线性模型(其以对残差为二项分布的模型支持覆盖了对数几率回归)即利用了这些性质。拟合的结果为 GLM 类型(generalized linear model)的对象,其继承了线性模型对象的性质,所以可应用于线性模型的工具函数仍然适用。
4.4.4 正则化对数几率回归
套索回归(第 3.4.2 节)中的
与套索回归类似,通常截距项不被加入到惩罚项中,并且事先对输入变量进行标准化处理。式 4.31 中的最大化准则为凹函数,可通过非线性规划方法求解(例如 Koh et al., 2007)。或者,利用类似于第 4.4.1 节中牛顿算法的二次项近似,用迭代的加权套索算法求解式 4.31。有趣的是,系数非零的输入变量的评分等式(对比式 4.24)为:
其为第 3.4.4 节式 3.58 的推广;可理解为,所有选入模型的变量与残差的广义相关性相同。
此时系数的曲线不再是分段线性而是分段曲线,类似于套索回归中的最小角回归的路径算法变得更困难。不过仍可利用二次项近似进行迭代计算。

图 4.13 为建立在第 4.4.2 节中的南非心脏病数据上的 glmpath
(Park and Hastie, 2007),其中运用了凸优化的 预测-校正(predictor-corrector) 方法来确定当被选入模型的变量集合发生变动时(图中竖线处)
坐标下降方法(第 3.8.6 节)可以快速地计算很多 glmnet
(Friedman et al., 2010)可快速地计算出较大
4.4.5 对数几率回归与线性判别分析
在第 4.3 节中,可推导出类型 k 和类型 K 之间的对数后验几率比为
这个线性关系来自于类型条件密度函数的高斯分布假设和具有相同协方差矩阵的假设。而从定义上(式 4.17),对数几率回归模型中的对数几率为线性函数:
两个模型看起来形式是一样的。尽管如此,两者系数的估计方法不同。对数几率回归模型更广泛,即它所依赖的假设更少。
其中
其中任意地选择了最后一个类型 K 作为参考类型3。
对数几率回归将
而在线性判别分析中,通过基于联合分布的对数似然度的最大化里拟合参数:
其中
可见其中包含了模型的参数。
似然度中额外的因子或约束会对拟合产生什么影响?附加的模型假设包含了关于参数的更多信息,因此加以利用后可更有效地估计参数(更低的方差)。若真实的
远离判别边界的样本点,在对数几率回归中会赋予低权重,但在线性判别分析中仍被用于估计协方差矩阵。但这也会使得线性判别分析对离群值不够稳定。
从混合分布的式 4.38 中可见,没有被标记类型的观测点仍包含了参数的信息。实践中样本的类型标记通常比较珍贵,而获得无标记的样本点相对容易很多。通过附加比较强模型假设,例如上述,可以同时利用有标记和无标记的数据中关于参数的信息。
边际似然度可被理解为某种正则条件(regularizer),从某种程度上要求边际分布包含了类型的概率分布的一些信息。例如,若在可以被一个超平面完全区分开的两个类型的数据中,对数几率回归的最大似然估计无法定义(有无穷多个解,见练习 4.5)。而在同样的数据上,线性判别分析的系数是可计算的,其边际似然度避免了信息维度的降低(degeneracy)。
在实践中不存在正确的假设,而且通常输入变量
本节练习
练习 4.4
Consider the multilogit model with K classes (4.17). Let β be the (p + 1)(K − 1)-vector consisting of all the coefficients. Define a suitably enlarged version of the input vector x to accommodate this vectorized coefficient matrix. Derive the Newton-Raphson algorithm for maximizing the multinomial log-likelihood, and describe how you would implement this algorithm.
练习 4.5
Consider a two-class logistic regression problem with x ∈ IR. Characterize the maximum-likelihood estimates of the slope and intercept parameter if the sample xi for the two classes are separated by a point x 0 ∈ IR. Generalize this result to (a) x ∈ IR p (see Figure 4.16), and (b) more than two classes.