algorithm-LDA-EM-SVM
标签(空格分隔): EM LDA SVM
在此输入正文
EM
- incomplete data distribution
P ( Y ∣ θ ) P(Y|\theta) P(Y∣θ) - complete data distribution
P ( Y , Z ∣ θ ) P(Y,Z|\theta) P(Y,Z∣θ)
求解目标MLE,maximun likelihood estimate
l o g P ( Y , Z ∣ θ ) ) = ∑ i n l o g ∑ z i P ( x i , z i ∣ θ ) > = ∑ i ∑ z i Q ( z i ) l o g P ( x i , z i ∣ θ ) Q ( z i ) logP(Y,Z|\theta))=\sum_i^nlog\sum_{z_i}P(x^i,z^i|\theta)>=\sum_i \sum_{z^i} Q(z^i)log \frac{P(x^i,z^i|\theta)}{Q(z^i)} logP(Y,Z∣θ))=i∑nlogzi∑P(xi,zi∣θ)>=i∑zi∑Q(zi)logQ(zi)P(xi,zi∣θ)
Q ( θ , θ i ) = ∑ Z l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ i ) Q(\theta,\theta^i)=\sum_Z logP(Y,Z|\theta)P(Z|Y,\theta^i) Q(θ,θi)=Z∑logP(Y,Z∣θ)P(Z∣Y,θi)
具体而言
https://en.wikipedia.org/wiki/Expectation%E2%80%93maximization_algorithm
- 写出完全数据的概率 P ( Y , Z ∣ θ ) P(Y,Z|\theta) P(Y,Z∣θ),比如隐含量Z为性别男女,变量Y为身高,身高的分布为高斯分布 ( u , δ 2 ) (u,\delta^2) (u,δ2),还有男女的分布 T i T_i Ti
附加知识:
在贝叶斯概率理论中,如果后验概率P(θ|x)和先验概率p(θ)满足同样的分布律,那么,先验分布和后验分布被叫做共轭分布^
-
EM algorithm
-
输
入
:
观
测
变
量
数
据
Y
,
隐
变
量
数
据
Z
,
联
合
分
布
P
(
Y
,
Z
∣
θ
)
,
条
件
分
布
P
(
Z
∣
Y
,
θ
)
;
输入:观测变量数据Y,隐变量数据Z,联合分布P(Y,Z|\theta),条件分布P(Z|Y,\theta);
输入:观测变量数据Y,隐变量数据Z,联合分布P(Y,Z∣θ),条件分布P(Z∣Y,θ);
输出:模型参数 θ \theta θ
(1)选择参数的初值 θ ( 0 ) \theta^(0) θ(0),开始迭代\
(2)E步:记 θ i 为 第 i 次 迭 代 参 数 θ 的 估 计 值 , 在 i + 1 次 迭 代 中 的 E 步 中 , 计 算 \theta^i为第i次迭代参数\theta的估计值,在i+1次迭代中的E步中,计算 θi为第i次迭代参数θ的估计值,在i+1次迭代中的E步中,计算
Q ( θ , θ i ) = E Z [ l o g P ( Y , Z ∣ θ ) ∣ Y , θ i ] = ∑ Z P ( Z ∣ Y , θ i ) l o g P ( Y , Z ∣ θ ) Q(\theta,\theta^i)=E_Z[logP(Y,Z|\theta)|Y,\theta^i]\\ =\sum_ZP(Z|Y,\theta^i)logP(Y,Z|\theta) Q(θ,θi)=EZ[logP(Y,Z∣θ)∣Y,θi]=Z∑P(Z∣Y,θi)logP(Y,Z∣θ)
( 3 ) M 步 : 求 使 得 Q ( θ , θ i ) 极 大 化 的 θ , 当 确 定 第 i + 1 次 迭 代 的 参 数 的 估 计 值 θ i + 1 (3)M步:求使得Q(\theta,\theta^i)极大化的\theta,当确定第i+1次迭代的参数的估计值\theta^{i+1} (3)M步:求使得Q(θ,θi)极大化的θ,当确定第i+1次迭代的参数的估计值θi+1
θ i + 1 = a r g m a x θ Q ( θ , θ i ) \theta^{i+1}=argmax_{\theta}Q(\theta,\theta^i) θi+1=argmaxθQ(θ,θi)
重 复 第 ( 2 ) 步 和 第 ( 3 ) 步 , 直 到 收 敛 重复第(2)步和第(3)步,直到收敛 重复第(2)步和第(3)步,直到收敛
Q函数
-
完
全
数
据
的
对
数
似
然
函
数
l
o
g
P
(
Y
,
Z
∣
θ
)
关
于
在
给
定
观
测
数
据
Y
和
当
前
参
数
θ
i
下
对
未
知
观
测
数
据
Z
的
条
件
概
率
分
布
P
(
Z
∣
Y
,
θ
i
)
的
期
望
称
为
Q
函
数
,
即
完全数据的对数似然函数logP(Y,Z|\theta)关于在给定观测数据Y和\\当前参数\theta_i下对未知观测数据Z的条件概率分布P(Z|Y,\theta_i)的期望称为Q函数,即
完全数据的对数似然函数logP(Y,Z∣θ)关于在给定观测数据Y和当前参数θi下对未知观测数据Z的条件概率分布P(Z∣Y,θi)的期望称为Q函数,即
Q ( θ , θ i ) = E Z [ l o g P ( Y , Z ∣ θ ) ∣ Y , θ i ] Q(\theta,\theta^i)=E_Z[logP(Y,Z|\theta)|Y,\theta^i] Q(θ,θi)=EZ[logP(Y,Z∣θ)∣Y,θi]
-
EM algorithm
-
E step:对于每个i
Q i ( z i ) = p ( z i ∣ y i , θ ) Q^i(z^i)=p(z^i|y^i,\theta) Qi(zi)=p(zi∣yi,θ)
M step
θ = a r g m a x θ ∑ i = 1 n ∑ z i Q i ( z i ) l o g p ( z i , y i ; θ ) Q i ( z i ) \theta=argmax_{\theta}\sum_{i=1}^n\sum_{z^i}Q^i(z^i)log{\frac{p(z^i,y^i;\theta)}{Q^i(z^i)}} θ=argmaxθi=1∑nzi∑Qi(zi)logQi(zi)p(zi,yi;θ)
但如果要是jensen不等式成立,须有 p ( z i , y i ; θ ) Q i ( z i ) = c , 即 为 一 常 数 得 到 Q i ( z i ) = p ( z i ∣ y i , θ ) \frac{p(z^i,y^i;\theta)}{Q^i(z^i)}=c,即为一常数\\ 得到Q^i(z^i)=p(z^i|y^i,\theta) Qi(zi)p(zi,yi;θ)=c,即为一常数得到Qi(zi)=p(zi∣yi,θ)
上述两个EM algorithm中,并不矛盾,实质都first calculate the P ( z i k ∣ y i , θ i ) P(z_{ik}|y_i,\theta^i) P(zik∣yi,θi)
混合高斯模型
整个数据集的各模型的比例
与特定数据的各模型比例是造成数据更新的原因!
-
高斯混合模型
-
具有如下形式的概率分布模型:
P ( y ∣ θ ) = ∑ k = 1 K α k ϕ ( y ∣ θ k ) P(y|\theta)=\sum_{k=1}^K \alpha_k\phi(y|\theta_k) P(y∣θ)=k=1∑Kαkϕ(y∣θk)
其中$\alpha_k为系数,\sum_{k=1} K\alpha_k=1;\phi(y|\theta_k)是高斯分布密度,\phi_k=(\mu_k,\sigma_k2)\$
ϕ ( y ∣ θ k ) = 1 2 π σ k e x p ( − ( y − μ k ) 2 2 σ k 2 ) \phi(y|\theta_k)=\frac{1}{\sqrt{2\pi}\sigma_k}exp(-\frac{(y-\mu_k)^2}{2\sigma_k^2}) ϕ(y∣θk)=2πσk1exp(−2σk2(y−μk)2)为第k个分模型;
- 明确隐变量,完全数据的对数似然函数
第 j 个 观 测 数 据 来 自 地 k 个 分 模 型 , r j k = 1 , 否 侧 r j k = 0 第j个观测数据来自地k个分模型,r_{jk}=1,否侧r_{jk}=0 第j个观测数据来自地k个分模型,rjk=1,否侧rjk=0
完 全 数 据 是 ( y i , r j 1 , r j 2 , r j 3 , . . . , r j K ) , j = 1 , 2 , 3 , . . . , N 完全数据是(y_i,r_{j1},r_{j2},r_{j3},...,r_{jK}),j=1,2,3,...,N 完全数据是(yi,rj1,rj2,rj3,...,rjK),j=1,2,3,...,N - EM算法E步,确定Q函数,然后需要计算
E
(
r
j
k
∣
y
,
θ
)
,
记
为
r
^
j
k
E(r_{jk}|y,\theta),记为\hat r_{jk}
E(rjk∣y,θ),记为r^jk
r ^ j k = E ( r j k ∣ y , θ ) = α k ϕ ( y k ∣ θ k ) ∑ k = 1 K α k ϕ ( y i ∣ θ k ) , j = 1 , 2 , 3 , . . . , N ; k = 1 , 2 , . . . , K \hat r_{jk}=E(r_{jk}|y,\theta)=\frac{\alpha_k\phi(y_k|\theta_k)}{\sum_{k=1}^K\alpha_k\phi(y_i|\theta_k)},j=1,2,3,...,N;k=1,2,...,K r^jk=E(rjk∣y,θ)=∑k=1Kαkϕ(yi∣θk)αkϕ(yk∣θk),j=1,2,3,...,N;k=1,2,...,K
r ^ j k 为 分 模 型 k 对 观 测 数 据 y i 的 响 应 度 。 \hat r_{jk}为分模型k对观测数据y_i的响应度。 r^jk为分模型k对观测数据yi的响应度。 - M步
θ i + 1 = a r g m a x θ Q ( θ , θ i ) , 分 别 求 导 可 得 到 \theta^{i+1}=arg max_{\theta}Q(\theta,\theta^i),分别求导可得到 θi+1=argmaxθQ(θ,θi),分别求导可得到
μ ^ k = ∑ j = 1 N r ^ j k y k ∑ j = 1 N r ^ j k , k = 1 , 2 , . . . , K σ ^ k 2 = ∑ j = 1 N r ^ j k ( y i − μ k ) 2 ∑ 1 N r ^ j k , k = 1 , 2 , . . . , K α k = n k N = ∑ j = 1 N r ^ j k N , k = 1 , 2 , . . . , K 重 复 上 述 过 程 直 至 对 数 似 然 函 数 值 不 在 有 明 显 的 变 化 \hat \mu_k=\frac{\sum_{j=1}^N\hat r_{jk}y_k}{\sum_{j=1}^N\hat r_{jk}},k=1,2,...,K\\ \hat \sigma_k^2=\frac{\sum_{j=1}^N\hat r_{jk}(y_i-\mu_k)^2}{\sum_1^N \hat r_{jk}},k=1,2,...,K\\ \alpha_k=\frac{n_k}{N}=\frac{\sum_{j=1}^N\hat r_{jk}}{N},k=1,2,...,K\\ 重复上述过程直至对数似然函数值不在有明显的变化 μ^k=∑j=1Nr^jk∑j=1Nr^jkyk,k=1,2,...,Kσ^k2=∑1Nr^jk∑j=1Nr^jk(yi−μk)2,k=1,2,...,Kαk=Nnk=N∑j=1Nr^jk,k=1,2,...,K重复上述过程直至对数似然函数值不在有明显的变化
summary
关键是数据整个模型的隐含量的概率值,和相对于每一个数据的隐含量的概率值直接的变换求解,附带求出整个模型的均值和方差
Expection: 即第n个序列来自第k个模型的概率,即为期望
Maxinum: 即由Expection得到的概率去求模型参数,以使得Q函数最大
参考:李航<统计学习方法>
refrence:
https://en.wikipedia.org/wiki/Expectation%E2%80%93maximization_algorithm
http://www.cnblogs.com/jerrylead/archive/2011/04/06/2006936.html
http://blog.163.com/huai_jing@126/blog/static/17186198320119231094873/
SVM原理推导
标签(空格分隔): 未分类
##策略是最大间隔分离超平面
max
w
,
b
r
s
.
t
.
y
i
(
w
∣
∣
w
∣
∣
.
x
i
+
b
∣
∣
w
∣
∣
)
>
=
r
,
i
=
1
,
2
,
.
.
.
,
N
\max_{w,b}\; r\\s.t.\;\;y_i(\frac{w}{||w||.x_i}+\frac{b}{||w||})>=r,\;i=1,2,...,N\\
w,bmaxrs.t.yi(∣∣w∣∣.xiw+∣∣w∣∣b)>=r,i=1,2,...,N进一步由几何间隔和函数间隔的关系可得
min
w
,
b
1
2
∣
∣
w
∣
∣
2
s
.
t
.
y
i
(
w
⋅
x
i
+
b
)
−
1
>
=
0
\min_{w,b}\frac{1}{2}||w||^2\\s.t.\;y_i(w\cdot x_i+b)-1>=0
w,bmin21∣∣w∣∣2s.t.yi(w⋅xi+b)−1>=0
转为拉格朗日函数(原始问题:广义拉格朗日函数的极小极大问题)
min
w
,
b
m
a
x
α
f
(
w
,
b
,
α
)
=
1
2
∣
∣
w
∣
∣
2
+
∑
i
N
α
i
(
1
−
y
i
(
w
⋅
x
i
+
b
)
)
s
.
t
.
α
i
>
=
0
\min_{w,b} max_{\alpha}\;\;\;f(w,b,\alpha)=\frac12||w||^2+\sum_i^N \alpha_i(1-y_i(w\cdot x_i+b)) \\s.t.\;\alpha_i>=0
w,bminmaxαf(w,b,α)=21∣∣w∣∣2+i∑Nαi(1−yi(w⋅xi+b))s.t.αi>=0
其对偶问题:广义拉格朗日函数的极大极小问题
max
α
min
w
,
b
f
(
w
,
b
,
α
)
=
1
2
∣
∣
w
∣
∣
2
+
∑
i
N
α
i
(
1
−
y
i
(
w
⋅
x
i
+
b
)
)
s
.
t
.
α
i
>
=
0
\max_\alpha\min_{w,b}f(w,b,\alpha)=\frac12||w||^2+\sum_i^N \alpha_i(1-y_i(w\cdot x_i+b)) \\s.t.\;\alpha_i>=0
αmaxw,bminf(w,b,α)=21∣∣w∣∣2+i∑Nαi(1−yi(w⋅xi+b))s.t.αi>=0
定理
假设 f ( x ) , c i ( x ) , h j ( x ) f(x),c_i(x),h_j(x) f(x),ci(x),hj(x)是定义在R^n上的连续可微函数。考虑约束最优化问题
min x ∈ R n f ( x ) s . t . c i ( x ) ≤ 0 , i = 1 , 2 , ⋯ , k h j ( x ) = 0 , j = 1 , 2 , ⋯ , l \min_{x\in R^n}\;f(x)\\s.t.\\c_i(x)\leq0,\;i=1,2,\cdots,k\\h_j(x)=0,\;j=1,2,\cdots,l x∈Rnminf(x)s.t.ci(x)≤0,i=1,2,⋯,khj(x)=0,j=1,2,⋯,l
定理C.1 若原始问题和对偶问题都有最优值,则 d = max α , β : α i ≥ 0 min x L ( x , α , β ) ≤ min x m a x α , β : α i ≥ 0 L ( x , α , β ) = p d=\max_{\alpha,\beta:\alpha_i\geq0}\min_xL(x,\alpha,\beta)\leq\min_xmax_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=p d=α,β:αi≥0maxxminL(x,α,β)≤xminmaxα,β:αi≥0L(x,α,β)=p
定理C.2: 考 虑 原 始 问 题 和 对 偶 问 题 , 假 设 函 数 f ( x ) 和 c i ( x ) 是 凸 函 数 , h j ( x ) 是 仿 射 函 数 ; 并 且 不 等 式 约 束 c i ( x ) 是 严 格 可 行 的 , 即 存 在 想 , 对 所 有 i 有 c i ( x ) < 0 , 则 存 在 x , α , β , 使 得 x 是 原 始 问 题 的 解 , α , β , 是 对 偶 问 题 的 解 , 并 且 p = d = L ( x , α , β ) 考虑原始问题和对偶问题,假设函数f(x)和c_i(x)是凸函数,h_j(x)是仿射函数;并且不等式约束c_i(x)\\是严格可行的,即存在想,对所有i有c_i(x)<0,则存在x,\alpha,\beta,使得x是{\bf原始问题的解},\alpha,\beta,是{\bf对偶问题的解},\\并且p=d=L(x,\alpha,\beta) 考虑原始问题和对偶问题,假设函数f(x)和ci(x)是凸函数,hj(x)是仿射函数;并且不等式约束ci(x)是严格可行的,即存在想,对所有i有ci(x)<0,则存在x,α,β,使得x是原始问题的解,α,β,是对偶问题的解,并且p=d=L(x,α,β)
定理C.3
x 和 α , β 分 别 是 原 始 问 题 和 对 偶 问 题 的 解 的 充 分 必 要 条 件 是 x , α , β , 满 足 下 面 K K T 条 件 x和\alpha,\beta分别是原始问题和对偶问题的解的充分必要条件是x,\alpha,\beta,满足下面KKT条件 x和α,β分别是原始问题和对偶问题的解的充分必要条件是x,α,β,满足下面KKT条件KaTeX parse error: Undefined control sequence: \h at position 196: …,i=1,2,...,k \\\̲h̲_j(x)=0,j=1,2,.…
由以上定理可知原始问题和对偶问题解相同,并且满足KKT条件
求对偶问题的内层
min
x
L
(
x
,
α
,
β
)
\min_xL(x,\alpha,\beta)
minxL(x,α,β)
将拉格朗日函数分别对w,b求偏导数并令其为0
∇
w
L
(
w
,
b
,
α
)
=
w
−
∑
i
=
1
N
α
i
y
i
x
i
=
0
∇
b
L
(
w
,
b
,
α
)
=
∑
i
=
1
N
α
i
y
i
=
0
w
=
∑
i
=
1
N
α
i
y
i
x
i
,
∑
i
=
1
N
α
i
y
i
=
0
代
入
L
(
w
,
b
,
α
)
=
1
2
∣
∣
w
∣
∣
2
+
∑
i
N
α
i
(
1
−
y
i
(
w
⋅
x
i
+
b
)
)
可
得
到
L
(
w
,
b
,
α
)
=
−
1
2
∑
i
=
1
N
∑
j
=
1
N
α
i
α
j
y
i
y
j
(
x
i
⋅
x
j
)
+
∑
i
=
1
N
α
i
\nabla_wL(w,b,\alpha)=w-\sum_{i=1}^{N}\alpha_iy_ix_i=0\\\nabla_bL(w,b,\alpha)= \sum_{i=1}^{N}\alpha_iy_i=0\\w=\sum_{i=1}^N\alpha_iy_ix_i,\sum_{i=1}^N\alpha_iy_i=0\\代入L(w,b,\alpha)=\frac12||w||^2+\sum_i^N \alpha_i(1-y_i(w\cdot x_i+b))\\可得到L(w,b,\alpha)=-\frac12\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_jy_iy_j(x_i\cdot x_j)+\sum_{i=1}^N\alpha_i
∇wL(w,b,α)=w−i=1∑Nαiyixi=0∇bL(w,b,α)=i=1∑Nαiyi=0w=i=1∑Nαiyixi,i=1∑Nαiyi=0代入L(w,b,α)=21∣∣w∣∣2+i∑Nαi(1−yi(w⋅xi+b))可得到L(w,b,α)=−21i=1∑Nj=1∑Nαiαjyiyj(xi⋅xj)+i=1∑Nαi
引入对偶算法的优点:
- 对偶问题往往更容易求解;
- 自然引入核函数,进而推广到非线性分类问题
求解 SMO算法
SVM的学习问题可以形式化为求解凸二次规划问题。这样凸二次规划问题具有全局最优解。SMO算法是相对比较高效用于这一问题的求解。
求解的问题为
min α 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j K ( x i , x j ) − ∑ i = 1 N α i s . t . ∑ i = 1 N α i y i = 0 0 ≤ α i ≤ C , i = 1 , 2 , . . . , N \min_\alpha\; \frac12\sum_{i=1}^N\sum_{j=1}^N\alpha_i\alpha_j y_i y_j K(x_i,x_j)-\sum_{i=1}^N\alpha_i \\ s.t.\; \sum_{i=1}^N\alpha_iy_i=0 \\ 0\leq\alpha_i\leq C,i=1,2,...,N αmin21i=1∑Nj=1∑NαiαjyiyjK(xi,xj)−i=1∑Nαis.t.i=1∑Nαiyi=00≤αi≤C,i=1,2,...,N
- 这个问题,变量是朗格朗日乘子。一个变量 α i \alpha_i αi对应一个样本点 ( x i , y i ) (x_i,y_i) (xi,yi);变量的总数等于训练样本的容量N.
- SMO是启发式算法,如果所有变量满足KKT条件,那么最优化问题的解得到了。
- SMO算法包括两个部分,求解两个变量的二次规划的解析方法和选择变量的启发式方法。
- 第一个变量的选择:违法KKT条件最严重的样本点 α 1 \alpha_1 α1。
- 第二个变量的选择:希望能使得 α 2 \alpha_2 α2有足够大的变化。
输入: 训 练 数 据 集 T = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) , 其 中 , x i ∈ R N , y i ∈ y = { − 1 , + 1 } , i = 1 , 2 , . . . , N , 精 度 ϵ ; 输 出 : 近 似 解 α ^ . ( 1 ) 取 近 似 值 α ( 0 ) = 0 , 令 k = 0 ; ( 2 ) 选 去 优 化 变 量 α 1 ( k ) , α 2 ( k ) , 求 解 两 个 变 量 的 最 优 化 问 题 , 求 得 最 优 解 α 1 ( k + 1 ) , α 2 ( k + 1 ) , 更 新 α 为 α ( k = 1 ) ; ( 3 ) 若 能 在 精 度 ϵ 范 围 内 满 足 停 机 条 件 训练数据集T={(x_1,y_1),(x_2,y_2),...,(x_N,y_N)},其中,x_i\in {\bf R}^N,y_i\in y=\{-1,+1\},i=1,2,...,N,\\精度\epsilon;\\ 输出:近似解\hat{\alpha}.\\ (1)取近似值\alpha^{(0)}=0,令k=0;\\(2) 选去优化变量\alpha_1^{(k)},\alpha_2^{(k)},求解两个变量的最优化问题,求得最优解\alpha_1^{(k+1)},\alpha_2^{(k+1)},更新\alpha为\alpha^{(k=1)};\\ (3) 若能在精度\epsilon 范围内满足停机条件 训练数据集T=(x1,y1),(x2,y2),...,(xN,yN),其中,xi∈RN,yi∈y={−1,+1},i=1,2,...,N,精度ϵ;输出:近似解α^.(1)取近似值α(0)=0,令k=0;(2)选去优化变量α1(k),α2(k),求解两个变量的最优化问题,求得最优解α1(k+1),α2(k+1),更新α为α(k=1);(3)若能在精度ϵ范围内满足停机条件 ∑ i = 1 N α i y i = 0 0 ≤ α i ≤ C , i = 1 , 2 , . . . , N \sum_{i=1}^N\alpha_iy_i=0\\0\leq \alpha_i\leq C,i=1,2,...,N i=1∑Nαiyi=00≤αi≤C,i=1,2,...,N y i ⋅ g ( x i ) = { ≥ 1 , { x i ∣ α i = 0 } = 1 , { x i ∣ 0 < α i < C } , ≤ 1 , { x i ∣ α i = C } y_i\cdot g(x_i)=\left\{{\geq1,\{x_i|\alpha_i=0\}\atop =1,\{x_i|0<\alpha_i<C\},\leq 1,\{x_i|\alpha_i=C\}} \right. yi⋅g(xi)={=1,{xi∣0<αi<C},≤1,{xi∣αi=C}≥1,{xi∣αi=0} 其中 g ( x i ) = ∑ j = 1 N α j y j K ( x j , x i ) + b g(x_i)=\sum_{j=1}^N\alpha_jy_jK(x_j,x_i)+b g(xi)=j=1∑NαjyjK(xj,xi)+b 则 转 ( 4 ) ; 否 则 令 k = k + 1 , 转 ( 2 ) ; ( 4 ) 取 α ^ = α ( k + 1 ) 则转(4);否则令k=k+1,转(2);\\(4)取\hat{\alpha}=\alpha^{(k+1)} 则转(4);否则令k=k+1,转(2);(4)取α^=α(k+1) ## 仿射函数>仿射函数即由1阶多项式构成的函数,一般形式为 f (x) = A x + b,这里,A 是一个 m×k 矩阵,x 是一个 k 向量,b是一个m向量,实际上反映了一种从 k 维到 m 维的空间映射关系。
LDA
标签(空格分隔): LDA 优化算法 BFGS EM
- 首先设定LDA隐含变量主题的个数N
- 对于一遍文档D,其包含的主题分布很多,当设定一共有三个主题时,比如有以下两个分布
0.2
∗
z
1
+
0.3
∗
z
2
+
0.5
∗
z
3
,
0.3
∗
z
1
+
0.4
∗
z
2
,
0.3
∗
z
3
,
.
.
.
0.2*z_1+0.3*z_2+0.5*z_3,0.3*z_1+0.4*z_2,0.3*z_3,...
0.2∗z1+0.3∗z2+0.5∗z3,0.3∗z1+0.4∗z2,0.3∗z3,...;但是每个分布出现的概率又是不同的,也会呈现一定的分布,该分布即为dirichlet分布;
- 上述dirichlet分布只有一个参数 α \alpha α,称为concentration parameter(集中参数),当 α \alpha α远小于1时,该分布集中在少数的几个(分布)中,但 α \alpha α远大于1时,所有的分布的分布比较均匀;
- 根据dirichlet分布sample一个主题的分布如 0.2 ∗ z 1 + 0.3 ∗ z 2 + 0.5 ∗ z 3 0.2*z_1+0.3*z_2+0.5*z_3 0.2∗z1+0.3∗z2+0.5∗z3,即为该篇文档的主题分布;
- 针对某一个word,是由其中一个对应的主题生成如 t 1 t_1 t1(隐变量);生成过程是将主题分布sample出该主题,同时,该主题下有单词的分布, 0.1 ∗ w 1 + 0.2 ∗ w 2 + 0.3 ∗ w 3 + 0.4 ∗ w 4 , 0.2 ∗ w 1 + 0.2 ∗ w 2 + 0.2 ∗ w 3 + 0.4 ∗ w 4 0.1*w_1+0.2*w_2+0.3*w_3+0.4*w_4,0.2*w_1+0.2*w_2+0.2*w_3+0.4*w_4 0.1∗w1+0.2∗w2+0.3∗w3+0.4∗w4,0.2∗w1+0.2∗w2+0.2∗w3+0.4∗w4,单词分布是由参数为 β \beta β的dirichlet分布生成,sample出 0.1 ∗ w 1 + 0.2 ∗ w 2 + 0.3 ∗ w 3 + 0.4 ∗ w 4 0.1*w_1+0.2*w_2+0.3*w_3+0.4*w_4 0.1∗w1+0.2∗w2+0.3∗w3+0.4∗w4,然后在由这个多项式采样生产word;
LDA与PLAS区别
- PLSA的主题分布和主题下的词分布是唯一确定的
- LDA中主题分布和词分布不是确定的(随机变量)
- LDA是PLSA的贝叶斯版本,文档生成后,两者都要根据文档去推断主题分布和词语分布(本质都是为了估计给定文档生产主题,给定主题生成词语的概率),只是用的参数推断方法不同。plsa用极大似然估计去推断两未知参数,LDA把两参数随机变量,且加入dirichlet先验。估计参数前者是频率,后者是贝叶斯派思想。
LDA本质就是PLSA加上贝叶斯框架,即利用本次数据对先验信息进行修正,并把信息保留下来,然后可以丢掉这部分数据,是一个增量式的学习。
为什么dirichlet分布
: 1.多项式分布概率的概率就是dirichlet分布;
2.dirichlet分布是多项式分布的共轭先验分布(共轭是形式保持不变),也就是说,先验分布信息+样本信息=后验分布信息
D
i
r
(
p
∣
θ
)
+
M
u
l
t
i
c
o
u
n
t
(
m
)
=
D
i
r
(
p
∣
θ
+
m
)
Dir(p|\theta)+Multicount(m)=Dir(p|\theta+m)
Dir(p∣θ)+Multicount(m)=Dir(p∣θ+m)
3. 经过增量式学习后,dirichlet分布形式保持不变,利于计算。
求解
初始时根据先验随机地给每个单词分配主题。然后计算5个数据,
BFGS 算法
B k + 1 = B k + y k y k T y k T δ k − B k δ k δ k T B k δ k T B k δ k B_{k+1}=B_{k}+\frac{y_ky_k^T}{y_k^T\delta_k}-\frac{B_k\delta_k\delta_k^TB_k}{\delta_k^TB_k\delta_k} Bk+1=Bk+ykTδkykykT−δkTBkδkBkδkδkTBk
$$H_{k}\delta_k=y_k\
令B_{k+1}=H_k\
得到B_{k+1}=B_k+\alpha UU^T+\beta VV^T\
\alpha UU^T\delta_k=y_k 令U=y_k,\alpha=\frac{1}{y_k^T\delta_k}\$$
B
k
δ
k
=
−
β
V
V
T
δ
k
,
令
B
k
δ
k
=
V
,
可
得
β
=
−
1
δ
k
T
B
k
T
δ
k
B_k\delta_k=-\beta VV^T\delta_k,令B_k\delta_k=V,可得\beta=-\frac{1}{\delta_k^TB_k^T\delta_k}
Bkδk=−βVVTδk,令Bkδk=V,可得β=−δkTBkTδk1所以有
B
k
+
1
=
B
k
+
1
y
k
T
δ
k
y
k
y
k
T
−
1
δ
k
T
B
k
T
δ
k
B
k
δ
k
δ
k
T
B
k
T
B_{k+1}=B_k+\frac{1}{y_k^T\delta_k}y_ky_k^T-\frac{1}{\delta_k^TB_k^T\delta_k}B_k\delta_k\delta_k^TB_k^T
Bk+1=Bk+ykTδk1ykykT−δkTBkTδk1BkδkδkTBkT
1 , 初 始 化 B 0 为 单 位 矩 阵 , 初 始 点 x 0 2 , 求 点 x k ( k = 0 , 1 , 2 , 3... ) 处 的 一 阶 导 数 , 二 阶 导 数 3 , 根 据 B k ( x k + 1 − x k ) = g k + 1 − g k 公 式 , 因 为 拟 合 的 时 候 按 二 次 曲 线 进 行 拟 合 , 然 后 令 g k + 1 = 0 时 有 B k ( x k + 1 − x k ) = − g k 时 , 计 算 x k + 1 的 值 多 少 4 , 因 为 是 按 照 二 次 进 行 拟 合 , 在 跨 度 x k 到 x k + 1 之 间 原 方 程 有 可 能 已 经 达 到 最 小 , 所 以 要 进 行 搜 索 , 搜 索 分 为 精 确 搜 索 和 A r m i j o 搜 索 , 其 中 前 者 浪 费 大 量 的 资 源 , 为 了 更 有 效 , 选 择 使 用 A r m i j o 搜 索 5 , 更 新 一 个 新 的 X k + 1 , 其 作 为 新 的 x k , 为 了 进 一 步 利 用 步 骤 3 进 一 步 处 理 , 根 据 下 述 的 修 正 公 式 计 算 下 一 个 B k + 1 , 然 后 计 算 x k + 1 , 这 一 迭 代 1, 初始化B0为单位矩阵,初始点x0\\ 2,求点x_k(k=0,1,2,3...)处的一阶导数,二阶导数\\ 3,根据B_{k}(x_{k+1}-x_k)=g_{k+1}-g_k公式,因为拟合的时候按二次曲线进行拟合,\\然后令g_{k+1}=0时有B_{k}(x_{k+1}-x_k)=-g_k时,计算x_{k+1}的值多少\\ 4,因为是按照二次进行拟合,在跨度x_k到x_{k+1}之间原方程有可能已经达到最小,\\所以要进行搜索,搜索分为精确搜索和Armijo搜索,其中前者浪费大量的资源,为了更有效,\\选择使用Armijo搜索\\ 5, 更新一个新的X_{k+1},其作为新的x_k,为了进一步利用步骤3进一步处理,根据下述的修正公式计算下一个B_{k+1},然后计算x_{k+1},这一迭代 1,初始化B0为单位矩阵,初始点x02,求点xk(k=0,1,2,3...)处的一阶导数,二阶导数3,根据Bk(xk+1−xk)=gk+1−gk公式,因为拟合的时候按二次曲线进行拟合,然后令gk+1=0时有Bk(xk+1−xk)=−gk时,计算xk+1的值多少4,因为是按照二次进行拟合,在跨度xk到xk+1之间原方程有可能已经达到最小,所以要进行搜索,搜索分为精确搜索和Armijo搜索,其中前者浪费大量的资源,为了更有效,选择使用Armijo搜索5,更新一个新的Xk+1,其作为新的xk,为了进一步利用步骤3进一步处理,根据下述的修正公式计算下一个Bk+1,然后计算xk+1,这一迭代
-
Armijo搜索
-
已知当前
x
k
x_k
xk和方向
d
k
d_k
dk,参数
β
∈
(
0
,
1
)
,
ρ
∈
(
0
,
0.5
)
\beta \in(0,1),\rho \in(0,0.5)
β∈(0,1),ρ∈(0,0.5).令步长因子
α
k
=
β
m
k
,
其
中
m
k
为
满
足
下
列
的
最
小
非
负
整
数
m
:
f
(
x
k
+
β
m
d
k
)
<
=
f
(
x
k
)
+
β
∗
ρ
∗
g
k
T
∗
d
k
\alpha_k=\beta^{m_k},其中m_k为满足下列的最小非负整数m:\\ f(x_k+\beta^md_k)<=f(x_k)+\beta*\rho*g_k^T*d_k
αk=βmk,其中mk为满足下列的最小非负整数m:f(xk+βmdk)<=f(xk)+β∗ρ∗gkT∗dk
由 此 确 定 下 一 个 位 置 x k + 1 = x k + α k d k 由此确定下一个位置x_{k+1}=x_k+\alpha_kd_k 由此确定下一个位置xk+1=xk+αkdk
精确搜索和非精确搜索都能保证全局收敛性但有一点区别
精确搜索时矩阵序列 H k H_k Hk的正定新条件 y k T δ k y_k^T\delta_k ykTδk>0可以满足,但对于Armijo搜索准则来说,不能满足这一条件,在更新 H k + 1 H_{k+1} Hk+1时需要以下修改,
当
Y
k
T
δ
k
>
0
时
,
H
k
+
1
按
上
述
公
式
进
行
递
推
但
当
Y
k
T
δ
k
<
=
0
时
,
H
k
+
1
=
H
k
当Y_k^T\delta_k>0时,H_{k+1}按上述公式进行递推\\ 但当Y_k^T\delta_k<=0时,H_{k+1}=H_k
当YkTδk>0时,Hk+1按上述公式进行递推但当YkTδk<=0时,Hk+1=Hk
以上对于quasi_newton的
B
k
B_k
Bk BFGS同样适用
http://blog.csdn.net/golden1314521/article/details/46225289#2%E7%BA%BF%E6%90%9C%E7%B4%A2%E6%8A%80%E6%9C%AF%E5%92%8Carmijo%E5%87%86%E5%88%99