LR(Logistic Regression)逻辑回归模型

目录

一、线性回归

1.1 一元线性回归

1.2 多元线性回归

二、逻辑回归

2.1 构建逻辑回归函数

2.2 求解函数参数


LR模型是一个传统的分类模型,常用于二分类任务,属于有监督的学习模型,也是工业界常用的一种分类方式。

一、线性回归

逻辑回归其实也是线性回归的一种,首先介绍一下线性回归,给定有监督训练数据集(X,Y),X表示特征,Y表示标签,线性回归试图学习得到一个线性模型,以尽可能准确地预测实际标签的结果。
线性回归首先有一个假设,就是假设样本服从正态分布,因此,线性回归又是一种参数模型。

1.1 一元线性回归

回归模型中只含有一个自变量x,主要用来处理一个自变量x与一个因变量y之间的线性关系。

(1)构建一元线性方程

 有n组数据,自变量(特征值) 与因变量(目标值)之间线性相关,假设他们之间关系为:,这个就是构建的一元线性方程。在这里,Y是我们试图预测的因变量,X是我们用来进行预测的自变量,a是回归线的斜率,b是一个常数,称为截距。

我们可以以身高(x)与体重(y)为例,二者是线性关系,身高正比于体重:

线性回归的目标就是让f(X)与y之间的差距最小,也就是权重a和偏置b取什么值的时候f(X)和y最接近

(2)构建损失函数

损失函数是来度量模型预测值与真实值不一样的程度的,或者说度量预测错误的程度,损失函数值越小,模型就越好。在回归问题中,误差平方和是回归任务中最常用的性能度量。这里就可以令损失函数等于误差平方和。则损失函数为:

因此,将九个点分别带入该二元方程得到如下:

58=160a+b

63=165a+b

...

59=162a+b

62=171a+b

损失函数(总误差)为:

(3)确定参数

如何得到最佳的a和b,使的尽可能多的到(x,y)数据点落在或者更靠近这条拟合出来的直线上,最小二乘法就是一个较好的计算方法。

可通过对L(a,b)求偏导数获得,并使得一阶倒数的值为0:

将该公式代入到上述案例中,得到关于求解未知变量a、b的二元一次方程:

求解二元一次方程组得:a = 0.421,b = -8.288

因此,在上述九个点中,通过最小二乘法得到直线方程:y = -8.288 + 0.721x

1.2 多元线性回归

现在我们把自变量x扩展为多元的情况,即多种因素共同影响因变量y。现实问题也往往是这种情况,比如,要预测房价,需要考虑包括房子大小、楼层、房龄、是否配置电梯等。

不过,这些因素对房价影响的权重是不同的。因此,我们可以使用多个权重来表示多个因素与房屋价格的关系:

与一元线性方程相同,多元线性方程的损失函数为:

上述只是x的纬度变多了,但是计算方式还是和一元线性方程一样的。

二、逻辑回归

通过在线性回归模型中引入Sigmoid函数,将线性回归的不确定范围的连续输出值映射到(0,1)范围内,成为一个概率预测问题。

Sigmond函数如下:

2.1 构建逻辑回归函数

按照章节一里的描述,多元线性回归的一般方程为:

可以简写为矩阵形式:

将特征加权求和Xβ(后面不对矩阵向量加粗了,大家应该都能理解)代入sigmond函数中的z,得到,令其为预测为正例的概率P(Y=1),那么逻辑回归的形式就有了:

2.2 求解函数参数

(1)似然函数

我们常常用概率(Probability) 来描述一个事件发生的可能性。而似然性(Likelihood) 正好反过来,意思是一个事件实际已经发生了,反推在什么参数条件下,这个事件发生的概率最大。

用数学公式来表达上述意思,就是:

已知参数 β 前提下,预测某事件 x 发生的条件概率为 :
已知某个已发生的事件 x,未知参数 β 的似然函数为 :
上面两个值相等,即:

一个参数 β 对应一个似然函数的值,当 β 发生变化,也会随之变化。当我们在取得某个参数的时候,似然函数的值到达了最大值,说明在这个参数下最有可能发生x事件,即这个参数最合理。

(2)最大似然估计

采用最大似然估计的方式求解,在二分类问题中,y只取0或1,可以组合起来表示y的概率:

将sigmoid带入P,得到如下函数:

根据上一小节说的最优β的定义,也就是最大化我们见到的样本数据的概率,即求下式的最大值。

取对数后,转化成下式:

接下来想办法求上式的最大值就可以了,求解前,我们要提一下逻辑回归的损失函数。

(3)损失函数及参数求解

将上述求反(将求最大值变为求最小值),得到如下:

采用梯度下降的方式求解损失函数的最小值,根据sigmoid的特性,我们可知

当然,现在我们的x是已知的,未知的是β,所以后面是对β求导,记:

把它代入前面我们得到逻辑回归的损失函数:

简便起见,先撇开求和号看g(β,x,y)。不过这个g(β,x,y)里面也挺复杂的,我们再把里面的挑出来,单独先看它对β向量中的某个βj求偏导是什么样。根据上面的求导公式,有:

这个xi实际上指的是第i个样本的特征向量,即  ,其中只有xij会和βj相乘,因此求导后整个xi只剩xij了。

此处省略推到过程。。。,直接抄个别人图:

加上求和号:

有了偏导,也就有了梯度G,即偏导函数组成的向量。

梯度下降算法过程:

1. 初始化β向量的值,即  ,将其代入G得到当前位置的梯度;

2. 用步长α乘以当前梯度,得到从当前位置下降的距离;

3. 更新 ,其更新表达式为 

4. 重复以上步骤,直到更新到某个,达到停止条件,这个 就是我们求解的参数向量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值