目录
老饼讲解:一步一步上手学习

【原理】逻辑回归模型-原理解说

作者 : 老饼 发表日期 : 2025-11-15 15:31:49 更新日期 : 2026-05-21 13:38:37
老饼讲解-简单易懂,干货满满,爽过嗦螺!


逻辑回归模型是最最最不得不学的一个模型,为什么呢?因为只要混下去,就会发现在哪都会见到它的身影,所以逻辑回归模型差不多是必学、必知的一个模型,那我们这节就来看看逻辑回归模型是怎么一回事。

一、逻辑回归模型

逻辑回归模型是一种用解决二分类问题的模型,也就是预测样本是正样本还是负样本。在说逻辑回归之前,我们先来详细看看什么是二分类问题。

1.1. 先认识一下二分类问题

先来说下什么是二分类问题,直接来点数据看看,如下:

二分类-数据示例

可以看到,数据中包含了各个特征,而预测目标则是区分出样本是类别是1还是0,这就是二分类问题了。

二分类问题的样本只有两个类别:类别1或类别0,类别1、类别0也称为正、负样本。正样本并不是说这个样本有多正,而是代表"它是我们想要识别出来的目标样本",例如广告投放,真正客户就是"正样本"。

事实上,二分类问题只需识别出是不是正样本就可以了,因为不是正样本(类别1)那就是负样本(类别0)。

好了,对于二分类问题,模型要输出什么呢?常见的有4种输出方式,如下:

二分类问题的四种输出方式

【1】判断标签:直接输类别标签。

【2】判断结果:输出Yes或No,即代表是不是类别1。

【3】判断依据:输出属于类别0、1的判别值,哪类的判别值大就是哪类。

【4】判断依据:输出属于类别1的概率。

具体哪种输出更适合二分类问题,需要具体问题具体确定,但二分类问题输出概率是最通用的,因为它可以转化为判断标签或判断结果。

1.2. 什么是逻辑回归模型

好了,可以来看看逻辑回归模型了,在之前我们学习过线性回归模型,线性回归拟合的是数值,并不符合二分类问题预测类别的需求,但数值与类别也是有关联的,即值越大,属于某类别的概率也越大,例如,天色越黑,下雨的概率就越大,因此判别值与概率之间可以相互转换。在数学里通常用函数  将数值转化为概率, sigmoid函数的图像如下:

sigmoid函数图像

备注:可以看到,sigmoid函数的输出区间为(0,1),它与概率的范围是一致的

逻辑回归就是这样的原理,先用   作为对样本属于正样本的综合评估值,再套用 sigmoid 函数将综合评估值转为概率,逻辑回归模型的表达式如下:

 

其中,

如果喜欢把整个模型写为一个式子,则是:

可以看到,它其实很简单,骨子里还是一个线性模型,只是外面套了一个sigmoid函数来将判别值转为概率。

逻辑回归模型的输出

备注:这样理解逻辑回归模型的原理是不够深入的,但作为入门无伤大雅,进阶时我们会回头重看sigmoid函数的另一种意义。

二、逻辑回归-损失函数与训练

我们都知道,模型的三件套是模型公式、损失函数和求解,上面我们已经了解了逻辑回归的模型了,下面我们再来看看它的损失函数的求解方法(也就是训练方法)。

2.1. 逻辑回归-交叉熵损失函数

逻辑回归以交叉熵作为损失函数,如下:

公式的意义我们下一节再来慢慢讲,因为这个公式可以由交叉熵和最大似然推导得到,这两个知识也是机器学习中的基础内容、无处不在,所以我们下节再重点讲讲这两个东西。

2.1. 逻辑回归-训练算法

逻辑回归的训练,也就是求解一个W,来令损失函数最小化,一般可以使用梯度下降法、牛顿法等等优化算法。比较简单的方法就是使用梯度下降算法了:

梯度下降算法原理

如图,梯度下降算法就是先初始化一个解,再不断往目标函数的负梯度方向调整解,直到梯度很小(也就是到达了极值点)。梯度下降算法前面我们已经学习了,这里就不再啰嗦了。

2.3. 逻辑回归-训练流程

好了,我们来看下梯度下降算法训练逻辑回归的流程,虽然现在调包训练模型一般不用自己实现,但看看也方便了解一下原理。梯度下降训练逻辑回归模型的算法流程如下:

梯度下降求解逻辑回归的流程

其实很简单,就是先初始化W,然后:

    1. 按照梯度公式算出梯度

    2. 将W往负梯度方向调整

不断循环(1)和(2),直到达到终止条件(例如达到最大迭代次数)

软件包中不一定使用梯度下降算法,例如matlab工具箱里使用的就是牛顿法,虽然牛顿法训练会更快,但原理也相对更为复杂,这里就不展开说了,浅尝即止。

2.4. 逻辑回归-梯度公式

我们都知道梯度下降算法训练时需要计算梯度,那么逻辑回归损失函数L(W)的梯度是什么呢?

逻辑回归梯度公式如下:

         

 其中

 :样本的输入特征数据,矩阵

              m为样本数,n为特征个数,即一行为一个样本

 : 样本的标签y,列向量       

                             :模型预测值,即的列向量     

:模型的权重,的列向量        

后面我们再用独立文章来讲它的推导过程,这里只摆出公式,自己用梯度下降算法实现逻辑回归的训练时,拿这个公式来用就可以了,后面我们会在代码中展示。

总结

总的来说,逻辑回归模型就是一个用来做二分类的模型,它输出样本为正样本的概率,它只是在线性模型的基础上套了一个sigmoid函数来转为概率。它以交叉熵作为损失函数,训练时可以使用梯度下降法进行训练,只需要初始化一个解,然后不断往负梯度方向迭代就可以了,如此简单,下课。



图标 评论
添加评论