专栏首页银河系资讯解释Logistic回归背后的直觉

解释Logistic回归背后的直觉

注意:这是一篇试图向不完全熟悉统计数据的读者解释Logistic回归背后的直觉的帖子。因此,你可能在这里找不到任何严谨的数学工作。)

Logistic回归是一种涉及线性判别的分类算法。那是什么意思? 1.与实测回归法不同,逻辑回归不会尝试在给定一组输入的情况下预测数值变量的值。相反,输出是给定输入点属于某个类的概率。为简单起见,假设我们只有两个类(对于多类问题,您可以查看多项Logistic回归),并且所讨论的概率是P+ - >某个数据点属于' +'类的概率。当然,P_ =1-P+。因此,Logistic回归的输出总是在[0,1]中。 2. Logistic回归的核心前提是假设您的输入空间可以被分成两个不错的“区域”,每个类对应一个线性(读取:直线)边界。那么“线性”边界是什么意思呢?对于两个维度,它是一条直线 - 没有弯曲。对于三维,它是一个平面。等等。这个边界将由您的输入数据和学习算法决定。但是为了理所当然,很明显数据点必须通过线性边界分成上述两个区域。如果您的数据点确实满足此约束,则称它们是线性可分的。看下面的图片。

这个划分平面称为线性判别式,因为 1.它的功能是线性的,2。它有助于模型在属于不同类别的点之间“区分”。(注意:如果您的点在原始概念空间中不能线性分离,您可以考虑通过添加交互项的维度,更高维度项等来将特征向量转换为更高维度的空间。这样的线性算法更高维空间的使用为您提供了非线性函数学习的一些好处,因为如果在原始输入空间中绘制回边界,则边界将是非线性的。)

========== X =========== 但Logistic回归如何使用此线性边界来量化属于某一类的数据点的概率? 首先,让我们尝试理解输入空间“划分”到两个不同的区域的几何意义。假设两个输入简单变量(与上面显示的三维图不同) x1和x2,对应边界的函数将类似于

。(至关重要的是要注意x1和x2输入变量是两个,并且输出变量不是概念空间的一部分 - 与线性回归等技术不同。)考虑一下(a,b)。输入x1 和x2的值到边界函数,我们会得到它的输出

。现在依据(a,b)的位置,有三种可能性 : 1. (a,b)位于由+类点定义的区域。结果

将是正向的,位于(0,∞)的某个地方。在数学上,该值的幅度越大,点与边界之间的距离越大。直观地说,(a,b)属于+类的概率越大。因此,P+将在(0.5,1)。 2. (a,b)位于由-类定义的区域。现在,

将是负向的,躺在( - ∞,0)。但是在正面情况下,函数输出的绝对值越高,(a,b)属于-类的概率就越大。P+现在将位于[0,0.5]。 3. (a,b)位于线性边界上。在这种情况下,

。这意味着该模型无法真正说明是(a,b)属于+类还是-类。结果,P+将正好是0.5。 所以现在我们有一个函数在给定输入数据点的情况下输出( - ∞,∞)的值。但是我们如何将其映射到P+,从[0,1] 开始的概率?答案就在赔率函数中。让我们P(X)表示事件X发生的概率。在这种情况下,优势比(OR(X))定义为

,基本上是事件发生概率与未发生概率之比。很明显,概率和几率传达完全相同的信息。但是当$ P(X)$从0变为1时,OR(X)从0变为 ∞.

然而,我们仍然还没有应用,因为我们的边界函数从给出的值- ∞到∞。所以我们要做的,就是以对数的OR(X),被称为对数几率函数(log-odds function)。数学上,OR(X)从0到∞,log(OR(X)) 从- ∞到∞! 所以我们终于有办法解释将输入属性带入边界函数的结果。边界函数实际上定义了+类在我们模型中的对数几率。因此基本上,在二维的例子中,给定一点 (a,b),Logistic回归会做的事情 如下: 第1步。计算边界函数(或者,log-odds函数)值

。让我们简单地称这个值t。

