逻辑回归

线性回归、逻辑回归直观感受

以身高举例,直觉告诉我们爸爸妈妈的身高会共同影响子女的身高,为了同时考虑到父母双方的身高的影响,可以取其两者的平均值作为因素进行研究。
这里父母的平均身高就是自变量x,而我们的身高就是因变量y,y和x之间存在线性关系。
二元逻辑回归 R studio_线性回归
那么我们如何求出w 和 b 呢,需要收集足够多的x,y,然后通过线性回归算法就可以拟合数据,帮助我们求出参数w和b

虽然线性回归模型在自变量的种类上面已经没有限制了,因变量只能是连续的数值却是一个很大的制约因素
因为在实际应用中,因变量是分类变量的情形太普遍了。分类变量中最简单、也是最常用的情形是二元变量(binary variable),比如明天会不会下雨,就是二元变量,这正是逻辑回归要解决的问题。
直观上,只要把线性回归的连续值想方设法的转换成0到1之间的数值,就成了逻辑回归
二元逻辑回归 R studio_极大似然估计_02

线性回归推导

极大似然估计

这里我们先介绍一个概念,极大似然估计,在机器学习中,这个概念是绕不过去的。
假设一个黑袋子里面有一堆球,有黑球和白球,但是我们不知道具体的分布情况。我们从里面抓 3 个球,2 个黑球,1 个白球。这时候,有人就直接得出了黑球 67%,白球占比 33% 。这个时候,其实这个人使用了极大似然估计的思想,通俗来讲,当黑球是 67% 的占比的时候,我们抓 3 个球,出现 2 黑 1 白的概率最大。
这种通过样本,反过来猜测总体的情况,就是似然。
再举个例子,有一枚硬币,一般我们认为他出现正面和反面的概率是相同的,都是 0.5 。你为了验证这一想法,你抛了 100 次,100 次出现的都是正面,在这样的事实下,我觉得似乎硬币的参数不是公平的,这时候,你修正你的看法,觉得硬币出现正面的概率是 1 ,而出现反而的概率是 0 ,这就是极大似然估计,按这个估计,出现 100 次都是正面的概率才最大。
同样,直观感受完之后,我们给出一个比较严谨的定义:
设总体分布为二元逻辑回归 R studio_算法_03二元逻辑回归 R studio_类变量_04 为该总体采样得到的样本。因为 二元逻辑回归 R studio_类变量_04 独立同分布,因此,对于联合密度函数:
二元逻辑回归 R studio_算法_06
上式中,如果二元逻辑回归 R studio_极大似然估计_07知道,我们就可以直接求出L了,总体分布的参数我们不是上帝,是没办法知道的。所以,我们换一种思路,反过来,因为样本已经存在,可以看成二元逻辑回归 R studio_类变量_04是固定的,L是关于二元逻辑回归 R studio_极大似然估计_07的函数,即似然函数。求二元逻辑回归 R studio_极大似然估计_07。的值,使得似然函数取极大值,这种方法就是极大似然估计
这说的是同一回事,都是说用样本去估计总体的参数值,这个参数值使得样本出现的概率最大。
线性回归的模型如下:
二元逻辑回归 R studio_极大似然估计_11
上式中二元逻辑回归 R studio_类变量_12,使用矩阵表示为:二元逻辑回归 R studio_算法_13
上式中,X为m * n维矩阵,m为样本个数 ,n为样本特征数。
我们知道,样本基本是在所求线性回归二元逻辑回归 R studio_算法_13的附近,之间有会一个上下浮动的误差,记为二元逻辑回归 R studio_线性回归_15,表示为:二元逻辑回归 R studio_类变量_16
上式中,二元逻辑回归 R studio_线性回归_15是m*1维向量,代表m个样本相对于线性回归方程的上下浮动程度。二元逻辑回归 R studio_线性回归_15是独立同分布的,由中心极限
定理,二元逻辑回归 R studio_线性回归_15分布服从均值为 0 ,方差为二元逻辑回归 R studio_二元逻辑回归 R studio_20的正态分布。

梯度下降法推导

下面我们使用梯度下降法来求解线性回归的参数 。上面已经提到成本函数为
二元逻辑回归 R studio_极大似然估计_21
二元逻辑回归 R studio_极大似然估计_07求偏导
二元逻辑回归 R studio_二元逻辑回归 R studio_23
二元逻辑回归 R studio_线性回归_24
加入学习率,梯度下降算法可以描述为
重复
二元逻辑回归 R studio_算法_25