[置顶] ML—广义线性模型深度解析

标签: 广义线性模型逻辑回归线性回归SoftMax回归
14122人阅读 评论(0) 收藏 举报
分类:

Andrew Zhang
Tianjin Key Laboratory of Cognitive Computing and Application
Tianjin University
Nov 3, 2015

本文主要讲解我对GLM的理解,并将GLM推广到逻辑回归,线性回归和Softmax回归理论中。

一、指数分布族(ExponentialFamily)
如果一个分布密度函数可以写成如下的形式
p(y,η)=b(y)eηTT(y)a(η)(1-1)
其中,η被称为自然参数,标准参数或者规范参数;T(y)被称为充分统计量;而a(η)一般被称为对数分函数。T,a,b 确定了参数为η的一种分布函数。

二、GLM的三个假设
1、线性模型的假设
线性模型有如下三条假设
y=xβ+ϵ
E(ϵ)=0
cov(ϵ,ϵ)=σ2Inn
(2)
2、广义线性模型的三条假设
广义线性模型需要满足y关于x的条件概率和模型设定三个假设:
假设一:y|x;θ~ExponentialFamily(η) 对于给定的xθ ,y 的分布服从参数为η 的指数分布族
假设二:对于给定的x ,目标是预测给定xT(y) 的期望
假设三:自然参数η 和输入x 是线性关系:η=θTx (如果η 是向量,那么ηi=θTix )
3、对GLM三个假设的说明
3.1 假设1的解释
假设一讲的是广义线性模型的核心。广义线性模型广体现在y服从的是一个指数分布族。简单来说,就是对于所有的样本y服从的是同一个分布,只不过不同样本之间这个分布的参数不同。例如若所有样本的y都是伯努利分布,则不同的样本分别对应与x相关的ϕ(逻辑回归),若若所有样本的y都是正态分布,则不同的样本分别对应与x相关的μ(最小二乘)。。。。。
3.2 假设2的解释
主要是说GLM的输出。输出的hθ(x)=E[T(y)|x]
3.3 假设3的解释
对于假设3,意味着在任何出现η 的地方,我们都需要用η=θTx 或者ηi=θTix 替换,以此转化为关于输入x的线性关系。

三、GLM参数求解
对于GLM模型参数θ的求解,一般都要利用极大似然估计,求解出使得采样样本取得最大概率的参数θ
对于训练样本(x1,y1),(x2,y2),...,(xm,ym),似然函数为
L(θ)=mi=1p(yi|xi;θ)(3)
后面只需要对公式(3)进行求解,得到使似然函数达到极大值时对应的θ 即可。

四、GLM—逻辑回归
在逻辑回归中,假设类别标签服从伯努利分布Bernouli(ϕ),即p(y=1;ϕ)=ϕ,p(y=0;ϕ)=1ϕ ,在这里ϕx有关。也就是说不同的输入x可以得到不同的伯努利分布,这就是逻辑回归的伯努利分布族。
首先我们来推导一下,证明伯努利分布~Bernouli(ϕ) 满足指数分布族形式(1)。
p(y;ϕ)=ϕy(1ϕ)1y
    =eylogϕ+(1y)log(1ϕ)
    =eylogϕ1ϕ+log(1ϕ)
    (4-1)
对比式(1)可得
η=logϕ1ϕ
T(y)=y
a(η)=log(1ϕ)
b(y)=1
根据上式η=logϕ1ϕ,我们可以得到
ϕ=11+eη(4-2)
根据GLM假设3—η=θTx,可以进一步的得到
ϕ=11+eθTx(4-3)
公式4-3实际上说的逻辑回归中样本特征x与样本标签所服从的伯努利分布参数ϕ之间的关系。这里也解释了为什么逻辑回归要采用单极型函数。
对于指数分布族形式得到的式子T(y)=y,可以得到GLM模型的输出hθ(x)如下关系
hθ(x)=E[y|x]=ϕ1+(1ϕ)0=ϕ(4-4)
结合公式(4-3)可得
hθ(x)=ϕ=11+eθTx(4-5)
综上,可得逻辑回归模型的数学表达形式如下:
p(y|x;θ)=p(y;ϕ)=ϕy(1ϕ)1y=hθ(x)y(1hθ(x))1y(4-6)
后面的工作就是对于训练样本训练模型得到参数θ,然后对测试样本进行预测即可。逻辑回归模型训练采用极大似然估计就可以,似然函数如下,
L(θ)=mi=1p(yi|xi;θ)=mi=1hθ(xi)yi(1hθ(xi))1yi(4-7)

