专栏首页杨熹的专栏Logistic regression 为什么用 sigmoid ?

Logistic regression 为什么用 sigmoid ?

假设我们有一个线性分类器:

我们要求得合适的 W ,使 0-1 loss 的期望值最小,即下面这个期望最小:

一对 x y 的 0-1 loss 为:

在数据集上的 0-1 loss 期望值为:

由 链式法则 将概率p变换如下:

为了最小化 R(h),只需要对每个 x 最小化它的 conditional risk:

由 0-1 loss 的定义,当 h(x)不等于 c 时,loss 为 1,否则为 0,所以上面变为:

又因为

所以:

为了使 条件风险 最小,就需要 p 最大,也就是需要 h 为:

上面的问题等价于 找到 c*,使右面的部分成立:

取 log :

在二分类问题中,上面则为:

即,我们得到了 log-odds ratio !

接下来就是对 log-odds ratio 进行建模,最简单的就是想到线性模型:

则:

于是得到 sigmoid 函数:

由此可见,log-odds 是个很自然的选择,sigmoid 是对 log-odds 的线性建模。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • GAN 的 keras 实现

    本文结构: 什么是 GAN? 优点? keras 例子? ---- 什么是 GAN? GAN,全称为 Generative Adversarial Nets,直...

    杨熹
  • 用ARIMA模型做需求预测

    ---- 本文结构: 时间序列分析? 什么是ARIMA? ARIMA数学模型? input,output 是什么? 怎么用?-代码实例 常见问题? ---- 时...

    杨熹
  • seq2seq 入门

    本文结构: 什么是 seq2seq? Encoder–Decoder 结构? seq2seq 结构? ---- 什么是 seq2seq? seq2seq 是一个...

    杨熹
  • tf.losses.get_regularization_loss()

    定义在:tensorflow/python/ops/losses/util.py。

    于小勇
  • 语义分割之Dice Loss深度分析

    Dice Loss 来自文章VNet(V-Net: Fully Convolutional Neural Networks for Volumetric Med...

    lujohn3li
  • TensorFlow从0到1 - 7 - TensorFlow线性回归的参数溢出之坑

    ? 上一篇 6 解锁梯度下降算法解释清楚了学习率(learning rate)。本篇基于对梯度下降算法和学习率的理解,去填下之前在线性回归中发现的一个坑。 ...

    袁承兴
  • Java并发编程--CountDownLatch

      CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。

    在周末
  • 一文看懂SSL/TLS/OPENSSL/HTTPS

    看了上篇文章的阅读量,我知道算法理论对运维同学太不友好了~ 所以果断跳过算法下篇,直接介绍本次的 SSL,TLS,OPENSSL,HTTPS~ 感兴趣的同学自行...

    运维部落
  • Django ORM那些相关操作

    一般操作 https://docs.djangoproject.com/en/1.11/ref/models/querysets/         官网文档 常...

    新人小试
  • C语言中访问结构体成员时用‘.’和‘->’的区别

    举个例子,定义了一个叫Student,别名为stu的结构类型,我们声明了一个结构体变量叫stu1,声明了一个结构体指针为stuP。

    饶文津

扫码关注云+社区

领取腾讯云代金券