回顾likelihood,它给出了一种获取模型参数点估计的方法(MLE) ,模型是一堆PDF/PMF的joint, 而指数家族,就是一些经典常见的 PDF/PMF 。
简单线性模型假设数据和响应变量之间是正态分布的关系,这个正态分布 就是 指数家族的一员。 GLM 在lm的基础上进行扩展, 不再要求 “数据和响应变量之间是正态分布” 的关系, 而是要求 “数据和响应变量之间的关系是指数家族中的某一种” 即可。
指数家族提供了一种公共形式,只要某种概率分布 属于 指数家族 ,那么它就可以被写成这种形式。
它看起来非常的数学,但它是很有必要的,它提供了一个公共形式,也就是说它使得 glm在计算机程序里函数化变得统一可行。
我个人认为了解即可,没必要记下指数家族公共形式,以及怎么将一些概率分布变形成 指数家族公共形式,除非你要参加相关闭卷考试,不然需要的时候查查资料推导一下即可.....
接下来我会描述几个常见的 指数家族成员,以及它们是怎么变形成指数家族公共形式的。
理解和记忆 几个常见的指数家族成员 是很有必要的,因为这涉及到我们数据分析过程中模型参数的选择,调优等,这无疑是一个比较高手工经验要求的过程。
1 Gaussian(normal)高斯/正态分布
mean = μ,决定了分布的位置;variance = δ^2,尺度参数, 决定了分布的幅度。
2 Binomial 二项分布 , (e.g. Logistic regression)
N次独立重复实验发生k次的概率 , mean = np ,var = n*p*(1-p)
下面这个公式 揭示了 二项分布是互补的
3 Poisson, 泊松分布
泊松分布适合于描述单位时间内随机事件发生的次数 (positive count data)的概率分布。 mean = variance = λ
4 Exponential 指数分布
指数分布是一种连续概率分布。指数分布可以用来表示独立随机事件发生的时间间隔,比如旅客进入机场的时间间隔、打进客服中心电话的时间间隔、中文维基百科新条目出现的时间间隔等等。指数函数的一个重要特征是无记忆性Memoryless Property 。mean = 1/λ variance = 1/λ^2
5 Gamma
Y~Gamma(α , β)
mean = α/ λ variance = α/ λ^2
将它们变形成指数家族公共形式 (了解即可):
先给出标准定义:
我的理解:
GLM是 lm 的扩展,参考 lm 4 大数据限制要求 :
GLM 仍然要求 限制3,independent random sample, 这是 likelihood 理论的基础假设;
不再要求限制4 ,因为我们不再强求 预测变量和响应变量是正态分布的关系,而是只要满足指数家族即可;
不再要求限制2,因为不再要求正态分布,正态分布的恒定方差自然也不再要求;
不再要求限制1,因为我们引入了 link function 连接函数 的概念。
GLM即: 响应变量遵循某种指数家族定义的概率分布,这个概率分布的参数,是由预测变量的线性形式,再套上连接函数组成的。
参考我们介绍likelihood 时引入的 鱼的例子 ,它的GLM模型如下图 : 鱼的逃脱数量(响应变量) 遵循二项分布,二项分布的参数,即逃脱率(πi),是由 鱼的长度 (预测变量)的线性形式,再加上 link function 转换 形成的 。
这个GLM模型 有两个未知参数,即 beta0 和 beta 1. 可以用MLE 求出。
“响应变量遵循某种指数家族定义的概率分布”,这个我们已经充分解释了。
“预测变量的线性形式” ,其存在的目的也不用多说,
“再套上连接函数” , 问题来了,我们为什么要套上这个 连接函数呢? 以及,连接函数是什么?
连接函数是什么?
连接函数有很多种,上面 鱼的例子 ,
二项分布,(它也有被叫做 logistic regression) 中我们使用的是 logit ,它能把负无穷到正无穷的数转换到 [0,1]的区间 ,logit 是 二项分布的 canonical link (标准/默认连接函数)
正态分布的 canonical link 是 identity , 我们其实没什么特别的限制,所以直接是:
泊松分布的 canonical link 是 log , 因为我们的理想的参数是 λ >0(根据泊松定义) ,如果用 identity 可能是负值
其他的还有一些,我就不介绍了。
为什么要套上这个 连接函数?
1 我们希望模型 make sense 。
参考鱼的例子,我们会发现 二项分布的参数,即逃脱率(πi)理应是个正数,更具体点说它应该是个 [0,1]之间的小数,代表概率,如果我们直接使用 :,它的结果区间 是远大于 我们希望它应该在的数据区间的,于是我们加入了 logit 连接函数进行转换,这样它的结果就会更如我们所愿地 落在 我们希望它应该在的数据区间 。 正态。泊松等也是同理。
2 增加 flexibility 。
emm ,增加 flexibility 当然可以通过 1增加 预测变量的高次幂项,2 预测变量s之间的交互等 来实现。
link function 也可以达到这个效果。
canonical link function 标准/默认连接函数 表
一些概率分布的 标准 连接函数 ,其实还蛮好记的,都是有道理的。