五、GLM—线性回归
对于线性回归的广义线性模型解释中,需要假设因变量y服从正态分布N(μ,σ2)
首先还是先来看看高斯分布的指数分布族变换
y|x~N(μ,σ2) ,我们考虑简单情况σ2=1 所以有下式
p(y;μ)=12πexp(12(yμ)2)
    =12πexp(12y2)exp(μy12μ2)
    (5-1)
对应于式子1,可得到如下表达式:
η=μ
T(y)=y
a(η)=12μ2=12η2
b(y)=12πexp(12y2)
根据GLM假设3—η=θTx,可以进一步的得到
μ=η=θTx(5-2)
接下来,利用GLM的第二个假设可以得到GLM模型的输入hθ(x)如下关系
hθ(x)=E[y|x;θ]=μ=η=θTx(5-3)
综上可得线性回归模型的数学表达形式如下:
p(y|x;θ)=12πexp((yμ)22)=12πexp((yθTx)22)(5-4)
接下来,只需要利用极大似然法求解参数θ即可。如果知道线性回归概率解释的话,会发现这个就是线性回归的概率解释是一样的,很容易就转化为最小二乘形式了。

六、GLM—SoftMax回归
SoftMax可以看成是伯努利分布的扩展,伯努利是二分类,SoftMax是多分类。同理就可以得到SoftMax回归所需要的关于类别标签y的分布假设了—多维伯努利分布。
由于SoftMax回归稍微有点麻烦,首先来对用到的符号进行说明。
p(y=i)=ϕi,i=1,2,...,kyki=1ϕi=1 因此对于k分类问题只需要k-1个参数,但是为了后面表示方便我们仍旧使用ϕkϕk=1k1i=1ϕi
为了在指数分布族表示的时候更清晰,我们引入(k-1)*1维向量T
T(1)=[1,0,0,...,0,0]T
T(2)=[0,1,0,...,0,0]T
T(k1)=[0,0,0,...,0,1]T
……
T(k)=[0,0,0,...,0,0]T
我们用(T(y))i 表示T(y) 的第i个元素,1{y=i}返回一个0或1,表示类别是否属于i,有(T(y))i=1{y=i} 下面就会发现这样表示会使表述很清晰。
对于SoftMax,第一步仍旧是转换为指数分布族形式
p(y;ϕ)=ϕ1{y=1}1ϕ1{y=2}2...ϕ1{y=k}k
    =ϕ1{y=1}1ϕ1{y=2}2...ϕ1k1i=11{y=i}k
    =ϕ(T(y))11ϕ(T(y))22...ϕ1k1i=1(T(y))ik
    =exp((T(y))1log(ϕ1)+(T(y))2log(ϕ2)+...+(1k1i=1(T(y))i)log(ϕk))
    =exp((T(y))1log(ϕ1/ϕk)+(T(y))2log(ϕ2/ϕk)+...+(T(y))k1log(ϕk1/ϕk)+log(ϕk))
    =exp(ηT(T(y))+log(ϕk))
(6-1)
其中,
η=(log(ϕ1/ϕk),log(ϕ2/ϕk),..,log(ϕk1/ϕk))T
a(η)=log(ϕk)
b(y)=1
ηi=log(ϕi/ϕk)k=1,2,...,k1,这里添加一个ηk=log(ϕk/ϕk)=0
ϕi=ϕkeηi
又因为ki=1ϕi=1
ϕk=1ki=1eηi
所以SoftMax对应的GLM一般过程第一步得到
ϕi=eηiki=1eηi(6-2)
由GLM假设3的向量形式
ηi=θTix(6-3)
由于只有k-1个参数,这里仅对于i=1,2,...,k1 成立,为了保持一致,根据公式6-2可以令ηk=θTkx=0
将公式(6-2,6-3)带公式(6-1)便可以得到Softmax回归模型的数学表达式如下
p(y|x;θ)=...()(6-4)
对于模型的求解,利用训练样本求解极大似然估计即可训练模型得到模型参数θi
在这里写一个简单的式子,就是模型对于属于x判断输出的概率计算公式如下:
p(y=i|x;θ)=ϕi=eηiki=1eηi=eθTixki=1eθTix(6-5)
利用GLM第二条假设可知Softmax模型的输出形式如下:
hθ(x)=E[T(y)|x;θ]
     =[ϕ1,ϕ1,,...,ϕk1]T
(6-6)
七、GLM小结
总结一下GLM会发现GLM的精髓体现在GLM的第一条假设里面。利用一个分布族来建模,对于不同的输入x分别对应不同的分布族参数。而模型的输出由GLM的第二条假设—模型期望来决定。而GLM的第三条假设用来确定模型的线性性质。

2
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:330850次
    • 积分:5950
    • 等级:
    • 排名:第4452名
    • 原创:281篇
    • 转载:14篇
    • 译文:0篇
    • 评论:61条
    博客专栏
    最新评论