广义线性模型(Generalized Linear Model)

广义线性模型(Generalized Linear Model)

概要:

本文将会 说明 线性回归和逻辑回归都是广义线性模型的一种特殊形式,介绍广义线性模型的一般求解步骤。 利用广义线性模型推导 出 多分类的Softmax Regression。


线性回归中我们假设:

逻辑回归中我们假设:

其实它们都只是 广义线性模型 (GLMs) 的特例。提前透露:有了广义线性模型下 我们只需要把 符合指数分布的一般模型 的参数 转换成它对应的广义线性模型参数,然后 按照 广义线性模型的 求解步骤 即可轻松求解问题。


指数分布族( The exponential family)

首先我们定义一下什么是指数分布族,它有如下形式:

简单介绍下其中的参数 (看不懂没关系)

  • \eta 是 自然参数 ( natural parameter )
  • T(y) 是充分统计量( sufficient statistic ) (一般情况下 T(y) = y
  • a(\eta) 是 log partition function ( e^{ - a(\eta)} 充当正规化常量的角色,保证 \sum p(y; \eta)  = 1

也就是所 T,a, b 确定了一种分布,\eta 是 该分布的参数。


选择合适的 T, a,b 我们可以得到 高斯分布 和 Bernoulli 分布。


Bernoulli分布的指数分布族形式:

=>

即:在如下参数下 广义线性模型是 Bernoulli 分布

\eta = log( \phi / (1- \phi)) \Rightarrow  \phi  = 1/(1 + e^{-\eta})

Gaussian 分布的指数分布族形式

在线性回归中,\sigma 对于模型参数 \theta 的选择没有影响,为了推导方便我们将其设为1:

得到 对应的参数:


用广义线性模型进行建模:

想用 广义线性模型对一般问题进行建模首先需要明确几个 假设:

  1. y | x;θ \sim ExponentialFamily(\eta) y的条件概率属于指数分布族
  2. 给定x 广义线性模型的目标是 求解 T(y) | x , 不过由于 很多情况下 T(y) = y 所以我们的目标变成了 y | x , 也即 我们希望拟合函数为  h(x) = E[y|x] ( 备注: 这个条件在 线性回归 和 逻辑回归中都满足, 例如 逻辑回归中 hθ(x) = p(y = 1|x;\theta) = 0 \cdot p(y = 0|x; \theta) + 1 \cdot  p(y = 1|x; \theta) = E[y|x;\theta]) )
  3. 自然参数 \eta 与 x是线性关系 : \eta = \theta ^T x ( \eta 为向量时 \eta_{i} = \theta_{i} ^T x )

有了如上假设 就可以 进行建模和求解了:

具体参考下面例子。

广义线性模型 推导出 线性回归:

step1: y | x;θ \sim N( \mu , \theta)

step2: 由假设2  h(x) = E[y|x] 得到:

广义线性模型 推导出 逻辑回归

step1: y|x;\theta \sim Bernoulli(\phi)

step2: 与上面同理


广义线性模型推导出 Softmax Regression (多分类算法 ):

【step1】:

y有多个可能的分类: y \in   \left\{   1,2,...,k  \right\}

每种分类对应的概率: \phi_{1}, \phi_{2}, \cdots ,\phi_{k},  但是 由于 \sum _{i =1}^{k}{\phi_{i}} = 1 , 所以一般 用 k-1个参数 \phi_{1}, \phi_{2}, \cdots ,\phi_{k-1},  其中 \phi_{i} = p(y = i; \phi) \; , p(y = k; \phi) = 1 - \sum _{i=1}^{ k-1} {\phi_{i}}

为了将 多项分布 表达为 指数族分布:

  • 定义  T(y) \in  R^{k-1} ,它不再是 一个数 而是一个变量

  • 引进指示函数:  1 \left\{ \cdot \right\}  
1\left\{ True \right\}  = 1 \; , 1\left\{ False \right\}  = 0
  •  E[(T(y))i] = P(y = i) = \phi_{i}

得到它的指数分布族形式 以及 各个对应参数为:


求出 \phi_{i} :

=>

也即:

至此我们就可以利用广义线性模型进行求解:

【step2】

可见 拟合函数的输出结果是 每一种分类对应的概率 所组成的向量。


接下了只需要根据 最大似然法拟合参数即可:

可以用梯度上升或着牛顿法。

文章被以下专栏收录