知识准备
极大似然估计
极大似然估计就是给定一个训练数据集T, 寻找模型的最优参数值θ, 达到一个这样的效果: 给模型输入训练集的X, 能以最大的概率输出其正确的分类Y. 求θ的过程就是最大化似然函数L(θ)的过程.
L(θ)=P(T|θ)=P(x1,...,xN|θ)=∏i=1NP(xi|θ)
L
(
θ
)
=
P
(
T
|
θ
)
=
P
(
x
1
,
.
.
.
,
x
N
|
θ
)
=
∏
i
=
1
N
P
(
x
i
|
θ
)
, 式中P(T|θ)是联合概率分布(训练集的样本都是独立同分布的).
求解方式: 一阶导数为0.
∑i=1N∇θlnP(xi|θ)=0
∑
i
=
1
N
∇
θ
ln
P
(
x
i
|
θ
)
=
0
, 该方程的解只是个估计值, 只有样本数目趋于无限多时, 它才接近真实值.
1. 逻辑斯谛回归模型
逻辑斯谛回归 = logistic regression
1.1 逻辑斯谛分布
定义: X是连续随机变量, 如果X满足下列的分布函数和密度函数, 则X服从逻辑斯谛分布
F(x)=P(X≤x)=11+e−(x−μ)/γ
F
(
x
)
=
P
(
X
≤
x
)
=
1
1
+
e
−
(
x
−
μ
)
/
γ
f(x)=F′(x)=e−(x−μ)/γ1+eγ((x−μ)/γ)2
f
(
x
)
=
F
′
(
x
)
=
e
−
(
x
−
μ
)
/
γ
1
+
e
γ
(
(
x
−
μ
)
/
γ
)
2
(μ为位置参数, γ为形状参数)
γ越小, F(x)中间增长的那一段就越陡.
1.2 二项逻辑斯谛回归模型
该模型是一种分类模型. 由条件概率P(Y|X)表示, X为实数, Y为0或1.
定义: 该模型是如下的条件概率分布.
P(Y=1|x)=exp(w⋅x+b)1+exp(w⋅x+b)
P
(
Y
=
1
|
x
)
=
e
x
p
(
w
·
x
+
b
)
1
+
e
x
p
(
w
·
x
+
b
)
P(Y=0|x)=11+exp(w⋅x+b)
P
(
Y
=
0
|
x
)
=
1
1
+
e
x
p
(
w
·
x
+
b
)
w和b也可以写在一起
P(Y=1|x)=exp(w⋅x)1+exp(w⋅x)
P
(
Y
=
1
|
x
)
=
e
x
p
(
w
·
x
)
1
+
e
x
p
(
w
·
x
)
P(Y=0|x)=11+exp(w⋅x)
P
(
Y
=
0
|
x
)
=
1
1
+
e
x
p
(
w
·
x
)
比较两个条件概率的大小, 将实例x分到概率值较大的那一类.
1.3 模型参数估计
可以应用极大似然估计法估计模型参数.
设: P(Y=1|x) = π(x), P(Y=0|x) = 1-π(x).
似然函数为:
∏i=1N[π(xi)]yi[1−π(xi)]1−yi
∏
i
=
1
N
[
π
(
x
i
)
]
y
i
[
1
−
π
(
x
i
)
]
1
−
y
i
对数似然函数为:
L(w)=∑i=1N[yi(w⋅xi)−log(1+exp(w⋅xi)]
L
(
w
)
=
∑
i
=
1
N
[
y
i
(
w
·
x
i
)
−
log
(
1
+
e
x
p
(
w
·
x
i
)
]
参数(w)估计即为以对数似然函数为目标函数的最优化问题. 可以采用梯度下降法及牛顿法.
1.4 多项逻辑斯谛回归
多项逻辑斯谛回归模型可以表示为如下的形式:
P(Y=k|x)=exp(wk⋅x)1+∑k=1K−1exp(wk⋅x)
P
(
Y
=
k
|
x
)
=
e
x
p
(
w
k
·
x
)
1
+
∑
k
=
1
K
−
1
e
x
p
(
w
k
·
x
)
,
k=1,2,...,K−1
k
=
1
,
2
,
.
.
.
,
K
−
1
P(Y=K|x)=11+∑k=1K−1exp(wk⋅x)
P
(
Y
=
K
|
x
)
=
1
1
+
∑
k
=
1
K
−
1
e
x
p
(
w
k
·
x
)
2. 最大熵模型
2.1 最大熵原理
原理表述: 在满足约束条件的模型集合中选取熵最大的模型.
设离散随机变量X的概率分布P(X), 则其熵为
H(P)=∑xP(x)logP(x)
H
(
P
)
=
∑
x
P
(
x
)
log
P
(
x
)
熵满足如下不等式: (|X|是X的取值个数)
0≤H(P)≤log|X| 0 ≤ H ( P ) ≤ log | X |
当且仅当X的分布是均匀分布时右边的等号成立, 即均匀分布的熵最大.
对最大熵原理的理解: 模型首先要满足约束条件(已有的事实), 在约束条件之外通常有不确定的部分, 对于这些部分, 我们认为他们是等可能的. Eg. X有四个取值{A, B, C, D}, 约束条件有2个:
P(A) + P(B) + P(C) +P(D) = 1
P(A) + P(B) = 0.4
我们用最大熵原理对X的概率分布进行估计的结果为: P(A) = P(B) = 0.2, P(C) = P(D) = 0.3
2.2 最大熵模型的定义
假设分类模型是一个条件概率分布P(Y|X).
给定训练集可以确定联合分布P(X,Y)的经验分布和边缘分布P(X)的经验分布, 分别以
P^(X,Y)
P
^
(
X
,
Y
)
和
P^(X)
P
^
(
X
)
来表示:
P^(X=x,Y=y)=v(X=x,Y=y)N P ^ ( X = x , Y = y ) = v ( X = x , Y = y ) N
P^(X=x)=v(X=x)N P ^ ( X = x ) = v ( X = x ) N
定义一个特征函数f(x,y)描述输入x和输出y之间的某个事实:
f(x,y)={1,0,x与y满足某一事实否则 f ( x , y ) = { 1 , x与y满足某一事实 0 , 否则
特征函数关于经验分布 P~(X,Y) P ~ ( X , Y ) 的期望值为:
EP~(f)=∑x,yP~(x,y)f(x,y) E P ~ ( f ) = ∑ x , y P ~ ( x , y ) f ( x , y )
特征函数关于模型P(Y|X)与经验分布 P^(X) P ^ ( X ) 的期望值为:
EP(f)=∑x,yP^(x)P(y|x)f(x,y) E P ( f ) = ∑ x , y P ^ ( x ) P ( y | x ) f ( x , y )
如果模型能准确获取训练数据中的信息, 那么这两个期望应该是相等的.
∑x,yP~(x,y)f(x,y)=∑x,yP^(x)P(y|x)f(x,y) ∑ x , y P ~ ( x , y ) f ( x , y ) = ∑ x , y P ^ ( x ) P ( y | x ) f ( x , y )
上式即为模型的约束条件, 有n个特征函数就有n个约束条件. 满足此约束条件且条件熵H(P)最大的模型即为最大熵模型
H(P)=−∑x,yP^(x)P(y|x)logP(y|x) H ( P ) = − ∑ x , y P ^ ( x ) P ( y | x ) log P ( y | x )
2.3 最大熵模型的学习
最大熵模型的学习等价于约束最优化问题:
约束条件为:
EP(fi)−EP^(fi)=0
E
P
(
f
i
)
−
E
P
^
(
f
i
)
=
0
且
∑yP(y|x)=1
∑
y
P
(
y
|
x
)
=
1
最优化的目标为:
minP∈C−H(p)=∑x,yP^(x)P(y|x)logP(y|x)
min
P
∈
C
−
H
(
p
)
=
∑
x
,
y
P
^
(
x
)
P
(
y
|
x
)
log
P
(
y
|
x
)
推导过程略(利用了拉格朗日函数)
推导结果(归结为求对偶函数的极大化)
2.4 极大似然估计
对偶函数的极大化等价于最大熵模型的极大似然估计.(证明略)
3. 模型学习的最优化算法
逻辑斯谛回归模型, 最大熵模型学习归结为以似然函数为目标函数的最优化问题, 求解方式通常为迭代算法. 此节提出更优化的算法.