什么是逻辑回归?

逻辑回归虽然名字中带有回归,但是并不是一个回归模型,而是一个分类模型。逻辑回归的目的就是解决分类问题,最常用的就是解决二分类问题。

逻辑回归和线性回归的关系

逻辑回归(Logistic Regression)与线性回归(Linear Regression)都是一种广义线性模型(generalized linear model)。逻辑回归假设因变量 y 服从伯努利分布,而线性回归假设因变量 y 服从高斯分布。 因此与线性回归有很多相同之处,去除Sigmoid映射函数的话,逻辑回归算法就是一个线性回归。可以说,逻辑回归是以线性回归为理论支持的,但是逻辑回归通过Sigmoid函数引入了非线性因素,因此可以轻松处理0/1分类问题。
这广义线性模型家族中的模型形式基本上都差不多,不同的就是因变量不同。

  • 如果是连续的,就是多重线性回归;
  • 如果是二项分布,就是逻辑回归;
  • 如果是Poisson分布,就是Poisson回归;
  • 如果是负二项分布,就是负二项回归;

逻辑回归问题解决的常规步骤

1.寻找一个合适的预测函数,一般是h函数(即hypothesis函数)。这个函数就是我们要找分类函数,用来预测输入数据的判断结果。这个过程很重要,需要对数据有一定的了解和分析,知道或猜测函数大概的形式,比如说是线性函数还是非线性函数。
2.构造一个Cost函数(即损失函数),该函数用来表示预测函数(h)与训练数据类别(y)之间的偏差,可以将二者之间的差(h-y)或者差平方逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归或者其他的形式。综合考虑所有的训练数据的“损失”,将Cost求和或者求平均,记为逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_02函数,表示所有的训练数据预测值与实际类别的偏差。
3.想办法使得逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_03最小并且求得最佳参数逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_02函数的值越小,表示预测函数越准确(即h函数越准确),所以要找到逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_05函数的最小值。找函数的最小值有不同的方法,这里使用的是梯度下降法(Gradient Descent)。

具体过程

1.寻找h函数

逻辑回归是一个分类方法,用于解决分类问题,常用于解决二分类问题,即输出类别有两种。在这里,我们要选用Sigmoid函数即:逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_06简单解释下逻辑回归模型为什么要用Sigmoid函数。
从指数族分布讲起,指数族分布 (The exponential family distribution),区别于指数分布(exponential distribution)。在概率统计中,若某概率分布满足下式,我们就称之属于指数族分布。
逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_07
其中η是natural parameter, T(y)是充分统计量, exp−a(η))是起到归一化作用。 确定了T,a,b,我们就可以确定某个参数为η的指数族分布.
统计中很多熟悉的概率分布都是指数族分布的特定形式,如伯努利分布,高斯分布,多项分布(multionmal), 泊松分布等。下面介绍其中的伯努利分布。
伯努利分布
逐步回归是逻辑回归吗 逐步逻辑回归模型_最大似然数_08
逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_09
逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_10

把伯努利分布可以写成指数族分布的形式,且
逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_11
逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_12
逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_13
逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_14

同时我们可以看到逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_15 就是logistic sigmoid的形式。

具体的解释,可以看这篇文章 logistics 为什么用sigmoid函数.

接下来需要确定数据划分的边界,对于图1和图2的两种数据分布,显然图1需要一个线性的边界,而图2需要一个非线性的边界。所以接下来我们只讨论线性边界。

逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_16


图1

逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_17


图2

对于线性边界的情况,边界形式如下:逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_18构造预测函数为:逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_19
逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_20函数的值有特殊的含义,它表示结果取1的概率,因此对于输入x的分类结果为类别1和类别0的概率分别为:
逐步回归是逻辑回归吗 逐步逻辑回归模型_最大似然数_21
逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_22

2.构造Cost函数

我们知道损失函数分为0-1损失,平方损失,绝对损失和对数似然损失(对数损失)。
在这里我们采用对数似然损失。当然,损失函数都是人为选择的,选择什么损失函数都行。但是如果这里用最小二乘法作为损失函数的话,函数曲线是非凸的,不利于求解参数。而对数似然函数作为损失函数的话,曲线是凸的,方便求解。
根据对数似然损失函数,有:
逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_23
根据伯努利分布,有逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_24
取似然函数:
逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_25
对数似然函数:
逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_26
最大似然估计就是要求逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_27,故将逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_28,即
逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_29
所以逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_30

3.梯度下降法求逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_02的最小值

求参优化也有不同的方法如梯度下降法,拟牛顿法等方法可以使用,在这里我们用梯度下降法。

梯度下降公式如下:

逐步回归是逻辑回归吗 逐步逻辑回归模型_机器学习_32式子中逐步回归是逻辑回归吗 逐步逻辑回归模型_逻辑回归_33,下面来求偏导:

逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_34


上面求解过程中用到的公式有:

逐步回归是逻辑回归吗 逐步逻辑回归模型_统计学习_35


因此,梯度下降公式可以更新为:

逐步回归是逻辑回归吗 逐步逻辑回归模型_逐步回归是逻辑回归吗_36

【参考文献】


  1. [Stanford机器学习公开课](https://www.coursera.org/course/ml)