从线性回归到逻辑回归(logistics Regression)

一、逻辑回归的地位

逻辑回归算法(logistics Regression)是机器学习领域最重要最实用的算法。

是机器学习工程师面试的必备算法,需要对其细节进行仔细的把握。

线上环境下,绝大多数分类问题都可以用逻辑回归算法解决。

逻辑回归在贷款违约情况预测情感分析广告点击率预测疾病阴性阳性预测问题上有非常显著的效果。至少是建模的“基准”模型。

二、逻辑回归原理简述

逻辑回归是解决二分类问题的重要方法。

逻辑回归本身解决的是二分类问题,所以在这里我们就假定y的取值为0或者1。

当然逻辑回归也可以解决多分类问题,只是需要在每一个类别处建立一个逻辑回归分类器,判断是或不是该类别。

由于y的取值为0或者1, 只要我们能计算出p(y=1|x)和p(y=0|x)

比如对于给定的一个样本x, 假如p(y=1|x) > p(y=0|x), 就可以把样本x分类成类别1了, 反之就类别0

但是我们不能直接用p(y∣x)=w.T*x+b来作为条件概率的取值。因为等式右边的项其值域是无穷的,而左侧的概率只能是0到1之间进行取值。所以我们需要一个函数将右侧的无穷取值域压缩到0和1之间。——使用逻辑函数

过程如下:
从线性回归到逻辑回归(logistics Regression)
至此,我们有了逻辑回归模型的条件概率后。应当考虑如何构造逻辑回归模型的目标函数。

但是目标函数的构建依赖于极大似然估计

三、交叉熵与目标函数

对于逻辑回归模型,包含两个参数,分别是w和b,前者是向量,用来表示每个特征的重要性(w中的每一个位置上的数字其实代表了一种权重。因为它是要分别与每个样本的相应的特征相乘的)。而b代表了偏移量(intercept)。这两个是需要进行估计的。

最大似然估计的原理可以这样通俗理解:

有一个黑盒子,包括了不同的无数个逻辑回归模型。其中每个的参数分别都不一样。这个盒子产生了很多看得见的样本。我们通过最大化这些样本出现的概率来反推模型最优的参数。这就是MLE。

如何对logistics Regression构造最大似然
从线性回归到逻辑回归(logistics Regression)
到这一步,我们发现最大似然函数不能够再简化了。而我们的目的是让后者达到最小(argmin)。所以我们要引入随机梯度下降法。通过求导求最值的方法对于logistics Regression来说是不可行的。因为其没有解析解

四、随机梯度下降法求logistics Regression的最优解

1、什么是梯度下降法?

从线性回归到逻辑回归(logistics Regression)

2、逻辑回归的梯度下降法

按照正常顺序对逻辑回归模型进行梯度下降求解
从线性回归到逻辑回归(logistics Regression)

3、如何判断模型的优化过程是否收敛?

如果在相邻两个时间段损失函数没有任何变化或者变化很小即可以认为优化过程已收敛

如果在相邻两个时间段参数的值没有变化或者变化很小即可以认为优化过程已收敛

五、代码实现逻辑回归

首先我们要知道一点:
凸函数是不因为初始值的改变而改变最终的全局最优解的。非凸函数是可能会因为初始值而改变最终的优化值的。其原因就在于非凸函数最终迭代达到的点不一定是全局最优解,可能是局部最优解。这一点通过二维平面上的函数极值和最值问题就可以理解。