广义线性模型

为什么要引入GLM?

我们知道了”回归“一般是用于预测样本的值,这个值通常是连续的。但是受限于其连续的特性,一般用它来进行分类的效果往往很不理想。为了保留线性回归”简单效果又不错“的特点,又想让它能够进行分类,因此需要对预测值再做一次处理。这个多出来的处理过程,就是GLM所做的最主要的事。而处理过程的这个函数,我们把它叫做连接函数。

如下图是一个广义模型的流程:

广义模型

图中,当一个处理样本的回归模型是线性模型,且连接函数满足一定特性(特性下面说明)时,我们把模型叫做广义线性模型。因为广义模型的最后输出可以为离散,也可以为连续,因此,用广义模型进行分类、回归都是可以的。

但是为什么线性回归是广义线性模型的子类呢,因为连接函数是 f ( x ) = x f(x)=x f(x)=x 本身的时候,也就是不做任何处理时,它其实就是一个线性回归。

所以模型的问题就转化成获得合适的连接函数?以及有了连接函数,怎么求其预测函数 h θ ( x ) h_\theta(x) hθ(x)

定义

刚才说了,只有连接函数满足一定特性才属于广义线性模型。特性是什么呢?先简单描述下背景。

在广义线性模型中,为了提高可操作性,因此限定了概率分布必须满足指数族分布:
p ( y ; η ) = b ( y ) e η T T ( y ) − a ( η ) p(y;\eta) = b(y)e^{{\eta^T}{T(y)-a(\eta)}} p(y;η)=b(y)eηTT(y)a(η)

  • η \eta η 称为这个分布的 自然参数(natural parameter) 或者 规范参数(canonical parameter) η = θ T X \eta=\theta^TX η=θTX ,即自然参数=参数与自变量X的线性组合。
  • T ( y ) T(y) T(y) 称为 充分统计量(sufficient statistic)
  • a ( η ) a(\eta) a(η) 称为 对数分割函数(log partition function) e − a ( η ) e^{-a(\eta)} ea(η) 是分布 p ( y ; η ) p(y;\eta) p(y;η) 的归一化常数,用来确保该分布对 y y y 的积分为 1。
  • T , a , b T,a,b T,a,b 固定之后,也就确定了这样一个以 η \eta η 为参数的分布族。

广义线性模型的三个假设

  • ( y ∣ x ; θ ) ∼ E x p o n e n t i a l F a m i l y ( η ) (y|x;\theta)\sim Exponential Family(\eta) (yx;θ)ExponentialFamily(η):给定样本 x x x 和 参数 θ \theta θ ,样本分类 y y y 服从指数分布。
  • 给定一个 x x x ,我们需要的目标函数为 h θ ( x ) = E [ T ( y ) ∣ x ] h_\theta(x) = E[T(y) | x] hθ(x)=E[T(y)x]
  • η = ( θ ⃗ ) T X ⃗ \eta = (\vec \theta)^T \vec X η=(θ )TX ,即自然参数 η \eta η 和 输入 X ⃗ \vec X X 满足线性关系。

连接函数的获取

从上图可以看到 η \eta η 为函数的输入,而 h θ ( x ) h_\theta(x) hθ(x) 为函数的输出,所以有公式:
h θ ( x ) = f ( η ) h_\theta(x) = f(\eta) hθ(x)=f(η)
但是我们会把 f f f 的逆 f − 1 f^{-1} f1 称为连接函数 , 也即以 h θ ( x ) h_\theta(x) hθ(x) 为自变量, η \eta η 为因变量的函数为连接函数:
η = f − 1 ( h θ ( x ) ) \eta = f^{-1}(h_\theta(x)) η=f1(hθ(x))
所以求连接函数的步骤也就变成:

  1. Y ⃗ \vec Y Y X ⃗ \vec X X 所满足的分布转换成指数分布形式。
  2. 在指数分布形式中获得 T ( y ) T(y) T(y) 的函数形式和 η \eta η 的值。
  3. 算出 E [ T ( y ) ∣ x ] E[T(y)|x] E[T(y)x] η \eta η 的关系,并把 ( θ ⃗ ) T (\vec \theta)^T (θ )T 代入到 η \eta η 中,获得连接函数。

常见连接函数求解及对应回归

伯努利分布 —> Logistic 回归

伯努利分布只有0、1两种情况,因此它的概率分布可以写成:
p ( y ; ϕ ) = ϕ y ( 1 − ϕ ) 1 − y y = [ 0 , 1 ] ϕ : 实 验 为 1 发 生 的 概 率 p(y;\phi) = \phi^y(1-\phi)^{1-y} \qquad y=[0,1] \qquad \phi: 实验为1发生的概率 p(y;ϕ)=ϕy(1ϕ)1yy=[0,1]ϕ:1
下面是逻辑回归的推导过程:

逻辑回归

多项分布 —> softmax 回归

前面说过的分类问题都是处理那些分两类的问题。比如区分猫或者狗的问题,就是一类是或者否的问题。但是现实生活中还有更加多的多类问题。比如猫分类,有田园猫,布偶猫,暹罗猫各种猫,这里就不能够用两分类来做了。

这里先设问题需要区分 k k k 类,即 y ∈ { 1 , 2 , 3 , . . . , k } y \in \lbrace1, 2, 3, ..., k\rbrace y{1,2,3,...,k} 。此处无疑使用多项式来建模。多项式分布是二项分布的一个扩展,其取值可以从 { 1 , 2 , 3 , . . . , k } \lbrace1, 2, 3, ..., k\rbrace {1,2,3,...,k} 中取,可以简单建模如下:
[ 1 0 ⋯ 0 0 1 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ 1 ] \left[ \begin{matrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \\ \end{matrix} \right] 100010001
例如当 y = 2 y=2 y=2 时,第二个数为1,其它数为0,因此它的概率分布如下:
softmax


参考自:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值