LR采用的Sigmoid函数与最大熵(ME) 的关系

从ME到LR

先直接给出最大熵模型的一般形式,后面再给出具体的推导过程。
\[\begin{align*}
P_w(y|x) &= \dfrac{1}{Z_w(x)}\exp\left(\sum_{i=1}^{n}w_if_i(x,y)\right)\\
\mbox{where } Z_w(x) &= \sum_y\exp\left(\sum_{i=1}^nw_if_i(x,y)\right)
\end{align*}\]
下面我们只考虑二分类问题,则有原式
\[\begin{align*}
P_w(y|X) &= \dfrac{\exp(W_0X)}{\exp(W_0X) + \exp(W_1X)}\\
&= \dfrac{1}{1 + \exp((W1-W0)X)}\\
&= \dfrac{1}{1 + \exp(WX)}
\end{align*}\]
这特么不就是用于二分类的Sigmoid函数么,也就是说LR采用Sigmoid函数除了因为Sigmoid函数具有一些漂亮的数学性质,比如\(f=sigmoid(x)\),那么\(f‘(x) =(1-f(x))*f(x)\),更重要的是这样找出来的模型是熵最大的。那么为什么要熵最大?最大熵原理是概率模型学习的一个准则,最大熵原理认为,学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型

最大熵模型推导

最大熵模型是一个带约束的最优化问题
\[\begin{align*}
E_{\tilde{P}}(f) &= E_{P}(f)\\
\mbox{where } E_{\tilde{P}}(f) &= \sum_{x,y}\tilde{P}(x,y)f(x,y)\\
\mbox{and } E_{P}(f) &= \sum_{x,y}\tilde{P}(x)P(y|x)f(x,y)
\end{align*}\]
目标函数为
\[
H(P) = -\sum_{x,y}\tilde{P}(x)P(y|x)\log P(y|x)
\]
写成更加正式的形式如下
\[\begin{align*}
\min_{P\in \mathcal{C}}& -H(P) = \sum_{x, y}\tilde{P}(x)P(y|x)\log P(y|x)\\
\mbox{s.t. }& E_{P}(f) - E_{\tilde{P}}(f) = 0 \\
&\sum_yP(y|x) = 1
\end{align*}\]

引入拉格朗日乘子有
\[\begin{align*}
L(P,w) &=-H(P) + w_0\left(1 - \sum_yP(y|x)\right) + \sum_{i=1}^nw_i(E_{\tilde{p}}(f_i)-E_P(f_i))\\
&= \sum_{x,y}\tilde{P}(x)P(y|x)\log P(y|x) + w_0\left(1 - \sum_y P(y|x)\right)\\
&+ \sum_{i=1}^nw_i\left(\sum_{x,y}\tilde{P}(x,y)f_i(x,y) - \sum_{x,y}\tilde{P}(x)P(y|x)f_i(x,y)\right)
\end{align*}\]

由原始问题的极小极大问题转为极大极小的对偶问题有
\[\begin{align*}
\dfrac{\partial L(P,w)}{\partial P(y|x)} &= \sum_{x,y}\tilde{P}(x)(\log P(y|x) + 1) - \sum_yw_0 -\sum_{x,y}\left(\tilde{P}(x)\sum_{i=1}^nw_if_i(x,y)\right)\\
&= \sum_{x,y}\tilde{P}(x)\left(\log P(y|x)+1-w_0-\sum_{i=1}^nw_if_i(x,y)\right)
\end{align*}\]

令其为0,解得
\[ P(y|x) = \exp\left(\sum_{i=1}^nw_if_i(x,y) +w_0 - 1\right) = \dfrac{\exp(\sum_{i=1}^nw_if_i(x,y))}{\exp(1-w_0)}\]

由于\[\sum_yP(y|x)=1\]有
\[ \exp(1-w_0) = \sum_y\exp\left(\sum_{i=1}^nw_if_i(x,y)\right)\]

即\[\begin{align*}
P_w(y|x) &= \dfrac{1}{Z_w(x)}\exp\left(\sum_{i=1}^nw_if_i(x,y)\right)\\
\mbox{where } Z_w(x) &= \sum_y\exp\left(\sum_{i=1}^nw_if_i(x,y)\right)
\end{align*}\]

看到这个形式的模型是不是突然就有一种似曾相识的感觉?对的,除了LR、ME以外,CRF也是这种形式的。这种模型有一个统一的的名称,对数线性模型。