第2步。通过这样做来计算优势比

。(因为t是OR+的对数)。

第3步。知道了OR+,它会使用简单的数学关系进行计算P+。

事实上,一旦你知道从第1步得出的t,你可以结合第2步和第3步给出

上述等式的RHS称为逻辑函数。因此,也给这个学习模型的名称:-)。 ========== X =========== 我们现在已经理解了Logistic回归背后的直觉,但问题仍然存在 - 它如何学习边界函数

?这背后的数学工作超出了这篇文章的范围,但这是一个粗略的想法:考虑一个函数g(x),其中x是训练数据集中的数据点。g(x)可以简单地定义为:如果x是+类的一部分,g(x)=P+,(这里P+是Logistic回归模型给出的输出)。如果x是-类的一部分,g(x)=1-P+。直观地,g(x)量化您的模型正确分类训练点的概率。因此,如果您g(x)对整个训练数据进行平均,您将获得系统正确分类随机数据点的概率,而不管其所属的类别。稍微简化一下,Logistic回归学习试图最大化“平均”的g(x) 。采用的方法称为最大似然估计(出于显而易见的原因)。除非你是一名数学家,否则你可以在不了解如何优化发生的情况下,进行优化 ,只要你知道在优化什么上有好的想法- 主要是因为大多数统计或ML库都有内置的方法来完成它。

========== X =========== 目前为止就这样了!就像我的所有博客帖子一样,我希望这个可以帮助一些尝试通过Google和自己学习一些东西的人,去理解Logistic回归技术的误解。

本文分享自微信公众号 - 银河系1号(gh_19a1776ab1d8),作者:银河系1号

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-03-04

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 为什么在福特和通用艰难求生之际,特斯拉却在崛起,

    4.通用汽车在努力生存的同时,尝试探讨有关其电动汽车计划的项目。福特则是基于ICE汽车的品牌。

    银河1号
  • Java XML和JSON:Java SE的文档处理 第2部分

    本文中的示例将向您介绍JSON-B,JSON绑定API for Java。在快速概述和安装说明之后,我将向您展示如何使用JSON-B来序列化和反序列化Java对...

    银河1号
  • Java创建Annotation

    注解是Java很强大的部分,但大多数时候我们倾向于使用而不是去创建注解。例如,在Java源代码里不难找到Java编译器处理的@Override注解,Spring...

    银河1号
  • 线性回归与逻辑回归

    在读研期间,一直在帮导师做技术开发,甚至偶尔做一做美工(帮导师和实验室博士生画个图啥的),算法还是较少接触的,其实,我发现,算法还是蛮好玩的,昨...

    WeiMLing
  • 深入广义线性模型:分类和回归

    【导读】本文来自AI科学家Semih Akbayrak的一篇博文,文章主要讨论了广义的线性模型,包括:监督学习中的分类和回归两类问题。虽然关于该类问题的介绍文章...

    WZEARW
  • python的函数(一):基本概念

    我们之前学了一些基础的过程语句,如if else、while、for。随着我们python程序的功能越来越复杂,代码也就越来越长,因此我们就需要用“函数”来简化...

    企鹅号小编
  • 装饰器-初识

    函数调用的顺序 和其他语言类似。python函数在未经声明之前,不允许对其引用和调用。 ? 函数的功能与作用 需要添加一个打印日志功能。 在没学函数的时候,只能...

    企鹅号小编
  • 原来FFmpeg这么有意思 (二)

    文章耽搁了两星期了,可能不少老铁已经忘了,上一篇文章的内容了,不妨回顾一下,之前的文章里面就简单的提及了FFmpeg的一些简单命令的用法,官方下载不同平台的静态...

    Android技术干货分享
  • 深度学习之Logistic Regression

    YG
  • Python之函数学习(八)

    python语言,即可以进行函数式的编程的语言,又是可以进行面向对象编程的语言,所谓函数,简单的理解就是将一些语句集合到一起,这样可以在程序中多次的...

    无涯WuYa

扫码关注云+社区

领取腾讯云代金券