- 。
其中,所有可以表示成如下形式的概率分布,都属于指数分布族:
p(y;η)=b(y)exp(ηTT(y)−a(η))(35)
在式(35)中,η成为分布的自然参数(Nature parameter);T(y)是充分统计量(Sufficient statistic),通常情况下T(y)=y。当参数a、b、T都固定的时候,久定义了一个以η为参数的函数族。
3.2、线性回归模型在广义线性模型下的推导
在上文中我们是通过对高斯分布的概率解释来获得确信的J(θ)
的,那我们就尝试着将高斯分布放在广义线性模型下推导,看看能做出来什么模型。
首先我们看向第1点,将高斯分布表示成式(35)的形式:
p(y;μ)=12π‾‾‾√σexp(−(y−μ)22σ2)=12π‾‾‾√σexp(−12y2)⋅exp(μy−12μ2)(36)
其中:
ηT(y)a(η)b(y)=ηT=μ=y=12μ2=12η2=12π‾‾‾√σexp(−12y2)(37)
这就正好表示成了式(35)的形式,符合了第1点假设的要求,接下来我们看向第2点,使我们的假设函数等于高斯分布的期望:
hθ(x)=E[T(y)∣x;θ]=E[y∣x;θ]=μ(38)
最后我们看向第3点,令η=θTx,又因为我们在式(37)中有η=μ,则:
hθ(x)=μ=η=θTx(39)
这就是最开始的式(2)的由来,惊不惊喜,刺不刺激。
3.3、逻辑回归模型在广义线性模型下的推导
逻辑回归的假设里是用到了伯努利分布的,我们同样地将伯努利分布放在广义线性模型下进行推导,看看是不是能得到逻辑回归的hθ(x)
,如式(22)。
还是从第一点看起,把伯努利分布表示成指数分布族的形式:
p(y;ϕ)=ϕy(1−ϕ)1−y=(elogϕ)y(elog(1−ϕ))1−y=exp(ylogϕ+(1−y)log(1−ϕ))=exp((logϕ1−ϕ)y+log(1−ϕ))(40)
相应的参数为:
ηT(y)a(η)b(y)=logϕ1−ϕ⟹ϕ=11+e−η=y=−log(1−ϕ)=log((1−ϕ)−1)=log(1+eη)=1(41)
接下来执行第二点与第三点,令假设函数hθ(x)等于伯努利函数的期望,并且令η=θTx:
hθ(x)=E[T(y)∣x;θ]=E[y∣x;θ]=ϕ=11+e−η=11+e−θTx(42)
这就是逻辑回归的假设函数式(22)的由来了。
除了高斯分布与伯努利分布,大多数的概率分布都能表示成指数分布族的形式,如多项式分布(Multinomial),对有K个离散结果的事件建模;泊松分布(Poisson),对计数过程进行建模,如网站访问量的计数问题;指数分布(Exponential),对有间隔的证书进行建模,如预测公交车的到站时间的问题;等等,然后通过进一步的推导,就能得到各自的线性模型,这大大扩展了线性模型可解决问题的范围。
3.4、多分类回归模型(Softmax regression)在广义线性模型下的推导
3.4.1、多项式分布
接下来再来利用多项式分布进行建模,得到解决多分类问题的模型,它是逻辑回归二分类模型的扩展。
首先我们给出多项式分布的一些公式:
p(y=i)∑i=1kϕi=ϕi=1(43)
其中y∈{1,2,3,⋯,k},又因为ϕi累加为1,我们可以只保留k−1个参数:
ϕk=1−∑i=1k−1ϕi(44)
3.4.2、从两点分布出发
为了有个直观的理解,我们先来看k=2
时的情况。此时p(y=1)=ϕ1,p(y=2)=ϕ2,并且ϕ1+ϕ2=1,于是有ϕ2=1−ϕ1
p(y=1)p(y=2)ϕ1+ϕ2p(y∣ϕ1)=ϕ1=ϕ2=1⟹ϕ2=1−ϕ1=ϕ2−y1ϕy−12=ϕ2−y1(1−ϕ1)y−1⟹p(y∣ϕ)=ϕ2−y(1−ϕ)y−1(45)
当y=1时,只取ϕ1;当y=2时,只取ϕ2,即1−ϕ1,又因为只有一个参数ϕ1了,干脆就直接令ϕ1=ϕ。这与两点分布所要表达的意义是一模一样的,只不过两点分布只做二分类,就采取了取0和1的方式,使得整个式子更简洁(参考式(40)的第一行)。
3.4.3、多项式概率分布
那么在更一般的多分类问题中,其概率分布为:
p(y;ϕ)=ϕI(y=1)1ϕI(y=2)2⋯ϕI(y=k)k(46)
这个式子所要表达的意思是,当y的值取到i的时候,只取相应的ϕi的值。因为当k的取值不同之时,ϕi的指数表示形式会不一样(如上面的例子,同是两点分布,仅是取值不同就会使得其指数表达不一样)。
为了更方便的表达,引入了上面的指示器函数(Indicator function),如果判断条件为真,输出1,反之输出0:
I{Ture}I{False}=1=0(47)
如I{3=3}=1,I{3=2}=0。
所以,当y=1时,式(47)的第一个乘子ϕ1的指数为1,其他所有的乘子的指数全部为0,进一步推广到所有取值的情况,就起到了当y的值取到i的时候,只取相应的ϕi的值的作用。
但是这个指示器函数是一个抽象的东西,如何才能确实地实现这个作用呢?我们给出如下所示的T(y):
T(1)=⎡⎣⎢⎢⎢⎢⎢⎢100⋮0⎤⎦⎥⎥⎥⎥⎥⎥,T(2)=⎡⎣⎢⎢⎢⎢⎢⎢010⋮0⎤⎦⎥⎥⎥⎥⎥⎥,⋯,T(k−1)=⎡⎣⎢⎢⎢⎢⎢⎢000⋮1⎤⎦⎥⎥⎥⎥⎥⎥,T(k)=⎡⎣⎢⎢⎢⎢⎢⎢000⋮0⎤⎦⎥⎥⎥⎥⎥⎥(48)
这样T(y)中的某个元素可以表示成:
T(y)i=I{y=i}(49)
举例来说,当y=2时,T(2)中的第一个元素为:T(2)1=I{2=1}=0;T(2)中的第二个元素为:T(2)2=I{2=2}=1,这就解决了指数上标什么时候取0什么时候取1的问题。
于是我们从式(46)中进一步得到具体的多项式分布的概率分布:
p(y;ϕ)=ϕI{y=1}1ϕI{y=2}2⋯ϕI{y=k}k=ϕI{y=1}1ϕI{y=2}2⋯ϕ1−∑k−1i=1I{y=i}k=ϕT(y)11ϕT(y)22⋯ϕ1−∑k−1i=1T(y)ik(50)
3.4.4、在广义线性模型下的推导
还是从广义线性模型的第一点开始做起,将式(50)的概率分布表示成指数分布族的形式:
p(y;ϕ)=ϕT(y)11ϕT(y)22⋯ϕ1−∑k−1i=1T(y)ik=exp(T(y)1logϕ1+T(y)2logϕ2+⋯+((1−∑i=1k−1T(y)i)logϕk)=exp(T(y)1logϕ1ϕk+T(y)2logϕ2ϕk+⋯+T(y)k−1logϕk−1ϕk+logϕk)=b(y)exp(ηTT(y)−a(η))(51)
我们有:
ηT(y)a(η)b(y)=⎡⎣⎢⎢⎢⎢⎢⎢logϕ1ϕklogϕ2ϕk⋮logϕk−1ϕk⎤⎦⎥⎥⎥⎥⎥⎥=式(48)=−logϕk=1(52)
观察式(52)我们可以发现,向量η的第i个元素为:
ηi=logϕiϕk⟹eηi=ϕiϕk(53)
令其累加,得到:
∑i=1keηi=∑ki=1ϕiϕk=1ϕk⟹ϕk=1∑ki=1eηi(54)
把ϕk带入式(53),即可得到多项式分布的期望:
ϕi=eηi∑ki=1eηi(55)
那么接下来的第二步与第三步,令假设函数hθ(x)等于多项式分布的期望,并且令η=θTx,就显得非常地顺理成章了:
hθ(x)=E[T(y)∣x;θ]=E⎡⎣⎢⎢⎢⎢p(y=1∣x;θ)p(y=2∣x;θ)⋮p(y=k−1∣x;θ)⎤⎦⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢ϕ1ϕ2⋮ϕk−1⎤⎦⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢eη1∑ki=1eηieη2∑ki=1eηi⋮eηk−1∑ki=1eηi⎤⎦⎥⎥⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢eθT1x∑ki=1eθTixeθT2x∑ki=1eθTix⋮eθTk−1x∑ki=1eθTix⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥(56)
这就是softmax回归的模型了。
如果要求取参数θ,还是和线性回归与逻辑回归一样,取其log似然函数做最大似然估计,具体方法可以选择梯度法或者牛顿法。