引入
逻辑斯蒂回归是统计学习中经典的分类方法。最大熵是概率模型学习的一个准则,将其推广到分类问题得到最大熵模型。
两者都属于对数线性模型。
逻辑斯蒂回归模型
定义6.1(logistic分布)设 X X X是连续随机变量, X X X服从logistic分布指的是其具有以下分布函数和密度函数: F ( x ) = P ( X ≤ x ) = 1 1 + e − ( x − μ / γ ) F(x)=P(X\le x)=\frac{1}{1+e^{-(x-\mu/\gamma)}} F(x)=P(X≤x)=1+e−(x−μ/γ)1 f ( x ) = F ′ ( x ) = e − ( x − μ ) / γ γ ( 1 + e − ( x − μ ) / γ ) 2 f(x)=F'(x)=\frac{e^{-(x-\mu)/\gamma}}{\gamma(1+e^{-(x-\mu)/\gamma})^2} f(x)=F′(x)=γ(1+e−(x−μ)/γ)2e−(x−μ)/γ其中, μ \mu μ为位置参数, γ > 0 \gamma\gt0 γ>0为形状参数。
分布函数属于logistic函数,是一条S形曲线,该曲线以
(
μ
,
1
2
)
(\mu,\frac{1}{2})
(μ,21)为中心对称。
γ
\gamma
γ值越小,曲线在中心附近增长地越快。
二项逻辑斯蒂回归模型
二项逻辑斯蒂回归模型是分类模型,其由条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X)表示,形式为参数化的逻辑斯蒂分布。
定义6.2(logistic回归模型)二项logictic回归模型是如下条件概率分布: P ( Y = 1 ∣ x ) = e x p ( ω ⋅ x + b ) 1 + e x p ( ω ⋅ x + b ) P(Y=1|x)=\frac{exp(\omega\cdot x+b)}{1+exp(\omega\cdot x+b)} P(Y=1∣x)=1+exp(ω⋅x+b)exp(ω⋅x+b) P ( Y = 0 ∣ x ) = 1 1 + e x p ( ω ⋅ x + b ) P(Y=0|x)=\frac{1}{1+exp(\omega\cdot x+b)} P(Y=0∣x)=1+exp(ω⋅x+b)1
这个负例的条件分布函数是logistic函数。
逻辑斯蒂回归比较两个条件概率值的大小,将实例 x x x分到概率值较大的那一类。
一个事件的几率是指改时间发生的概率与该事件不发生的概率的比值。如果该事件发生的概率是 p p p,那么该事件的几率为 p 1 − p \frac{p}{1-p} 1−pp。对数几率或者logit函数为 l o g i t ( p ) = log p 1 − p logit(p)=\log\frac{p}{1-p} logit(p)=log1−pp。
于是,有 log P ( Y = 1 ∣ x ) 1 − P ( Y = 1 ∣ x ) = ω ⋅ x \log\frac{P(Y=1|x)}{1-P(Y=1|x)}=\omega\cdot x log1−P(Y=1∣x)P(Y=1∣x)=ω⋅x这说明了,在逻辑斯蒂回归模型中,输出 Y = 1 Y=1 Y=1的对数几率是输入 x x x的线性函数。
换一个角度看,有点感知机模型的味道,一个线性函数通过一个变换得到概率值,线性函数的值越接近正无穷,概率值月接近1。
模型的参数估计
给定训练数据集
T
T
T,可以应用极大似然法估计模型参数,设:
P
(
Y
=
1
∣
x
)
=
π
(
x
)
,
P
(
Y
=
0
∣
x
)
=
1
−
π
(
x
)
P(Y=1|x)=\pi(x),P(Y=0|x)=1-\pi(x)
P(Y=1∣x)=π(x),P(Y=0∣x)=1−π(x)
似然函数(观测值的连乘)为:
∏
i
=
1
N
[
π
(
x
i
)
]
y
i
[
1
−
π
(
x
i
)
]
1
−
y
i
\prod_{i=1}^N[\pi(x_i)]^{y_i}[1-\pi(x_i)]^{1-y_i}
i=1∏N[π(xi)]yi[1−π(xi)]1−yi
对数似然函数为:
L
(
w
)
=
∑
i
=
1
N
[
y
i
log
π
(
x
i
)
+
(
1
−
y
i
)
log
(
1
−
π
(
x
i
)
)
]
=
∑
i
=
1
N
y
i
(
w
⋅
x
+
b
)
−
log
(
1
+
e
x
p
(
w
⋅
x
+
b
)
)
L(w)=\sum_{i=1}^N[y_i\log\pi(x_i)+(1-y_i)\log(1-\pi(x_i))]=\sum_{i=1}^Ny_i(w\cdot x+b)-\log(1+exp(w\cdot x+b))
L(w)=i=1∑N[yilogπ(xi)+(1−yi)log(1−π(xi))]=i=1∑Nyi(w⋅x+b)−log(1+exp(w⋅x+b))
对
L
(
w
)
L(w)
L(w)求极大值,就可以得到
w
w
w的估计值了。
问题转变为了以对数似然函数为目标函数的最优化问题。常采用梯度下降法或者拟牛顿法来解决。
多项逻辑斯蒂回归
设随机变量
Y
Y
Y的取值集合是
{
1
,
2
,
.
.
.
,
K
}
\{1,2,...,K\}
{1,2,...,K}多项逻辑斯蒂回归模型是
P
(
Y
=
k
∣
x
)
=
e
x
p
(
ω
k
⋅
x
)
1
+
∑
k
=
1
K
−
1
e
x
p
(
ω
k
⋅
x
)
P(Y=k|x)=\frac{exp(\omega_k\cdot x)}{1+\sum_{k=1}^{K-1}exp(\omega_k\cdot x)}
P(Y=k∣x)=1+∑k=1K−1exp(ωk⋅x)exp(ωk⋅x)
P
(
Y
=
K
∣
x
)
=
1
1
+
∑
k
=
1
K
−
1
e
x
p
(
ω
k
⋅
x
)
P(Y=K|x)=\frac{1}{1+\sum_{k=1}^{K-1}exp(\omega_k\cdot x)}
P(Y=K∣x)=1+∑k=1K−1exp(ωk⋅x)1
其中,
ω
,
x
∈
R
n
+
1
\omega,x\in R^{n+1}
ω,x∈Rn+1。也就是说,除了第K类,每一个类都有一套参数。
最大熵模型
最大熵模型由最大熵原理推导实现。
最大熵原理
最大熵原理是概率模型学习的一个准则。最大熵原理认为,在学习概率模型时,在所有可能的概率模型中,熵最大的模型是最好的模型。
通常用约束条件来确定概率模型的集合,所以,最大熵原理也可以表述为在满足约束条件的模型集合中选取熵最大的模型。
假设离散型随机变量 X X X的概率分布是 P ( X ) P(X) P(X),则其熵是 H ( P ) = − ∑ x P ( x ) log P ( x ) H(P)=-\sum_xP(x)\log P(x) H(P)=−x∑P(x)logP(x)。
其满足 0 ≤ H ( P ) ≤ log ∣ X ∣ 0\le H(P)\le\log|X| 0≤H(P)≤log∣X∣其中, ∣ X ∣ |X| ∣X∣是 X X X的取值个数,当前仅当 X X X是均匀分布的时候右边的等号成立,也就是说,均匀分布的时候,熵最大。
直观地,最大熵原理认为要选择的概率模型首先必须满足已有的事实,在没有更多信息的情况下,那些不确定的部分都是“等可能的”。
最大熵原理通过熵的最大化来表示等可能性。等概率表示了对事实的无知。
最大熵模型的定义
最大熵原理应用到分类得到最大熵模型。
假设分类模型是一个条件概率分布 P ( Y ∣ X ) P(Y|X) P(Y∣X),给定一个训练数据集 T T T。学习的目标是用最大熵原理选择最好的分类模型。
我们将这个假设作为模型的约束条件,如果有 n n n个特征函数,那么就有 n n n个约束条件。
定义6.3(最大熵模型)假设满足所有约束条件的模型集合为 C = { P ∈ P ∣ E P ( f i ) = E P ~ ( f i ) } C=\{P\in\mathbb{P}|E_P(f_i)=E_{\tilde{P}}(f_i)\} C={P∈P∣EP(fi)=EP~(fi)}
定义在条件概率分布
P
(
Y
∣
X
)
P(Y|X)
P(Y∣X)上的条件熵为
H
(
P
)
=
−
∑
x
,
y
P
~
(
x
)
P
(
y
∣
x
)
log
P
(
y
∣
x
)
H(P)=-\sum_{x,y}\tilde{P}(x)P(y|x)\log P(y|x)
H(P)=−x,y∑P~(x)P(y∣x)logP(y∣x)
则,模型集合
C
C
C中,条件熵最大的模型称为最大熵模型。
条件熵的要求是条件概率的熵乘上该条件的概率的期望。
最大熵模型的学习
最大熵模型的学习等价于约束优化问题 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 ) ∑ y P ( y ∣ x ) = 1 \begin{aligned}&\max_{P\in C}H(P)=-\sum_{x,y}\tilde{P}(x)P(y|x)\log P(y|x)\\s.t.~~&E_P(f_i)=E_{\tilde{P}}(f_i)\\&\sum_yP(y|x)=1\end{aligned} s.t. P∈CmaxH(P)=−x,y∑P~(x)P(y∣x)logP(y∣x)EP(fi)=EP~(fi)y∑P(y∣x)=1
通过改变优化目标的符号,转化为最小化问题。
引入拉格朗日乘子 w 0 → n w_{0\to n} w0→n,定义拉格朗日函数 L ( P , w ) L(P,w) L(P,w): L ( P , w ) = − H ( P ) + w 0 ( 1 − ∑ y P ( y ∣ x ) ) + ∑ i = 1 n w i ( E P ~ ( f i ) − E P ( f i ) ) L(P,w)=-H(P)+w_0(1-\sum_yP(y|x))+\sum_{i=1}^nw_i(E_{\tilde{P}}(f_i)-E_P(f_i)) L(P,w)=−H(P)+w0(1−y∑P(y∣x))+i=1∑nwi(EP~(fi)−EP(fi))
最优化的原始问题是:
min
P
∈
C
max
w
L
(
P
,
w
)
\min_{P\in C}\max_wL(P,w)
P∈CminwmaxL(P,w)
对偶问题是:
max
w
min
P
∈
C
L
(
P
,
w
)
\max_w\min_{P\in C}L(P,w)
wmaxP∈CminL(P,w)
之后就是最优化的求解问题,此处不再赘述。