第六章 逻辑斯谛回归和最大熵模型

第六章 逻辑斯谛回归和最大熵模型

逻辑斯蒂回归模型

逻辑斯蒂分布

分布函数 $$ F(x) = P(x<=X) = \frac{1}{1+e^{-(x-\mu)\gamma}} $$

密度函数 $$f(x) = F'(x)$$

分布函数是一个奇函数。\(\gamma\) 越小,分布函数中心增长越快

二项逻辑斯蒂回归模型

\(P(Y=1|X) = \frac{exp(\omega x +b)}{1+ exp(\omega x +b)}\)

\(P(Y=0|X) = \frac{1}{1+ exp(\omega x +b)}\)

为了方便

\(P(Y=1|X) = \frac{exp(\omega x)}{1+ exp(\omega x)}\)

\(P(Y=0|X) = \frac{1}{1+ exp(\omega x)}\)

特点

几率odds 是一件事情发生的概率和不发生的概率的比值

对数几率 \(logit = log(\frac{p}{1-p})\)

so

\[\frac{P(Y=1|x)}{1-P(Y=1|x)} = \omega x \]

输出Y=1的对数几率是输入x的线性函数

模型参数估计

训练数据集\(T={(x_0,y_0),\cdots, (x_n,y_n)}\)

\(P(Y=1|x) = \pi(x), P(Y=0|x) = 1-\pi(x)\)

似然函数为

\(\prod_{i=1}^{N}\pi(x_i)^{y_i}(1-\pi(x_i))^{1-y_i}\)

对数似然函数

\[\begin{align*} L(w) =& \sum_{i=1}^N [y_ilog(\pi(x_i)) + (1-y_i)log(1-\pi(x_i))] \\=&\sum_{i=1}^N[y_ilog(\frac{\pi(x_i)}{1-\pi(x_i)})+ log(1-\pi(x_i))] \\=&\sum_{i=1}^N [y_i(\omega\cdot x_i) -log(1+exp(\omega\cdot x_i))]\end{align*} \]

求最大值,求\(\omega\)的值

假设\(\omega\)的极大似然估计值是\(\hat{\omega}\)

\(P(Y=1|X) = \frac{exp(\hat{\omega} x)}{1+ exp(\hat{\omega} x)}\)

\(P(Y=0|X) = \frac{1}{1+ exp(\hat{\omega} x)}\)

最大熵模型

\[H(P) = -\sum_xp(x)logp(x) \]

熵最大值为均匀分布的时候,

最大熵原理认为在满足约束条件下,熵越大模型越好,对未知保持敬畏

最大熵模型的定义

分类模型是一个条件概率模型\(P(Y|X)\)

训练数据集

\(T={(x_1,y_1),\cdots,(x_N,y_N)}\)

联合分布P(X,Y)和边缘分布P(X)的经验分布

\(\tilde{P}(x,y) = \frac{v(X=x,Y=y)}{N}\)

\(\tilde{P}(x) = \frac{v(X=x)}{N}\)

特征函数feature function f(x,y)描述输入x和输出y之间的某一个事实

\(f(x,y) = \begin{cases}1,&y,x满足事实 \\0,& 不满足 \end{cases}\)

特征函数关于经验分布\(\tilde{P}(X,Y)\)的期望是

\(E_{\tilde{P}}(f) = \sum_{x,y}\tilde{P}(x,y)f(x,y)\)

特征函数关于模型\(P(Y|X)\)与经验分布\(\tilde{P}(X)\)的期望是 (不清楚\(P(x)\)的分布,所以用经验分布替代)

\(E_{P}(f) = \sum_{x,y}\tilde{P}(x)P(y|x)f(x,y)\)

假设两个模型相等

$E_P(f) =E_{\tilde{P}}(f) $

最大熵模型的定义

假设所有满足约束条件的模型集合为

