前言:
《统计学习方法》虽然分别对两者作了介绍,但没有深入讨论它们之间的联系。本文准备从最大熵模型出发,推导出逻辑斯谛回归模型,并解释两者的联系与区别。
本文主要从以下几个方面进行描述:
- 最大熵原理的数学解释
- 如何理解条件分布的极大似然函数
- 将最大熵模型转化为逻辑斯谛模型
一、从最大熵模型到逻辑斯谛回归
(一)最大熵模型
最大熵原理
我们知道(参考第5章)信息熵用于衡量一个随机变量的“不确定性”,熵越大,表示随机变量的不确定性越高。也证明了,当随机变量为均匀分布的时候,它的熵最大。
“最大熵原理”的意思是,当我们预测一个随机变量的取值的时候,最好假设它均匀分布,保留全部不确定性,此时预测的风险最小。举个例子:如果投掷一颗骰子,让你预测各面出现的概率。在没有任何额外信息的情况下,我们会认为骰子是均匀的,各面出现的概率为1/6。从直觉上说,这是最稳妥的策略,不遗漏任何一种可能性,但如何从数学上证明这是最优策略呢?
让我们来把模型简化一下,假设投郑一枚硬币,只有正反面两种结果,其中正面的概率为 p ∈ [ 0 , 1 ] , p \in[0,1], p∈[0,1], 若 p p p 的预测值为 p ^ , p ^ \hat{p}, \hat{p} p^,p^ 应该如何取值呢?
直觉告诉我们应该取0.5,假设硬币是均匀的。为什么?
如果以真实值与预测值的“均方误差(MSE)”作为风险函数,当 p p p 在 [0,1] 的范围内取值时,最 优策略应该使得“均方误差”的数学期望最小化:
函数的期望值 E ( g ( X ) ) = ∫ − ∞ ∞ g ( x ) p ( x ) d x E(g(X))=\int_{-\infty}^{\infty} g(x) p(x) d x E(g(X))=∫−∞∞g(x)p(x)dx
假设 p ^ \hat{p} p^ 在[0,1]范围内均匀分布,则 p ^ \hat{p} p^ 的概率密度函数为 p ( x ) = 1 p(x)=1 p(x)=1
M S E ( p ^ ) = E ( p − p ^ ) 2 = ∫ 0 1 [ ( p − p ^ ) 2 ⋅ 1 ] d p M S E(\hat{p})=E(p-\hat{p})^{2}=\int_{0}^{1}\left[(p-\hat{p})^{2} \cdot 1\right] d p MSE(p^)=E(p−p^)2=∫01[(p−p^)2⋅1]dp
arg min p ^ ∫ 0 1 ( p − p ^ ) 2 d p \underset{\hat{p}}{\arg \min } \int_{0}^{1}(p-\hat{p})^{2} d p p^argmin∫01(p−p^)2dp
g
(
p
^
)
=
∫
0
1
(
p
−
p
^
)
2
d
p
g(\hat{p})=\int_{0}^{1}(p-\hat{p})^{2} d p
g(p^)=∫01(p−p^)2dp
=
[
p
3
3
−
2
p
^
p
2
2
+
p
^
2
p
]
1
0
\quad=\left[\frac{p^{3}}{3}-2 \hat{p} \frac{p^{2}}{2}+\hat{p}^{2} p\right]_{1}^{0}
=[3p3−2p^2p2+p^2p]10
=
p
^
2
−
p
^
+
1
3
\quad=\hat{p}^{2}-\hat{p}+\frac{1}{3}
=p^2−p^+31
显然, p ^ = 0.5 \hat{p}=0.5 p^=0.5 时,MSE 取得最小值,即假设“硬币两面的概率相等”具有最小风险。推广至股 子,可以证明股子“任意两面出现的概率相等”具有最小风险,即每一面概率为1/6。
2. 最大嫡模型
最大嫡模型是一个概率模型,目的是寻找符合要求的条件分布P(Y|X)。在定义最大嫡模型之前,需 要引入下列概念:
联合分布的经验分布: P ~ ( X = x , Y = y ) = ν ( X = x , Y = y ) N \quad \tilde{P}(X=x, Y=y)=\frac{\nu(X=x, Y=y)}{N} P~(X=x,Y=y)=Nν(X=x,Y=y)
边缘分布的经验分布: P ~ ( X = x ) = ν ( X = x ) N \quad \tilde{P}(X=x)=\frac{\nu(X=x)}{N} P~(X=x)=Nν(X=x)
其中 N N N 为训练集样本数, ν ( X = x , Y = y ) \nu(X=x, Y=y) ν(X=x,Y=y) 表示样本 ( x , y ) (x, y) (x,y) 在训练集中出现的次数。
特征函数: f ( x , y ) = { 1 , x 与 y 满足某一事实 0 , 否则 f(x, y)=\left\{\begin{array}{l}1, x \text { 与 } y \text { 满足某一事实 } \\ 0, \text { 否则 }\end{array}\right. f(x,y)={1,x 与 y 满足某一事实 0, 否则
此特征函数具有普遍性,因此得到“最大嫡模型”的一般形式。如果替换为某种特殊形式,可以得 到“逻辑斯締模型”。
特征函数 f f f 关于经验分布 P ~ ( X , Y ) \tilde{P}(X, Y) P~(X,Y) 的期望值:
E P ~ ( f ) = ∑ x , y f ( x , y ) P ~ ( x , y ) E_{\tilde{P}}(f)=\sum_{x, y} f(x, y) \tilde{P}(x, y) EP~(f)=∑x,yf(x,y)P~(x,y)
特征函数 f f f 关于联合分布 P ( X , Y ) = P ~ ( X ) P ( Y ∣ X ) P(X, Y)=\tilde{P}(X) P(Y \mid X) P(X,Y)=P~(X)P(Y∣X) 的期望值:
E P ( f ) = ∑ x , y f ( x , y ) P ~ ( x ) P ( y ∣ x ) E_{P}(f)=\sum_{x, y} f(x, y) \tilde{P}(x) P(y \mid x) EP(f)=x,y∑f(x,y)P~(x)P(y∣x)
我们假设训练集对于模型的学习是有效的,使得 E P ( f ) = E P ˉ ( f ) , E_{P}(f)=E_{\bar{P}}(f), EP(f)=EPˉ(f), 此时特征函数 f i ( x , y ) f_{i}(x, y) fi(x,y) 称为模 型的约束条件。
最大嫡模型:假设满足所有约束条件的模型集合为
C ≡ { P ∈ P ∣ E P ( f i ) = E P ~ ( f i ) , i = 1 , 2 , 3 , … , n } \mathcal{C} \equiv\left\{P \in \mathcal{P} \mid E_{P}\left(f_{i}\right)=E_{\tilde{P}}\left(f_{i}\right), i=1,2,3, \ldots, n\right\} C≡{P∈P∣EP(fi)=EP~(fi),i=1,2,3,…,n}
定义在条件概率分布
P
(
Y
∣
X
)
P(Y \mid X)
P(Y∣X) 上的条件嫡为
H
(
P
)
=
H
(
Y
∣
X
)
=
−
∑
x
∈
X
P
(
x
)
∑
y
∈
Y
P
(
y
∣
x
)
log
P
(
y
∣
x
)
=
−
∑
x
,
y
P
~
(
x
)
P
(
y
∣
x
)
log
P
(
y
∣
x
)
\begin{aligned} H(P)=H(Y \mid X) &=-\sum_{x \in \mathcal{X}} P(x) \sum_{y \in \mathcal{Y}} P(y \mid x) \log P(y \mid x) \\ &=-\sum_{x, y} \tilde{P}(x) P(y \mid x) \log P(y \mid x) \end{aligned}
H(P)=H(Y∣X)=−x∈X∑P(x)y∈Y∑P(y∣x)logP(y∣x)=−x,y∑P~(x)P(y∣x)logP(y∣x)
此处 P P P 不是普通的随机变量,而是条件概率分布 P ( Y ∣ X ) , P(Y \mid X), P(Y∣X), 因此P的嫡相当于Y的条件嫡 (且log 以e为底)。
满足所有约束条件 C \mathcal{C} C 的模型 P ( Y ∣ X ) P(Y \mid X) P(Y∣X) 里面,使得条件嫡 H ( P ) H(P) H(P) 最大的模型,称为“最大嫡模 型”。
最大嫡模型的学习可以分两步:
步骤一:转化为最优化问题
对于给定的训练集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x N , y N ) } , T=\left\{\left(x_{1}, y_{1}\right),\left(x_{2}, y_{2}\right), \ldots,\left(x_{N}, y_{N}\right)\right\}, T={(x1,y1),(x2,y2),…,(xN,yN)}, 特征函数为 f i ( x , y ) , i = 1 , 2 , 3 , … , n f_{i}(x, y), \quad i=1,2,3, \ldots, n fi(x,y),i=1,2,3,…,n
最大商模型的学习等价于以下最优化问题:
max
P
∈
C
H
(
P
)
=
−
∑
x
,
y
P
~
(
x
)
P
(
y
∣
x
)
log
P
(
y
∣
x
)
s.t.
E
P
(
f
i
)
=
E
P
~
(
f
i
)
,
i
=
1
,
2
,
3
,
…
,
n
∑
y
P
(
y
∣
x
)
=
1
\begin{aligned} \max _{P \in \mathcal{C}} H(P)=&-\sum_{x, y} \tilde{P}(x) P(y \mid x) \log P(y \mid x) \\ \text { s.t. } E_{P}\left(f_{i}\right) &=E_{\tilde{P}}\left(f_{i}\right), i=1,2,3, \ldots, n \\ & \sum_{y} P(y \mid x)=1 \end{aligned}
P∈CmaxH(P)= s.t. EP(fi)−x,y∑P~(x)P(y∣x)logP(y∣x)=EP~(fi),i=1,2,3,…,ny∑P(y∣x)=1
一般需进一步转化为求最小值问题:
min
P
∈
C
−
H
(
P
)
=
∑
x
,
y
P
~
(
x
)
P
(
y
∣
x
)
log
P
(
y
∣
x
)
\min _{P \in \mathcal{C}}-H(P)=\sum_{x, y} \tilde{P}(x) P(y \mid x) \log P(y \mid x)
P∈Cmin−H(P)=x,y∑P~(x)P(y∣x)logP(y∣x)
s.t. E P ( f i ) − E P ~ ( f i ) = 0 , i = 1 , 2 , 3 , … , n ∑ y P ( y ∣ x ) = 1 \begin{array}{l} \text {s.t. } E_{P}\left(f_{i}\right)-E_{\tilde{P}}\left(f_{i}\right)=0, i=1,2,3, \ldots, n \\ \quad \sum_{y} P(y \mid x)=1 \end{array} s.t. EP(fi)−EP~(fi)=0,i=1,2,3,…,n∑yP(y∣x)=1
求条件极值,一般采用拉格朗日乘数法,定义拉格朗日函数
L
(
P
,
w
)
:
L(P, w):
L(P,w):
L
(
P
,
w
)
=
∑
x
,
y
P
~
(
x
)
P
(
y
∣
x
)
log
P
(
y
∣
x
)
+
w
0
(
1
−
∑
y
P
(
y
∣
x
)
)
L(P, w)=\sum_{x, y} \tilde{P}(x) P(y \mid x) \log P(y \mid x)+w_{0}\left(1-\sum_{y} P(y \mid x)\right)
L(P,w)=x,y∑P~(x)P(y∣x)logP(y∣x)+w0(1−y∑P(y∣x))
+ ∑ i = 1 n w i ( ∑ x , y f ( x , y ) P ~ ( x , y ) − ∑ x , y f ( x , y ) P ~ ( x ) P ( y ∣ x ) ) +\sum_{i=1}^{n} w_{i}\left(\sum_{x, y} f(x, y) \tilde{P}(x, y)-\sum_{x, y} f(x, y) \tilde{P}(x) P(y \mid x)\right) +i=1∑nwi(x,y∑f(x,y)P~(x,y)−x,y∑f(x,y)P~(x)P(y∣x))
接下来是关于“拉格朗日对偶性”的讨论,后面专门讨论这个问题,此处不再深入展开 了。简单来说,把 P 和
w
\mathrm{w}
w 作为变量,求拉格朗日函数的极值:
∂
L
(
P
,
w
)
∂
P
(
y
∣
x
)
=
∑
x
,
y
P
~
(
x
)
(
log
P
(
y
∣
x
)
+
1
)
−
∑
y
w
0
−
∑
x
,
y
(
P
~
(
x
)
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
=
∑
x
,
y
P
~
(
x
)
(
log
P
(
y
∣
x
)
+
1
−
w
0
−
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
=
0
\begin{aligned} \frac{\partial L(P, w)}{\partial P(y \mid x)} &=\sum_{x, y} \tilde{P}(x)(\log P(y \mid x)+1)-\sum_{y} w_{0}-\sum_{x, y}\left(\tilde{P}(x) \sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) \\ &=\sum_{x, y} \tilde{P}(x)\left(\log P(y \mid x)+1-w_{0}-\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) \\ &=0 \end{aligned}
∂P(y∣x)∂L(P,w)=x,y∑P~(x)(logP(y∣x)+1)−y∑w0−x,y∑(P~(x)i=1∑nwifi(x,y))=x,y∑P~(x)(logP(y∣x)+1−w0−i=1∑nwifi(x,y))=0
由于
P
~
(
x
)
>
0
,
\tilde{P}(x)>0,
P~(x)>0, 因此有
log
P
(
y
∣
x
)
+
1
−
w
0
−
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
=
0
,
\log P(y \mid x)+1-w_{0}-\sum_{i=1}^{n} w_{i} f_{i}(x, y)=0,
logP(y∣x)+1−w0−∑i=1nwifi(x,y)=0, 整理得:
P
(
y
∣
x
)
=
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
+
w
0
−
1
)
=
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
exp
(
1
−
w
0
)
=
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
Z
w
(
x
)
\begin{aligned} P(y \mid x)=\exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)+w_{0}-1\right) &=\frac{\exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right)}{\exp \left(1-w_{0}\right)} \\ &=\frac{\exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right)}{Z_{w}(x)} \end{aligned}
P(y∣x)=exp(i=1∑nwifi(x,y)+w0−1)=exp(1−w0)exp(∑i=1nwifi(x,y))=Zw(x)exp(∑i=1nwifi(x,y))
根据约束条件
∑
y
P
(
y
∣
x
)
=
1
,
\sum_{y} P(y \mid x)=1,
∑yP(y∣x)=1, 上式对y求和得到
Z
w
(
x
)
=
∑
y
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
P
w
(
y
∣
x
)
=
1
Z
w
(
x
)
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
\begin{array}{l} Z_{w}(x)=\sum_{y} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) \\ P_{w}(y \mid x)=\frac{1}{Z_{w}(x)} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) \end{array}
Zw(x)=∑yexp(∑i=1nwifi(x,y))Pw(y∣x)=Zw(x)1exp(∑i=1nwifi(x,y))
Z w ( x ) = ∑ y exp ( ∑ i = 1 n w i f i ( x , y ) ) Z_{w}(x)=\sum_{y} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) Zw(x)=∑yexp(∑i=1nwifi(x,y))
P w ( y ∣ x ) = 1 Z w ( x ) exp ( ∑ i = 1 n w i f i ( x , y ) ) P_{w}(y \mid x)=\frac{1}{Z_{w}(x)} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) Pw(y∣x)=Zw(x)1exp(∑i=1nwifi(x,y))
注意:经此变换消去了拉格朗日乘子 w 0 , w_{0}, w0, 剩下 w 1 , w 2 , … , w n w_{1}, w_{2}, \ldots, w_{n} w1,w2,…,wn
步骤二:求 w 的值
此处可以有两种方法,一是直接求 L ( P w , w ) L\left(P_{w}, w\right) L(Pw,w) 的极大值,确定参数 w w w
在确定 P w ( y ∣ x ) P_{w}(y \mid x) Pw(y∣x) 后,再通过 ∂ L ( P w , w ) ∂ w = 0 \frac{\partial L\left(P_{w}, w\right)}{\partial w}=0 ∂w∂L(Pw,w)=0 求 w w w 的值,得到 w ∗ w^{*} w∗ 。
二是通过“极大似然法”得到对数似然函数。由于书中的叙述较为精简,这里补充一下如何得到这 个似然函数:
首先看“单变量”的似然函数:
L ( X = x 1 , X = x 2 , … , X = x N ; θ ) = ∏ i = 1 N P ( X = x i ; θ ) L\left(X=x_{1}, X=x_{2}, \ldots, X=x_{N} ; \theta\right)=\prod_{i=1}^{N} P\left(X=x_{i} ; \theta\right) L(X=x1,X=x2,…,X=xN;θ)=∏i=1NP(X=xi;θ)
设N为样本数, x j ∈ { a 1 , a 2 , … , a K } , x_{j} \in\left\{a_{1}, a_{2}, \ldots, a_{K}\right\}, xj∈{a1,a2,…,aK}, 即 × \times × 有 K \mathrm{K} K 种可能取值。
L ( x ; θ ) = P ( X = a 1 ; θ ) n 1 P ( X = a 2 ; θ ) n 2 … P ( X = a K ; θ ) n K L(x ; \theta)=P\left(X=a_{1} ; \theta\right)^{n_{1}} P\left(X=a_{2} ; \theta\right)^{n_{2}} \ldots P\left(X=a_{K} ; \theta\right)^{n_{K}} L(x;θ)=P(X=a1;θ)n1P(X=a2;θ)n2…P(X=aK;θ)nK
n 1 , n 2 , … , n K n_{1}, n_{2}, \ldots, n_{K} n1,n2,…,nK 是取值为 a j a_{j} aj 的样本的个数,可以用 ν ( X = a j ) \nu\left(X=a_{j}\right) ν(X=aj) 表示。
所以, L ( x ; θ ) = ∏ j = 1 K P ( X = a j ; θ ) ν ( X = a j ) \quad L(x ; \theta)=\prod_{j=1}^{K} P\left(X=a_{j} ; \theta\right)^{\nu\left(X=a_{j}\right)} L(x;θ)=∏j=1KP(X=aj;θ)ν(X=aj)
接下来看书中的情况,求 P ( Y ∣ X ) P(Y \mid X) P(Y∣X) 的似然函数,也就是“多变量”条件分布的似然函数:
L ( P ) = P ( Y = y 1 ∣ X = x 1 ) ν ( x 1 , y 1 ) P ( Y = y 2 ∣ X = x 2 ) ν ( x 2 , y 2 ) … P ( Y = y K ∣ X = x K ) ν ( x K , y K ) = ∏ x , y P ( y ∣ x ) ν ( x , y ) \begin{aligned} L(P) &=P\left(Y=y_{1} \mid X=x_{1}\right)^{\nu\left(x_{1}, y_{1}\right)} P\left(Y=y_{2} \mid X=x_{2}\right)^{\nu\left(x_{2}, y_{2}\right)} \ldots P\left(Y=y_{K} \mid X=x_{K}\right)^{\nu\left(x_{K}, y_{K}\right)} \\ &=\prod_{x, y} P(y \mid x)^{\nu(x, y)} \end{aligned} L(P)=P(Y=y1∣X=x1)ν(x1,y1)P(Y=y2∣X=x2)ν(x2,y2)…P(Y=yK∣X=xK)ν(xK,yK)=x,y∏P(y∣x)ν(x,y)
如果对L§ 开N次方,得到
L
∗
(
P
)
=
∏
x
,
y
P
(
y
∣
x
)
ν
(
x
,
y
)
N
=
∏
x
,
y
P
(
y
∣
x
)
P
~
(
x
,
y
)
,
L^{*}(P)=\prod_{x, y} P(y \mid x)^{\frac{\nu(x, y)}{N}}=\prod_{x, y} P(y \mid x)^{\tilde{P}(x, y)},
L∗(P)=∏x,yP(y∣x)Nν(x,y)=∏x,yP(y∣x)P~(x,y), 对求极值无影响,于是得到对数似然函数:
L
P
~
(
P
w
)
=
log
∏
x
,
y
P
(
y
∣
x
)
P
~
(
x
,
y
)
=
∑
x
,
y
P
~
(
x
,
y
)
log
P
(
y
∣
x
)
L_{\tilde{P}}\left(P_{w}\right)=\log \prod_{x, y} P(y \mid x)^{\tilde{P}(x, y)}=\sum_{x, y} \tilde{P}(x, y) \log P(y \mid x)
LP~(Pw)=logx,y∏P(y∣x)P~(x,y)=x,y∑P~(x,y)logP(y∣x)
把“步骤一”得到的 P ( y ∣ x ) \mathrm{P}(\mathrm{y} \mid \mathrm{x}) P(y∣x) 代入上式,得到
L P ~ ( P w ) = ∑ x , y P ~ ( x , y ) ∑ i = 1 n w i f i ( x , y ) − ∑ x , y P ~ ( x , y ) log Z w ( x ) = ∑ x , y P ~ ( x , y ) ∑ i = 1 n w i f i ( x , y ) − ∑ x P ~ ( x ) log Z w ( x ) = L ( P w , w ) \begin{aligned} L_{\tilde{P}}\left(P_{w}\right) &=\sum_{x, y} \tilde{P}(x, y) \sum_{i=1}^{n} w_{i} f_{i}(x, y)-\sum_{x, y} \tilde{P}(x, y) \log Z_{w}(x) \\ &=\sum_{x, y} \tilde{P}(x, y) \sum_{i=1}^{n} w_{i} f_{i}(x, y)-\sum_{x} \tilde{P}(x) \log Z_{w}(x) \\ &=L\left(P_{w}, w\right) \end{aligned} LP~(Pw)=x,y∑P~(x,y)i=1∑nwifi(x,y)−x,y∑P~(x,y)logZw(x)=x,y∑P~(x,y)i=1∑nwifi(x,y)−x∑P~(x)logZw(x)=L(Pw,w)
最后的结论证明,最大嫡模型的极大似然估计等价于对偶函数极大化。
当参数 w 确定以后,最大嫡模型等于:
Z w ( x ) = ∑ y exp ( ∑ i = 1 n w i f i ( x , y ) ) Z_{w}(x)=\sum_{y} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) Zw(x)=∑yexp(∑i=1nwifi(x,y))
P w ( y ∣ x ) = 1 Z w ( x ) exp ( ∑ i = 1 n w i f i ( x , y ) ) P_{w}(y \mid x)=\frac{1}{Z_{w}(x)} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) Pw(y∣x)=Zw(x)1exp(∑i=1nwifi(x,y))
这里的 x ∈ R n , y ∈ { 1 , 2 , … , K } , w ∈ R n x \in R^{n}, \quad y \in\{1,2, \ldots, K\}, \quad w \in R^{n} x∈Rn,y∈{1,2,…,K},w∈Rn 为权值向量, f i ( x , y ) , i = 1 , 2 , 3 , … , n \quad f_{i}(x, y), i=1,2,3, \ldots, n fi(x,y),i=1,2,3,…,n 为特征函数。
(二)从最大嫡模型到逻辑斯締回归
之前说过,逻辑斯締回归是最大嫡模型的一个特例,而且关键在于特征函数的设置:
(1) 二分类问题
假设类别 y ∈ { 0 , 1 } , y \in\{0,1\}, y∈{0,1}, 且 x ∈ R n , x \in R^{n}, x∈Rn, 它的 n \mathrm{n} n 个特征函数为
f i ( x , y ) = { x i , 当 y = 1 0 , 当 y = 0 f_{i}(x, y)=\left\{\begin{array}{l}x_{i}, \text { 当 } y=1 \\ 0, \text { 当 } y=0\end{array}\right. fi(x,y)={xi, 当 y=10, 当 y=0 注意:作为二值函数,它的非零值不一定取1,而是 x i x_{i} xi 。
那么, Z w ( x ) = ∑ y exp ( ∑ i = 1 n w i f i ( x , y ) ) = exp ( ∑ i = 1 n w i f i ( x , y = 1 ) ) + exp ( ∑ i = 1 n w i f i ( x , y = 0 ) ) Z_{w}(x)=\sum_{y} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right)=\exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y=1)\right)+\exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y=0)\right) Zw(x)=∑yexp(∑i=1nwifi(x,y))=exp(∑i=1nwifi(x,y=1))+exp(∑i=1nwifi(x,y=0))
= exp ( ∑ i = 1 n w i x i ) + 1 P w ( y = 1 ∣ x ) = exp ( ∑ i = 1 n w i x i ) exp ( ∑ i = 1 n w i x i ) + 1 P w ( y = 0 ∣ x ) = 1 exp ( ∑ i = 1 n w i x i ) + 1 \begin{aligned} &=\exp \left(\sum_{i=1}^{n} w_{i} x_{i}\right)+1 \\ P_{w}(y=1 \mid x) &=\frac{\exp \left(\sum_{i=1}^{n} w_{i} x_{i}\right)}{\exp \left(\sum_{i=1}^{n} w_{i} x_{i}\right)+1} \\ P_{w}(y=0 \mid x) &=\frac{1}{\exp \left(\sum_{i=1}^{n} w_{i} x_{i}\right)+1} \end{aligned} Pw(y=1∣x)Pw(y=0∣x)=exp(i=1∑nwixi)+1=exp(∑i=1nwixi)+1exp(∑i=1nwixi)=exp(∑i=1nwixi)+11
(2)多分类问题
这里需要对符号进行一定的修改
设类别 y ∈ { 1 , 2 , … , K } y \in\{1,2, \ldots, K\} y∈{1,2,…,K} ,对于不同类别,有不同的参数向量 w 1 , w 2 , … , w K , w_{1}, w_{2}, \ldots, w_{K}, w1,w2,…,wK, 注意 w k = ( w k ( 1 ) , w k ( 2 ) , … , w k ( n ) ) T , w_{k}=\left(w_{k}^{(1)}, w_{k}^{(2)}, \ldots, w_{k}^{(n)}\right)^{T}, wk=(wk(1),wk(2),…,wk(n))T, 即每个参数向量有 n \mathrm{n} n 个分量。相应地,样本 x \mathrm{x} x 有 n \mathrm{n} n 个特征 x = ( x ( 1 ) , x ( 2 ) , … , x ( n ) ) T x=\left(x^{(1)}, x^{(2)}, \ldots, x^{(n)}\right)^{T} x=(x(1),x(2),…,x(n))T
f
i
(
x
,
y
)
=
{
x
(
i
)
,
当
y
=
k
0
,
当
y
=
0
f_{i}(x, y)=\left\{\begin{array}{l}x^{(i)}, \text { 当 } y=k \\ 0, \text { 当 } y=0\end{array}\right.
fi(x,y)={x(i), 当 y=k0, 当 y=0
那么,
Z
w
(
x
)
=
∑
y
exp
(
∑
i
=
1
n
w
i
f
i
(
x
,
y
)
)
=
∑
k
=
1
K
exp
(
∑
i
=
1
n
w
k
(
i
)
x
(
i
)
)
P
(
Y
=
k
∣
x
)
=
exp
(
∑
i
=
1
n
w
k
(
i
)
x
(
i
)
)
∑
k
=
1
K
exp
(
∑
i
=
1
n
w
k
(
i
)
x
(
i
)
)
\begin{aligned} Z_{w}(x) &=\sum_{y} \exp \left(\sum_{i=1}^{n} w_{i} f_{i}(x, y)\right) \\ &=\sum_{k=1}^{K} \exp \left(\sum_{i=1}^{n} w_{k}^{(i)} x^{(i)}\right) \\ P(Y=k \mid x) &=\frac{\exp \left(\sum_{i=1}^{n} w_{k}^{(i)} x^{(i)}\right)}{\sum_{k=1}^{K} \exp \left(\sum_{i=1}^{n} w_{k}^{(i)} x^{(i)}\right)} \end{aligned}
Zw(x)P(Y=k∣x)=y∑exp(i=1∑nwifi(x,y))=k=1∑Kexp(i=1∑nwk(i)x(i))=∑k=1Kexp(∑i=1nwk(i)x(i))exp(∑i=1nwk(i)x(i))
这实际上是 softmax 分类器的形式。
下面从从广义线性模型的角度来看逻辑斯谛回归
二、指数族分布
什么是指数族分布呢?它是一个分布家族,包括:高斯分布、伯努利分布、二项分布、泊松分布等常见分布。
(1)一般形式
指数族分布具有以下一般形式:(此处使用CS229的符号规则)
p
(
y
;
η
)
=
b
(
y
)
exp
(
η
T
T
(
y
)
−
a
(
η
)
)
p(y ; \eta)=b(y) \exp \left(\eta^{T} T(y)-a(\eta)\right)
p(y;η)=b(y)exp(ηTT(y)−a(η))
其中: y y y 是分布对应的随机变量, η \eta η 称为“自然参数”,一般为向量。 T ( y ) T(y) T(y) 是 y的充分统计 量,就是足以对表随机变量 y 主要特征的值,例如:样本均值、样本方差等。
η T T ( y ) \eta^{T} T(y) ηTT(y) 一般表示两个向量的内积, η \eta η 与 T ( y ) T(y) T(y) 有相同的维度。如果 η \eta η 为标量,则 T ( y ) T(y) T(y) 也为标 量, η T T ( y ) \eta^{T} T(y) ηTT(y) 表示两个数的乘积。
a ( η ) a(\eta) a(η) 称为 log \log log 配分函数,它主要起到归一化的作用,使得密度函数积分结果为1。
(2) 高斯分布
为了简化计算,假设高斯分布的方差为1:
p
(
y
;
μ
)
=
1
2
π
exp
(
−
1
2
(
y
−
μ
)
2
)
=
1
2
π
exp
(
−
1
2
y
2
)
⋅
(
μ
y
−
1
2
μ
2
)
\begin{aligned} p(y ; \mu) &=\frac{1}{\sqrt{2 \pi}} \exp \left(-\frac{1}{2}(y-\mu)^{2}\right) \\ &=\frac{1}{\sqrt{2 \pi}} \exp \left(-\frac{1}{2} y^{2}\right) \cdot\left(\mu y-\frac{1}{2} \mu^{2}\right) \end{aligned}
p(y;μ)=2π1exp(−21(y−μ)2)=2π1exp(−21y2)⋅(μy−21μ2)
它的指数族形式如下:
η = μ T ( y ) = y a ( η ) = μ 2 / 2 = η 2 / 2 b ( y ) = ( 1 / 2 π ) exp ( − y 2 / 2 ) \begin{aligned} \eta &=\mu \\ T(y) &=y \\ a(\eta) &=\mu^{2} / 2=\eta^{2} / 2 \\ b(y) &=(1 / \sqrt{2 \pi}) \exp \left(-y^{2} / 2\right) \end{aligned} ηT(y)a(η)b(y)=μ=y=μ2/2=η2/2=(1/2π)exp(−y2/2)
(3) 伯努利分布
p
(
y
;
ϕ
)
=
ϕ
y
(
1
−
ϕ
)
1
−
y
=
exp
(
y
log
ϕ
+
(
1
−
y
)
log
(
1
−
ϕ
)
)
=
exp
(
y
log
ϕ
1
−
ϕ
+
log
(
1
−
ϕ
)
)
\begin{aligned} p(y ; \phi) &=\phi^{y}(1-\phi)^{1-y} \\ &=\exp (y \log \phi+(1-y) \log (1-\phi)) \\ &=\exp \left(y \log \frac{\phi}{1-\phi}+\log (1-\phi)\right) \end{aligned}
p(y;ϕ)=ϕy(1−ϕ)1−y=exp(ylogϕ+(1−y)log(1−ϕ))=exp(ylog1−ϕϕ+log(1−ϕ))
它的指数族形式如下:
η
=
log
ϕ
1
−
ϕ
,
e
η
=
ϕ
1
−
ϕ
,
1
+
e
η
=
1
1
−
ϕ
\eta=\log \frac{\phi}{1-\phi}, e^{\eta}=\frac{\phi}{1-\phi}, 1+e^{\eta}=\frac{1}{1-\phi}
η=log1−ϕϕ,eη=1−ϕϕ,1+eη=1−ϕ1
T ( y ) = y a ( η ) = − log ( 1 − ϕ ) = log ( 1 + e η ) b ( y ) = 1 \begin{array}{l} T(y)=y \\ a(\eta)=-\log (1-\phi)=\log \left(1+e^{\eta}\right) \\ b(y)=1 \end{array} T(y)=ya(η)=−log(1−ϕ)=log(1+eη)b(y)=1
三、广义线性模型
广义线性模型用来解决“给定 x x x 预测 y y y " 的问题,它基于以下三个假设:
y ∣ x ; θ ∼ y \mid x ; \theta \sim y∣x;θ∼ ExponentialFamily ( η ) (\eta) (η)
h θ ( x ) = E [ T ( y ) ∣ x ] , h_{\theta}(x)=E[T(y) \mid x], hθ(x)=E[T(y)∣x], 经常假设 T ( y ) = y T(y)=y T(y)=y
η = θ T x \eta=\theta^{T} x η=θTx
假设一: 认为 y \mathrm{y} y 是服从指数族分布的。由于广义线性模型既可用于“回归”,也可用于“分 类”,因此不同分布将生成不同模型。回归对应连续型分布,分类对应离散型分布。
假设二: h θ ( x ) h_{\theta}(x) hθ(x) 就是需要“学习”的模型,它等于 E [ y ∣ x ] E[y \mid x] E[y∣x] 。为什么? y ∣ x y \mid x y∣x 就是给定数据x的条件 下,预测 y \mathrm{y} y 的值,它的数学期望不就是预测模型本身吗?
假设三:“自然参数”是样本x的线性组合,因此它是一个“线性模型”。
见证奇迹的时刻,看如何通过三个假设,得到不同的线性模型:
(1) 线性回归
线性回归对应高斯分布: y ∣ x ∼ N ( μ , 1 ) y \mid x \sim N(\mu, 1) y∣x∼N(μ,1) 。此假设的合理性在于,如果 y = h ( x ) \mathrm{y}=\mathrm{h}(\mathrm{x}) y=h(x) 为线性模型,实际 值与预测值的误差是由随机扰动引起的,这部分误差是服从高斯分布的。
根据假设二,线性模型有如下形式:
h θ ( x ) = E [ y ∣ x ] = μ … 高斯分布的数学期望 = η … 高斯分布的指数族形式 = θ T x … 假设三 \begin{aligned} &h_{\theta}(x)=E[y \mid x]\\ &\begin{array}{lll} =\mu & \ldots & \text { 高斯分布的数学期望 } \end{array}\\ &=\eta \quad \ldots \quad \text { 高斯分布的指数族形式 }\\ &=\theta^{T} x \quad \ldots \quad \text { 假设三 } \end{aligned} hθ(x)=E[y∣x]=μ… 高斯分布的数学期望 =η… 高斯分布的指数族形式 =θTx… 假设三
线性回归模型的输出: y = h θ ( x ) y=h_{\theta}(x) y=hθ(x)
(2) Logistic Regression
逻辑斯締回归对应伯努利分布: y ∣ x ∼ y \mid x \sim y∣x∼ Bernoulli ( ϕ ) , (\phi), (ϕ), 逻辑斯締回归的输出,并不是分类结果, 而是一个概率 p ( y = 1 ∣ x ) ∘ \mathrm{p}(\mathrm{y}=1 \mid \mathrm{x})_{\circ} p(y=1∣x)∘ 当此概率大于0.5时 , y = 1 , , \mathrm{y}=1, ,y=1, 否则 y = 0 \mathrm{y}=0 y=0 。因此它等于伯努利分布的概率参数。
h θ ( x ) = E [ y ∣ x ] = ϕ … 伯努利分布的数学期望 = 1 1 + e − η … 伯努利分布的指数族形式 = 1 1 + e − θ T x ⋯ 假设三 \begin{aligned} &h_{\theta}(x)=E[y \mid x]\\ &\begin{array}{lll} =\phi \quad \ldots & \text { 伯努利分布的数学期望 } \end{array}\\ &=\frac{1}{1+e^{-\eta}} \quad \ldots \quad \text { 伯努利分布的指数族形式 }\\ &=\frac{1}{1+e^{-\theta^{T} x}} \quad \cdots\text { 假设三 } \end{aligned} hθ(x)=E[y∣x]=ϕ… 伯努利分布的数学期望 =1+e−η1… 伯努利分布的指数族形式 =1+e−θTx1⋯ 假设三
逻辑斯締回归的分类结果: y = arg max y P ( Y = y ∣ x ) = arg max y h θ ( x ) y=\underset{y}{\arg \max } P(Y=y \mid x)=\underset{y}{\arg \max } h_{\theta}(x) y=yargmaxP(Y=y∣x)=yargmaxhθ(x)
(3) Softmax Regression
Softmax 与 多项逻辑斯締回归是等价的,下面将证明这一点,它被用于解决多分类问题。由于涉及多分类,不能简单地假设 T ( y ) = y , T(y)=y, T(y)=y, 此时 η \eta η 与 T ( y ) T(y) T(y) 都是向量。下面将展示这个较为复杂的推 导过程:
设 y ∈ { 1 , 2 , … , k } y \in\{1,2, \ldots, k\} y∈{1,2,…,k}
用分布参数 ϕ i \phi_{i} ϕi 表示 y \mathrm{y} y 属于第 i 分类的概率:
当 i = 1 , 2 , … , k − 1 i=1,2, \ldots, k-1 i=1,2,…,k−1 时, ϕ i = p ( y = i ; ϕ ) \quad \phi_{i}=p(y=i ; \phi) ϕi=p(y=i;ϕ)
当 i = k i=k i=k 时 , ϕ k = p ( y = k ; ϕ ) = 1 − ∑ i = 1 k − 1 ϕ i , \quad \phi_{k}=p(y=k ; \phi)=1-\sum_{i=1}^{k-1} \phi_{i} ,ϕk=p(y=k;ϕ)=1−∑i=1k−1ϕi
由此可见,上述 k \mathrm{k} k 个参数 ϕ i \phi_{i} ϕi 并非完全独立的,它们的和等于1。
令 T ( y ) ∈ R k − 1 ( T(y) \in R^{k-1} \quad( T(y)∈Rk−1( 一个 k − 1 \mathrm{k}-1 k−1 维的向量) : : :
T ( 1 ) = ( 1 0 ⋮ 0 ) , T ( 2 ) = ( 0 1 ⋮ 0 ) , … , T ( k − 1 ) = ( 0 0 ⋮ 1 ) , T ( k ) = ( 0 0 ⋮ 0 ) T(1)=\left(\begin{array}{c}1 \\ 0 \\ \vdots \\ 0\end{array}\right), \quad T(2)=\left(\begin{array}{c}0 \\ 1 \\ \vdots \\ 0\end{array}\right), \ldots, T(k-1)=\left(\begin{array}{c}0 \\ 0 \\ \vdots \\ 1\end{array}\right), \quad T(k)=\left(\begin{array}{c}0 \\ 0 \\ \vdots \\ 0\end{array}\right) T(1)=⎝⎜⎜⎜⎛10⋮0⎠⎟⎟⎟⎞,T(2)=⎝⎜⎜⎜⎛01⋮0⎠⎟⎟⎟⎞,…,T(k−1)=⎝⎜⎜⎜⎛00⋮1⎠⎟⎟⎟⎞,T(k)=⎝⎜⎜⎜⎛00⋮0⎠⎟⎟⎟⎞
其中 T ( y ) i T(y)_{i} T(y)i 表示向量 T ( y ) T(y) T(y) 的 第 i 个分量。
接下来是关键一步,由于 T ( y ) i = 1 { y = i } = { 1 , y = i 0 , y ≠ i , T(y)_{i}=1\{y=i\}=\left\{\begin{array}{l}1, y=i \\ 0, y \neq i\end{array},\right. T(y)i=1{y=i}={1,y=i0,y=i, 可用“示性函数”表示,
E [ T ( y ) i ] = E [ 1 { y = i } ] = 1 ⋅ p ( y = i ) + 0 ⋅ p ( y ≠ i ) = p ( y = i ) = ϕ i \begin{aligned} E\left[T(y)_{i}\right]=E[1\{y=i\}] &=1 \cdot p(y=i)+0 \cdot p(y \neq i) \\ &=p(y=i) \\ &=\phi_{i} \end{aligned} E[T(y)i]=E[1{y=i}]=1⋅p(y=i)+0⋅p(y=i)=p(y=i)=ϕi
由此得到 softmax 的概率质量函数:
p
(
y
;
ϕ
)
=
p
(
y
=
i
;
ϕ
)
=
p
(
y
=
1
)
1
{
y
=
1
}
p
(
y
=
2
)
1
{
y
=
2
}
…
p
(
y
=
k
)
1
{
y
=
k
}
=
ϕ
1
1
{
y
=
1
}
ϕ
2
1
{
y
=
2
}
…
ϕ
k
1
−
∑
i
=
1
k
−
1
1
{
y
=
i
}
=
ϕ
1
T
(
y
)
1
ϕ
2
T
(
y
)
2
…
ϕ
k
1
−
∑
i
=
1
k
−
1
T
(
y
)
i
=
exp
(
T
(
y
)
1
log
(
ϕ
1
)
+
T
(
y
)
2
log
(
ϕ
2
)
+
…
+
(
1
−
∑
i
=
1
k
−
1
T
(
y
)
i
)
log
ϕ
k
)
\begin{aligned} p(y ; \phi)=p(y=i ; \phi) &=p(y=1)^{1\{y=1\}} p(y=2)^{1\{y=2\}} \ldots p(y=k)^{1\{y=k\}} \\ &=\phi_{1}^{1\{y=1\}} \phi_{2}^{1\{y=2\}} \ldots \phi_{k}^{1-\sum_{i=1}^{k-1} 1\{y=i\}} \\ &=\phi_{1}^{T(y)_{1}} \phi_{2}^{T(y)_{2}} \ldots \phi_{k}^{1-\sum_{i=1}^{k-1} T(y)_{i}} \\ &=\exp \left(T(y)_{1} \log \left(\phi_{1}\right)+T(y)_{2} \log \left(\phi_{2}\right)+\ldots+\left(1-\sum_{i=1}^{k-1} T(y)_{i}\right) \log \phi_{k}\right) \end{aligned}
p(y;ϕ)=p(y=i;ϕ)=p(y=1)1{y=1}p(y=2)1{y=2}…p(y=k)1{y=k}=ϕ11{y=1}ϕ21{y=2}…ϕk1−∑i=1k−11{y=i}=ϕ1T(y)1ϕ2T(y)2…ϕk1−∑i=1k−1T(y)i=exp(T(y)1log(ϕ1)+T(y)2log(ϕ2)+…+(1−i=1∑k−1T(y)i)logϕk)
如果把 ( 1 − ∑ i = 1 k − 1 T ( y ) i ) log ϕ k \left(1-\sum_{i=1}^{k-1} T(y)_{i}\right) \log \phi_{k} (1−∑i=1k−1T(y)i)logϕk 展开,分别合并到前 k − 1 \mathrm{k}-1 k−1 项里面,可得
p ( y ; ϕ ) = exp ( T ( y ) 1 log ( ϕ 1 ϕ k ) + T ( y ) 2 log ( ϕ 2 ϕ k ) + … + T ( y ) k − 1 log ( ϕ k − 1 ϕ k ) + log ( ϕ k ) ) = b ( y ) exp ( η T T ( y ) − a ( η ) ) η = ( log ϕ 1 ϕ k log ϕ 2 ϕ k ⋮ log ϕ k − 1 ϕ k ) , T ( y ) = ( T ( y ) 1 T ( y ) 2 ⋮ T ( y ) k − 1 ) , a ( η ) = − log ( ϕ k ) , b ( y ) = 1 \begin{array}{c} p(y ; \phi)=\exp \left(T(y)_{1} \log \left(\frac{\phi_{1}}{\phi_{k}}\right)+T(y)_{2} \log \left(\frac{\phi_{2}}{\phi_{k}}\right)+\ldots+T(y)_{k-1} \log \left(\frac{\phi_{k-1}}{\phi_{k}}\right)+\log \left(\phi_{k}\right)\right) \\ =b(y) \exp \left(\eta^{T} T(y)-a(\eta)\right) \\ \eta=\left(\begin{array}{c} \log \frac{\phi_{1}}{\phi_{k}} \\ \log \frac{\phi_{2}}{\phi_{k}} \\ \vdots \\ \log \frac{\phi_{k-1}}{\phi_{k}} \end{array}\right), \quad T(y)=\left(\begin{array}{c} T(y)_{1} \\ T(y)_{2} \\ \vdots \\ T(y)_{k-1} \end{array}\right), \quad a(\eta)=-\log \left(\phi_{k}\right), \quad b(y)=1 \end{array} p(y;ϕ)=exp(T(y)1log(ϕkϕ1)+T(y)2log(ϕkϕ2)+…+T(y)k−1log(ϕkϕk−1)+log(ϕk))=b(y)exp(ηTT(y)−a(η))η=⎝⎜⎜⎜⎜⎛logϕkϕ1logϕkϕ2⋮logϕkϕk−1⎠⎟⎟⎟⎟⎞,T(y)=⎝⎜⎜⎜⎛T(y)1T(y)2⋮T(y)k−1⎠⎟⎟⎟⎞,a(η)=−log(ϕk),b(y)=1
以上就是 softmax 的指数族形式。
最后,寻找“自然参数” η \eta η 与 “分布参数” ϕ \phi ϕ 的关系:
由于 η i = log ϕ i ϕ k , \eta_{i}=\log \frac{\phi_{i}}{\phi_{k}}, ηi=logϕkϕi, 那么 e η i = ϕ i ϕ k , e^{\eta_{i}}=\frac{\phi_{i}}{\phi_{k}}, eηi=ϕkϕi, 即 ϕ k e η i = ϕ i \phi_{k} e^{\eta_{i}}=\phi_{i} ϕkeηi=ϕi
把上式左右两边累加起来,得到:
ϕ
k
∑
i
=
1
k
e
η
i
=
∑
i
=
1
k
ϕ
i
=
1
,
即
ϕ
k
=
1
∑
i
=
1
k
e
η
i
\phi_{k} \sum_{i=1}^{k} e^{\eta_{i}}=\sum_{i=1}^{k} \phi_{i}=1, \text { 即 } \phi_{k}=\frac{1}{\sum_{i=1}^{k} e^{\eta_{i}}}
ϕki=1∑keηi=i=1∑kϕi=1, 即 ϕk=∑i=1keηi1
将“即”字后面的两个式子整理一下,得到: ϕ i = e η i ∑ j = 1 k e η j … \phi_{i}=\frac{e^{\eta_{i}}}{\sum_{j=1}^{k} e^{\eta_{j}}} \ldots ϕi=∑j=1keηjeηi… 式
但请注意: η \eta η 只有 k − 1 \mathrm{k}-1 k−1 个分量,如果令 η k = 0 , \eta_{k}=0, ηk=0, 使得
ϕ k = e η k ∑ i = 1 k e η i = e η k ∑ i = 1 k − 1 e η i + e η k = 1 ∑ i = 1 k − 1 e η i + 1 … \phi_{k}=\frac{e^{\eta_{k}}}{\sum_{i=1}^{k} e^{\eta_{i}}}=\frac{e^{\eta_{k}}}{\sum_{i=1}^{k-1} e^{\eta_{i}}+e^{\eta_{k}}}=\frac{1}{\sum_{i=1}^{k-1} e^{\eta_{i}}+1} \ldots ϕk=∑i=1keηieηk=∑i=1k−1eηi+eηkeηk=∑i=1k−1eηi+11… 式
刚好满足 ∑ i = 1 k ϕ i = 1 \sum_{i=1}^{k} \phi_{i}=1 ∑i=1kϕi=1 。
根据假设三:
η
i
=
θ
i
T
x
,
\eta_{i}=\theta_{i}^{T} x,
ηi=θiTx, 其中
θ
k
=
0
,
\theta_{k}=0,
θk=0, 将其代入式 (1)
、
、
、 式 (2) 得到
当
i
=
1
,
2
,
…
,
k
−
1
i=1,2, \ldots, k-1
i=1,2,…,k−1 时
,
ϕ
i
=
p
(
y
=
i
;
ϕ
)
=
e
i
θ
i
x
∑
j
=
1
k
e
θ
j
T
x
…
, \quad \phi_{i}=p(y=i ; \phi)=\frac{e_{i}^{\theta_{i} x}}{\sum_{j=1}^{k} e^{\theta_{j}^{T} x}} \ldots
,ϕi=p(y=i;ϕ)=∑j=1keθjTxeiθix… 式 (3)
当 i = k i=k i=k 时, ϕ k = p ( y = k ; ϕ ) = 1 ∑ i = 1 k − 1 e θ i T x + 1 … \quad \phi_{k}=p(y=k ; \phi)=\frac{1}{\sum_{i=1}^{k-1} e^{\theta_{i}^{T} x}+1} \ldots ϕk=p(y=k;ϕ)=∑i=1k−1eθiTx+11… 式
上述式 (3) 、式 (4) 就是 Softmax Regression 模型,与多项逻辑斯締回归模型一样。
ϕ
i
,
i
=
1
,
…
,
k
\phi_{i}, i=1, \ldots, k
ϕi,i=1,…,k 中概率最大的那一项,决定了
y
\mathrm{y}
y 的取值。
四、线性从何而来
如果选择一个公式代表“逻辑斯締回归”,该选择哪个公式呢?我认为是:
log P ( Y = 1 ∣ X ) P ( Y = 0 ∣ X ) = θ T x \log \frac{P(Y=1 \mid X)}{P(Y=0 \mid X)}=\theta^{T} x logP(Y=0∣X)P(Y=1∣X)=θTx 或者 log p 1 − p = θ T x , \log \frac{p}{1-p}=\theta^{T} x, log1−pp=θTx,
其中 p = P ( Y = 1 ∣ X ) p=P(Y=1 \mid X) p=P(Y=1∣X)
也就是“对数几率”等于 x \mathrm{x} x 的线性函数。
从这个公式出发,可以推导出逻辑斯締回归的全部公式。
如果把右侧的线性模型记作 s,上式可以表示为
log p 1 − p = s \log \frac{p}{1-p}=s log1−pp=s 即 p = 1 1 + e − s , p=\frac{1}{1+e^{-s}}, p=1+e−s1, 由此可见 p \mathrm{p} p 是 s \mathrm{s} s 的 sigmoid 函数。
sigmoid 的作用是将 s ∈ ( − ∞ , ∞ ) s \in(-\infty, \infty) s∈(−∞,∞) 映射至 p ∈ ( 0 , 1 ) p \in(0,1) p∈(0,1) ,于是分类结果 s:正数(代表正类),负 数(代表负类)被转换为一个处于0到1之间的概率值 p ∘ \mathrm{p}_{\circ} p∘
回顾感知机模型(线性模型),通过模型的符号标记分类结果,逻辑斯締回归只是进一步把符号转 换为概率值。如果把线性模型替换为其他非线性模型,只要用正数、负数表示不同分类,将其代入 sigmoid 函数,仍可得到不同的概率输出。
最后一个问题:为什么选择线性模型 θ T x \theta^{T} x θTx 呢? 或者说为什么 log P ( Y = 1 ∣ X ) P ( Y = 0 ∣ X ) = θ T x \log \frac{P(Y=1 \mid X)}{P(Y=0 \mid X)}=\theta^{T} x logP(Y=0∣X)P(Y=1∣X)=θTx ?
仅仅是因为线性模型最简单吗?此处试图从另一个角度看待这个问题。根据贝叶斯定理,
log P ( Y = 1 ∣ X ) P ( Y = 0 ∣ X ) = log P ( X ∣ Y = 1 ) P ( X ) P ( X ∣ Y = 0 ) P ( X ) = log P ( X ∣ Y = 1 ) P ( X ∣ Y = 0 ) + log P ( Y = 1 ) P ( Y = 0 ) \log \frac{P(Y=1 \mid X)}{P(Y=0 \mid X)}=\log \frac{\frac{P(X \mid Y=1)}{P(X)}}{\frac{P(X \mid Y=0)}{P(X)}}=\log \frac{P(X \mid Y=1)}{P(X \mid Y=0)}+\log \frac{P(Y=1)}{P(Y=0)} logP(Y=0∣X)P(Y=1∣X)=logP(X)P(X∣Y=0)P(X)P(X∣Y=1)=logP(X∣Y=0)P(X∣Y=1)+logP(Y=0)P(Y=1)
其中 log P ( Y = 1 ) P ( Y = 0 ) \log \frac{P(Y=1)}{P(Y=0)} logP(Y=0)P(Y=1) 是由训练集样本决定的常数(设为 θ 0 \theta_{0} θ0 ) , P ( X ∣ Y ) P(X \mid Y) P(X∣Y) 假设服从高斯分布,且在 Y的不同取值情况下方差相同(或者简单设为1),但均值不同。于是有
log exp ( − ( x − μ 1 ) 2 ) exp ( − ( x − μ 2 ) 2 ) + θ 0 = ( μ 1 − μ 2 ) x + ( − μ 1 2 + μ 2 2 ) + θ 0 \log \frac{\exp \left(-\left(x-\mu_{1}\right)^{2}\right)}{\exp \left(-\left(x-\mu_{2}\right)^{2}\right)}+\theta_{0}=\left(\mu_{1}-\mu_{2}\right) x+\left(-\mu_{1}^{2}+\mu_{2}^{2}\right)+\theta_{0} logexp(−(x−μ2)2)exp(−(x−μ1)2)+θ0=(μ1−μ2)x+(−μ12+μ22)+θ0
上式等号右侧为 x \mathrm{x} x 与 参数 θ \theta θ 的线性模型。
在更为一般的情况下,如果将 P ( X ∣ Y ) P(X \mid Y) P(X∣Y) 换成其他“指数族分布”,结果仍然是线性模型。
更多请阅读:Logistic Regression 模型简介
习题
code实践(一定阅读)
参考自:
mygame182
机器学习白板推导系列