【学习笔记】斯坦福大学公开课(机器学习) 之广义线性模型

广义线性模型(GLM)是在指数分布族基础上形成的模型,对于指数分布族中,参数 η 都可以有其他对应函数来替代,从而得到指数分布族模型的扩展。为引入GLM来解决问题,我们做三个假设:
1. y|x;θExponentialFamily(η) ,即已知 xθ y 的分布满足参数为η的指数分布族。
2.假设函数 h(x)=E[y|x] ,即假设函数等于期望(E)
3.特性参数 η=θTx

最小二乘法(Ordinary Least Squares)

最小二乘法是指数分布族中一个特殊的模型,对于目标变量 y (在GLM中也称为反应变量(response variable))是连续的,那么把条件模型定义为高斯分布,从之前的文章可以看到高斯分布作为指数分布族中的一员,有μ=η,所以我们有如下推导过程:

hθ(x)=E[y|x;θ]=μ=η=θTx

其中第一步推导根据假设2,第二步推导根据高斯分布的定义,对于高斯分布来说它的期望值就是 μ ,第三步推导根据假设1,由于y属于指数分布族,就有 μ=η ,最后一步根据假设3。

逻辑斯蒂回归(Logistic Regression)

对于伯努利分布 y|x;θBernoulli(ϕ) 来说,它也属于指数分布族中的一个种类,根据之前介绍指数分布族的推导 ϕ=1/(1+eη) ,且伯努利分布的期望值是 ϕ 。那么假设函数的推导就如下:

hθ(x)=E[y|x;θ]=ϕ=1/(1+eη)=1/(1+eθTx)

从这里就可以看出我们的假设函数 h(x) 是如何得到的,当我们假设目标变量是关于 x 的伯努利分布,根据指数分布族和广义线性模型就可以得到这个假设函数h(x)=1/(1+eθTx)

多项式分布(Softmax Regression)

对于某一种多类的分类问题(例如判断一张手写数字写的是什么,即判断目标值是十个阿拉伯数字中的哪一个),与logistic分类问题比较类似,但是它是logistic分类问题的扩展,目标值 y{1,2,3k} 。为了解决这类问题,还是引入我们的GLM来解决。首先把这个模型表示成为指数分布族。
把k个不同目标值 yk 的输出概率表示为 ϕ1,ϕ2,ϕ3.....ϕk ,这k个值必须有 ki=1ϕi=1 ,那么根据这个关系就可以把参数减少一个,最后一个 ϕi=1k1i=1 ,这个可以解释为,如果目标函数不是前面k-1个预测值,那么肯定是最后一个预测的值。
为了表示成指数分布族,我们定义 T(y) 如下:

T(1)=100T(2)=010T(k1)=001T(k)=000

与之前的指数分布族不一样,之前的模型里 T(y)=y ,而在这里 T(y) 是一个k-1维的向量,我们记 (T(y))i T(y) 的第i个元素的值,再记1{True} = 1, 1{False} = 0.
我们基于以上的概念,做如下变换:
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))1)log(ϕ1)+(T(y))2log(ϕ2)+(1i=1k1T(y))ilog(ϕk))=exp(((T(y))1log(ϕ1/ϕk)+(T(y))2log(ϕ2/ϕk)+(T(y))k1log(ϕk1/ϕk)+log(ϕk))=b(y)exp(ηTT(y)a(η))

其中:
ηa(η)b(y)=log(ϕ1/ϕk)log(ϕ2/ϕk)log(ϕk1/ϕk)=log(ϕk)=1

从这里就可以看到多项式分布就转换成了指数分布族。
其中 ηi=logϕiϕk
我们继续推导:
eηieηiϕkϕki=1keηi=ϕiϕk=ϕi=i=1kϕi=1(1)(2)

所以可以看到 ϕ η 的关系(上面1式和2式做一个合并):
ϕieηi=ϕk=1kj=1eηj

可以得到:
ϕi=eηikj=1eηj

这个 ϕ η 的关系函数,就叫做softmax函数。
按照之前的假设3,有 ηi=θTixi=1,2,3,k1
p(y=i|x;θ)=ϕi=eηikj=1eηj=eθTjxkj=1eθTjx

这种多类的分类问题的模型就是 softmax regression.
我们的假设函数就如下推导出来:
hθ(x)=E[T(y)|x;θ]=ϕ1ϕ2ϕ3ϕk1=eθT1xkj=1eθTjxeθT2xkj=1eθTjxeθT3xkj=1eθTjxeθTk1xkj=1eθTjx

换句话说,假设函数得到的结果是目标值属于全部分类中某一种分类的概率。模型得到后,我们就可以用样本数据来优化参数,从而得到我们的模型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值