LR与Sigmod函数

        在使用LR时,经常用Sigmod函数来表示一个概率,为什么LR可以使用Sigmod函数呢?

        首先,LR的假设只有一个,就是两个类别的特征服从均值不等、方差相等的高斯分布。为什么假设它服从高斯分布?一方面,高斯分布容易理解;另一方面,从信息论的角度看,当均值和方差已知时,高斯分布是熵最大的分布。当熵分布最大时,可以平摊风险。就如二分查找法,每次都将中间作为查找点,目的就是为了平摊风险。

        自定义“风险”:

R(y=0|x) = \lambda _{00}P(y=0|x) + \lambda _{01}P(y=1|x)

R(y=1|x) = \lambda _{10}P(y=0|x) + \lambda _{11}P(y=1|x)

式中,R(y=0|x)表示样本预测为0的风险,R(y=1|x)表示样本预测为1的风险,\lambda _{ij}表示预测为i,实际为j所带来的风险。

        在LR算法中,它认为,预测正确不会带来风险,即\lambda _{00}\lambda _{11}都为0,另外,认为标签为0,而预测为1和认为标签为1,而预测为0,两者所带来的风险是一样的,所以\lambda _{01}\lambda _{10}统一用\lambda来表示。

        上面的“风险”化简为:

R(y=0|x) = \lambda P(y=1|x)

R(y=1|x) = \lambda P(y=0|x)

        对于某一个样本,应该根据风险最小化来预测其类别,即比较两个条件概率,并把样本分配到概率最大的那个类中。

如:\frac{P(y=1|x)}{P(y=0|x)}

将上式取对数,再利用朴素贝叶斯公式展开,得到:

lg{\frac{P(y=1|x)*P(x)}{P(y=0|x)*P(x)}}

= lg(\frac{P(x,y=1)}{P(x,y=0)})

= lg {\frac{P(x|y=1)P(y=1)}{P(x|y=0)P(y=0)}}

=lg{\frac{P(x|y=1)}{P(x|y=0)}} + lg {\frac{P(y=1)}{P(y=0)}}

由于P(y=1)P(y=0)是常数,可以用常数C_1代替,套入高斯公式,

lg{\frac{P(x|y=1)}{P(x|y=0)}} + lg {\frac{P(y=1)}{P(y=0)}}

= - \frac{(x-\mu _1)^2}{2\sigma ^2} + \frac{(x-\mu _0)^2}{2\sigma ^2} + C_1 = \frac{\mu _1 - \mu _2}{\sigma ^2}x + C_2 = wx

P(y=1|x)+P(y=0|x)=1,两边取指数,得到:

P(y=1|x) = \frac{1}{1+exp(-wx)}

        综上,LR算法可以使用Sigmod函数来进行计算分析。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值