LR采用的Sigmoid函数与最大熵(ME) 的关系的更多相关文章

  1. Logstic回归采用sigmoid函数的原因

    ##Logstic回归采用sigmoid函数的原因(sigmoid函数能表示二项分布概率的原因) sigmoid函数: ![](http://images2017.cnblogs.com/blog/1 ...

  2. Sigmoid函数与Softmax函数的理解

    1. Sigmod 函数 1.1 函数性质以及优点 其实logistic函数也就是经常说的sigmoid函数,它的几何形状也就是一条sigmoid曲线(S型曲线).               其中z ...

  3. sigmoid 函数与 softmax 函数

    sigmoid 函数与 softmax 函数     1. sigmoid 函数       sigmoid 函数又称:logistic函数,逻辑斯谛函数.其几何形状即为一条sigmoid曲线. lo ...

  4. 深度学习:Sigmoid函数与损失函数求导

    1.sigmoid函数 ​ sigmoid函数,也就是s型曲线函数,如下: 函数: 导数: ​ 上面是我们常见的形式,虽然知道这样的形式,也知道计算流程,不够感觉并不太直观,下面来分析一下. 1.1 ...

  5. 交叉熵代价函数——当我们用sigmoid函数作为神经元的激活函数时,最好使用交叉熵代价函数来替代方差代价函数,以避免训练过程太慢

    交叉熵代价函数 machine learning算法中用得很多的交叉熵代价函数. 1.从方差代价函数说起 代价函数经常用方差代价函数(即采用均方误差MSE),比如对于一个神经元(单输入单输出,sigm ...

  6. 机器学习之sigmoid函数

      先说一下,ML小白. 这是第一次写个人博客类似东西, 主要来说说看 sigmoid 函数,sigmoid函数是机器学习中的一个比较常用的函数,与之类似的还有softplus和softmax等函数, ...

  7. Softmax与Sigmoid函数的联系

    译自:http://willwolf.io/2017/04/19/deriving-the-softmax-from-first-principles/ 本文的原始目标是探索softmax函数与sig ...

  8. Logistic 回归(sigmoid函数,手机的评价,梯度上升,批处理梯度,随机梯度,从疝气病症预测病马的死亡率

    (手机的颜色,大小,用户体验来加权统计总体的值)极大似然估计MLE 1.Logistic回归 Logistic regression (逻辑回归),是一种分类方法,用于二分类问题(即输出只有两种).如 ...

  9. Sigmoid函数

    Sigmoid函数是一个S型函数. Sigmoid函数的数学公式为: 它是常微分方程 的一个解. Sigmoid函数具有如下基本性质: 定义域为 值域为, 为有界函数 函数在定义域内为连续和光滑函数 ...

随机推荐

  1. GreenDao 3.x 注解中ToOne和ToMany的个人理解

    GreenDao是什么东西这个就不用多说了.自从GreenDao升级到3.0之后,编译的方法发生了改变.当然这个改变是有助于快速开发的. 区别在哪随便百度一下都可以知道.这里就不多说了. 这里主要说的 ...

  2. IOS制作纯色背景

    // 生成纯色背景图- (UIImage *)createPureColorImageWithColor:(UIColor *)color alpha:(CGFloat)alpha size:(CGS ...

  3. pod install Pull is not possible because you have unmerged files.

    http://stackoverflow.com/questions/21474536/podfile-gives-an-error-on-install A bug was found in lib ...

  4. MovieReview—Wile Hunter(荒野猎人)

     Faith is Power         Faith is power, this sentence is not wrong. Find your own beliefs, and strug ...

  5. Android系统Binder机制学习总结

    一.Binder机制概述 在Android开发中,很多时候我们需要用到进程间通信,所谓进程间通信,实现进程间通信的机制有很多种,比如说socket.pipe等,Android中进程间通信的方式主要有三 ...

  6. java abstraction and encapsulation

    How is Abstraction different from Encapsulation? Abstraction happens at class level design. It resul ...

  7. atoi 函数实现

      要考虑的东西实在也挺多的.总结如下:   1 前面空格分隔符号的时候   2 第一个符号位处理+ -   3 遇到非数字字符退出   4 为正数的时候,大于INT_MAX上溢   5 为负数的时候 ...

  8. 在Python中使用help帮助

    在Python中使用help帮助 >>> import numpy >>> help(numpy.argsort) Help on function argsort ...

  9. 用户价值模型 CITE :https://www.jianshu.com/p/34199b13ffbc

    RFM用户价值模型的原理和应用  ▌定义 在众多的用户价值分析模型中,RFM模型是被广泛被应用的:RFM模型是衡量客户价值和客户创利能力的重要工具和手段,在RFM模式中,R(Recency)表示客户购 ...

  10. cocos2d-x中的字符串操作

    1:循环体中字符串的构造.      通常用于多个有规律的文件的名字,诸如:[NSString stringWithFormat:@"filed.png",i].我们可以通过spr ...