解释Logistic回归背后的直觉

注意:这是一篇试图向不彻底熟悉统计数据的读者解释Logistic回归背后的直觉的帖子。所以,你可能在这里找不到任何严谨的数学工做。)算法

Logistic回归是一种涉及线性判别的分类算法。
那是什么意思?

1.与实测回归法不一样,逻辑回归不会尝试在给定一组输入的状况下预测数值变量的值。相反,输出是给定输入点属于某个类的几率。为简单起见,假设咱们只有两个类(对于多类问题,您能够查看多项Logistic回归),而且所讨论的几率是P+ - >某个数据点属于' +'类的几率。固然,P_ =1-P+。所以,Logistic回归的输出老是在[0,1]中。wordpress

2. Logistic回归的核心前提是假设您的输入空间能够被分红两个不错的“区域”,每一个类对应一个线性(读取:直线)边界。那么“线性”边界是什么意思呢?对于两个维度,它是一条直线 - 没有弯曲。对于三维,它是一个平面。等等。这个边界将由您的输入数据和学习算法决定。可是为了理所固然,很明显数据点必须经过线性边界分红上述两个区域。若是您的数据点确实知足此约束,则称它们是线性可分的。看下面的图片。函数

linearly_separable_4

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

========== X ===========优化

但Logistic回归如何使用此线性边界来量化属于某一类的数据点的几率?

首先,让咱们尝试理解输入空间“划分”到两个不一样的区域的几何意义。假设两个输入简单变量(与上面显示的三维图不一样) x1和x2,对应边界的函数将相似于spa

\ beta_0 + \ beta_1 x_1 + \ beta_2 x_2

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

\ beta_0 + \ beta_1 a + \ beta_2 b

。如今依据(a,b)的位置,有三种可能性 :code

1. (a,b)位于由+类点定义的区域。结果cdn

\ beta_0 + \ beta_1 a + \ beta_2 b

将是正向的,位于(0,∞)的某个地方。在数学上,该值的幅度越大,点与边界之间的距离越大。直观地说,(a,b)属于+类的几率越大。所以,P+将在(0.5,1)。blog

2. (a,b)位于由-类定义的区域。如今,

\ beta_0 + \ beta_1 a + \ beta_2 b

将是负向的,躺在( - ∞,0)。可是在正面状况下,函数输出的绝对值越高,(a,b)属于-类的几率就越大。P+如今将位于[0,0.5]。

3. (a,b)位于线性边界上。在这种状况下,

\ beta_0 + \ beta_1 a + \ beta_2 b = 0

。这意味着该模型没法真正说明是(a,b)属于+类仍是-类。结果,P+将正好是0.5。

因此如今咱们有一个函数在给定输入数据点的状况下输出( - ∞,∞)的值。可是咱们如何将其映射到P+,从[0,1] 开始的几率?答案就在

赔率
函数中。让咱们P(X)表示事件X发生的几率。在这种状况下,优点比(OR(X))定义为

\压裂{P(X)} {1-P(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函数)值

\ beta_0 + \ beta_1 a + \ beta_2 b

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

第2步。经过这样作来计算优点比

OR_ + = e ^ t

。(由于t是OR+的对数)。

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

P_ + = \ frac {OR _ +} {1 + OR_ +}

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

P_ + = \ frac {e ^ t} {1 + e ^ t}

上述等式的RHS称为逻辑函数。所以,也给这个学习模型的名称:-)。

========== X ===========

咱们如今已经理解了Logistic回归背后的直觉,但问题仍然存在 - 它如何学习边界函数

\ beta_0 + \ beta_1 x_1 + \ beta_2 x_2

?这背后的数学工做超出了这篇文章的范围,但这是一个粗略的想法:考虑一个函数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回归技术的误解。

点击英文原文连接

更多文章欢迎访问: http://www.apexyun.com

公众号:银河系1号

联系邮箱:public@space-explore.com

(未经赞成,请勿转载)

相关文章
相关标签/搜索