广义线性模型是什么?把线性回归推广到各种类型的输出
广义线性模型(Generalized Linear Model,GLM)是线性回归的一种推广,由英国统计学家约翰·内尔德和罗伯特·韦德伯恩在 1972 年提出。它提供了一个统一的框架,把线性回归、逻辑回归、泊松回归等多种看起来各不相同的模型,统一在同一个理论体系之下。
线性回归的局限
普通的线性回归假设:要预测的变量,等于各个特征的加权和,再加上一个服从正态分布的随机误差。这适用于很多情况,比如预测身高、体重、温度这样可以取任意实数的连续变量。但在很多实际问题中,要预测的变量并不满足这样的假设。比如预测一个病人是否会患某种病,结果只有“是”和“否”两种,预测的概率必须在 0 和 1 之间,而线性回归的预测值可能小于 0 或大于 1,显然不合理。又比如预测一个路口一天内发生多少起交通事故、一个网页一小时内被点击多少次,结果是非负的整数,而且往往数值越大、波动也越大,也不适合用正态分布来描述。广义线性模型就是为了处理这些情况而提出的。
三个组成部分
广义线性模型由三个部分组成。随机成分:指定要预测的变量服从什么样的概率分布。它要求这个分布属于“指数族”,这是一大类常见的分布,包括正态分布、二项分布、泊松分布、伽马分布等。根据数据的类型选择合适的分布:连续数值用正态分布,二元结果用二项分布,计数数据用泊松分布,正的连续数值比如保险理赔金额常用伽马分布。线性预测器:与普通的线性回归一样,是各个特征的加权和,加上一个常数项。连接函数:把预测变量的期望值与线性预测器联系起来的函数。线性预测器的取值可以是任意的实数,而预测变量的期望值可能受到限制,比如概率必须在 0 到 1 之间,计数的平均值必须为正。连接函数的作用就是在两者之间进行转换。
几个常见的特例
线性回归:分布为正态分布,连接函数为恒等函数,也就是直接相等。逻辑回归:分布为二项分布,连接函数为 logit 函数,也就是概率与“一减概率”之比的对数,它把 0 到 1 之间的概率映射到整个实数轴上。反过来,通过 Sigmoid 函数就能把线性预测器的值转换回概率。逻辑回归被广泛用于预测是否患病、是否违约、是否点击广告等二元的结果。泊松回归:分布为泊松分布,连接函数为对数函数,用于预测计数数据,比如事故次数、顾客到访次数、某种疾病的发病人数。
参数估计和应用
广义线性模型的参数通常用极大似然估计来求解,内尔德和韦德伯恩提出了迭代加权最小二乘法,可以高效地进行计算。广义线性模型的优点是:理论完备,有成熟的统计推断方法,可以对每个参数进行显著性检验、给出置信区间;模型的结构清晰,每个特征的系数都有明确的含义,可解释性强。它被广泛用于保险精算,比如预测理赔的频率和金额以制定保费;医学和流行病学研究,比如分析各种风险因素对疾病发生的影响;以及生态学、经济学、市场营销等领域。在机器学习中,逻辑回归至今仍然是最常用的分类基线模型之一,神经网络的输出层也常常可以看作一个广义线性模型。