\(C\equiv \{P \in \mathcal{P}|E_p(f_i) = E_{\tilde{P}}(f_i) \}, i=1,\cdots,n\)

定义在条件概率分布\(P(Y|X)\)上的条件熵

\(H(P) = -\sum_{x,y}\tilde{P}(x)P(y|x)log{P}(y|x)\)

模型C中条件熵最大的模型称为最大熵模型

\(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), i=1,2,\cdots,n $

\(\sum_{y}P(y|x) = 1\)

求最大值问题,改为求最小值问题

\(min_{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), i=1,2,\cdots,n $

\(\sum_{y}P(y|x) = 1\)

转化成无约束最优化的对偶问题

拉格朗日函数

\[\begin{align*}L(P,w)\equiv &-H(P) +\omega_0(1-\sum_{y}P(y|x) )+\sum_{i=1}^{n}\omega_i( E_P(f_i) -E_{\tilde{P}}(f_i)) \\=& \sum_{x,y} \tilde{P}(x)P(y|x)logP(y|x) +\omega_0(1-\sum_{y}P(y|x) )+\sum_{i=1}^{n}\omega_i( \sum_{x,y}\tilde{P}(x,y)f_i(x,y)- \sum_{x,y}\tilde{P}(x)P(x|y)f_i(x,y))\end{align*} \]

最优化的原始问题为

\(min_{P}max_{\omega}L(P,w)\)

对偶问题是

\(max_{\omega}min_{P}L(P,w)\)

对偶函数\(\Psi() = min_{P\in C} L(P,w)\)

解是 \(P_\omega = argmin_{P\in C} L(P,w) = P_\omega(y|x)\)

\(L(P,w)\)\(P(y|x)\)的偏导数

\[\begin{align*}\frac{\partial L}{\partial P} =& \sum_{x,y} \tilde{P}(x)(logP(y|x)+1) -\omega_0\sum_{y}-\sum_{i=1}^{n}\omega_i( \sum_{x,y}\tilde{P}(x)f(x,y))\\ =& \sum_{x,y}(\tilde{P}(x){log(P(y|x)+1-\omega_0 -\sum_{i=1}^{n}\omega_{i}f_i(x,y))}\end{align*} \]

偏导数等于0

\(P(y|x) = exp(\sum_{i=1}^{n}\omega_{i}f_i(x,y)+\omega_0-1)= \frac{exp(\sum_{i=1}^{n}\omega_if_i(x,y))}{exp(1-\omega_0)}\)

因为\(\sum_y{P(y|x)}=1\) 将P(y|x)代入

\(exp(1-\omega_o) = \sum_y exp({\sum_n \omega_i f_i(x,y)})\)

会带到\(P(y|x)\)

\(P_\omega(y|x) = \frac{1}{Z_\omega(x)}exp({\sum_n \omega_i f_i(x,y)})\)

其中

$Z_\omega(x) =\sum_y exp({\sum_n \omega_i f_i(x,y)}) $

\(Z_{\omega}(x)\)被称为规范化因子

求解对偶问题的极大化问题

\(max_\omega \Psi(\omega)\)

\(\omega* = argmax_{\omega} \Psi(\omega)\)

极大似然估计

对偶函数的极大化等价于最大熵模型的极大似然估计

对数似然函数

\(L_{\tilde{P}} = log\prod [\tilde{P}(x)P(y|x)]^{\tilde{P}(x,y)} = log\prod p(y|x)^{\tilde{P}(x,y)} = \sum \tilde{P}(x,y)log P(y|x)\)

\(P_\omega(y|x)\)代入

\(L_{\tilde{P}}(P_\omega) = \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\omega_if_i(x,y) -\sum_{x}\tilde{P}(x)logZ_\omega (x)\)

对偶函数

\[\begin{align*} \Psi(\omega) =& \sum_{x,y} \tilde{P}(x)P(y|x)logP(y|x)+\sum_{i=1}^{n}\omega_i( \sum_{x,y}\tilde{P}(x,y)f_i(x,y)- \sum_{x,y}\tilde{P}(x)P(x|y)f_i(x,y)) \\=&\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\omega_if_i(x,y) +\sum_{x,y}\tilde{P}(x)P_\omega(y|x)(log P_\omega(y|x)-\sum_{i=1}^{n}\omega_if_i(x,y))\\=& \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\omega_if_i(x,y) - \sum_{x,y}\tilde{P}(x)P_\omega(y|x))logZ_\omega(x) \\=&\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\omega_if_i(x,y) -\sum_{x}\tilde{P}(x)logZ_\omega (x) \end{align*} \]

IIS 改进的迭代尺度算法

对数似然函数

\(L_{\tilde{P}}(P_\omega) = \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\omega_if_i(x,y) -\sum_{x}\tilde{P}(x)logZ_\omega (x)\)

假设模型当前参数为\(\omega\), 希望找到一个新的参数向量\(\omega +\delta\) 使得对数似然函数增大

\[\begin{align*} L(\omega+\delta)-L(\omega) = & \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_i f_i(x,y) -\sum_{x}\tilde{P}(x)log \frac{Z_{\omega+\delta}(x)}{Z_\omega (x)} \\&利用不等式 -log\alpha\ge 1-\alpha, \alpha \gt 0 \\L(\omega+\delta)-L(\omega)\ge & \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_if_i(x,y) +1-\sum_{x}\tilde{P}(x)log \frac{Z_{\omega+\delta}(x)}{Z_\omega (x)} \\=& \sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_if_i(x,y) +1-\sum_{x}\tilde{P}(x)l\sum_{y}P_\omega(y|x)exp(\sum_{i=1}^n\delta_i f_i(x,y)) \\& 将右端记为A(\delta|\omega) \\L(\omega+\delta)-L(\omega)\ge& A(\delta|\omega) \\& 提高下界 \\& 定义f^\#(x,y) = \sum_{i=1}^nf_i(x,y) \\ A(\delta|\omega)=&\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_if_i(x,y) +1-\sum_{x}\tilde{P}(x)\sum_{y}P_\omega(y|x)exp(f^\#(x,y)\sum_{i=1}^n \frac{\delta_i f_i(x,y)}{f^\#(x,y)}) \\&指数函数是凸函数,\frac{f_i(x,y)}{f^\#(x,y)}\ge 0并且 \sum_{i=1}^n \frac{f_i(x,y)}{f^\#(x,y)} =1,根据jensen不等式 \\ A(\delta|\omega)\ge &\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_if_i(x,y) +1-\sum_{x}\tilde{P}(x)\sum_{y}P_\omega(y|x)\sum_{i=1}^{n} \frac{f_i(x,y)}{f^\#(x,y)}exp(f^\#(x,y)\delta_i) \\ B(\delta|\omega) = &\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^n\delta_if_i(x,y) +1-\sum_{x}\tilde{P}(x)\sum_{y}P_\omega(y|x)\sum_{i=1}^{n} \frac{f_i(x,y)}{f^\#(x,y)}exp(f^\#(x,y)\delta_i) \\L(\omega+\delta)-L(\omega)\ge& B(\delta|\omega) \\& 求偏导 \\ \frac{\partial B(\delta|\omega)}{\partial\delta_i} = &\sum_{x,y}\tilde{P}(x,y)\sum_{i=1}^nf_i(x,y) -\sum_{x}\tilde{P}(x)\sum_{y}P_\omega(y|x)f_i(x,y)exp(f^\#(x,y)\delta_i) \\& 偏导数为0 \\E_{\tilde{P}}(f_i) = &\sum_{x,y}\tilde{P}(x)P_\omega(y|x)f_i(x,y)exp(f^\#(x,y)\delta_i) \end{align*} \]

posted @ 2020-09-12 20:46  木子士心王大可  阅读(214)  评论(0)    收藏  举报