7分钟搞懂逻辑回归的来龙去脉

简介: 7分钟搞懂逻辑回归的来龙去脉

逻辑回归(Logistic Regression)是一种统计机器学习方法,简单易用,却涉及很多知识点。正所谓麻雀虽小,五脏俱全。


大多数教程都是从定义和原理出发,来讲解逻辑回归,容易显得晦涩难懂。本文将结合实例和图示,帮助读者在7分钟内搞懂逻辑回归算法。


1、功能



逻辑回归一般用于二分类任务,并能给出两个类的相应概率


常见的应用包括垃圾邮件判别、银行判断是否给用户贷款等等。当然,二分类问题可以扩展到多分类问题。


做二分类任务,最简单的判别函数是阶跃函数,如下图红线所示。当时判断为正类(1),反之为负类(0)。



但阶跃函数不连续,过于“死板”,不便于后续求导优化。因此用logistic function(上图黑线)代替,因为呈现“S”形,也称为 sigmoid function,对应公式:

定义域为整个实数集合,值域为0~1,相当于概率值。


2、为何不叫逻辑分类?



既然是做分类任务,为什么不叫它“逻辑分类”呢?

首先,“逻辑”指的是“logistic”(音译),“回归”来源于线性回归的 ,使用线性回归去拟合逼近一个决策边界,使得按照这个边界进行数据分类后的总损失最小。

以概率0.5作为界线,将数据分为正例和反例。当 ,对应正例(趋近于概率1);当 ,对应负例(趋近于概率0)。


这是在使用回归的思想去解决分类问题,所以称为逻辑回归。等价于在线性回归外包裹了一层sigmoid函数,将离散值映射为0和1之间的概率,以0.5为界。


3、核心问题



理解逻辑回归的一个核心问题是,如何求解决策边界 ?

对于二维输入样本点,z 等价于:

求最优决策边界,等价于求 的值。当样本的真实标签 是1和0时,我们分别定义一个损失函数:



为例,当模型的预测值 趋向1时,损失函数取值也应该越来越小;反之,当 趋向0时,损失函数值越来越大,可以通过函数 体现。模型的训练目的是尽可能减小损失,所以会让输出值朝着1的方向学习。是否可以将两类的cost函数合并到一块,方便计算总损失呢?


通过一个“聪明”的对数似然函数,我们达到了目的:

其中:

对于下图的样本点,绿线是决策边界。绿线上部 ,距离绿线越远 越大,预测值 越接近1。



看到这里,证明你也是一个热爱学习的人,希望你花1s点个赞,把这篇文章mark一下,再继续阅读,谢谢啦!


4、求解边界



明确了损失函数后,我们来计算模型参数的最优值。首先需要计算cost对参数 的导数,再借助梯度下降等算法微调参数值,不断逼近最优解。

假设我们有10个样本点,每个样本包含3个特征,则 维度为[10, 3], 维度为[3, 1],

网络异常,图片无法展示
|
的维度为[10, 1]。


损失函数:

cost的维度也是[10, 1]。cost和H相关,H和Z相关,Z和WX相关,存在关系映射:cost~H~Z~X。根据链式求导法则,整个计算过程如下:


最终的结果是: ,维度是[3, 1],即参数


5、梯度下降法



刚刚我们使用了梯度下降法迭代求解最优的 ,一共分为3步:

  • 初始化
  • 更新 :
  • 迭代到一定次数或阈值,结束

当cost函数是凸函数时,可以保证cost降到全局最小,否则可能只走到局部最小。



在cost不断减小的过程中,将求得最优的分界线。



使用逻辑回归,我们可以使用python、C++等语言自己实现,或借助机器学习工具包Sklearn中的接口 LogisticRegression [2]。


现在,大家是不是理解了逻辑回归的思想呢?如有疑问,欢迎交流!

相关文章
|
存储 人工智能 算法
聚类的k值确定之轮廓系数
聚类的k值确定之轮廓系数
2407 0
|
机器学习/深度学习 开发框架 .NET
YOLOv5的Tricks | 【Trick6】学习率调整策略(One Cycle Policy、余弦退火等)
YOLOv5的Tricks | 【Trick6】学习率调整策略(One Cycle Policy、余弦退火等)
3804 0
YOLOv5的Tricks | 【Trick6】学习率调整策略(One Cycle Policy、余弦退火等)
|
10月前
|
JavaScript
新年倒计时动画网页特效源码
新年倒计时动画网页特效源码是一段基于JS实现的中国节日元旦2025年倒计时动画效果代码,利用此代码,可以实现任意节日的倒计时效果,欢迎对此代码感兴趣的朋友前来下载参考。
184 6
|
7月前
|
编解码 异构计算
YOLOv11改进策略【Neck】| BiFPN:双向特征金字塔网络-跨尺度连接和加权特征融合
YOLOv11改进策略【Neck】| BiFPN:双向特征金字塔网络-跨尺度连接和加权特征融合
1538 7
YOLOv11改进策略【Neck】| BiFPN:双向特征金字塔网络-跨尺度连接和加权特征融合
|
机器学习/深度学习 计算机视觉 异构计算
【YOLOv8改进 - Backbone主干】FasterNet:基于PConv(部分卷积)的神经网络,提升精度与速度,降低参数量。
【YOLOv8改进 - Backbone主干】FasterNet:基于PConv(部分卷积)的神经网络,提升精度与速度,降低参数量。
|
SQL Java 关系型数据库
【JAVA基础篇教学】第十六篇:Java连接和操作MySQL数据库
【JAVA基础篇教学】第十六篇:Java连接和操作MySQL数据库
|
12月前
|
XML JSON API
淘宝商品详情API接口:获取商品信息的指南
淘宝详情API接口是淘宝开放平台提供的一种API接口,它允许开发者通过编程方式获取淘宝商品的详细信息。这些信息包括商品的基本属性、价格、库存状态、销售策略、卖家信息等,对于电商分析、市场研究或者商品信息管理等场景非常有用。
556 1
|
存储 数据采集 运维
日志服务(SLS)测评
在本次测评中,我将对日志服务SLS产品进行全面评估,主要从以下四个方面展开。首先,我将进行功能测试,基于之前参加的两次训练实验,对其功能进行评估。其次,我将与其他数据分析&可观测性产品进行比较,以了解SLS的优势和差异。然后,我将进行成本与收益分析,探讨SLS作为一站式的可观测数据存储分析平台所带来的成本节约和收益提升。最后,我将对SLS进行简要总结,并提出一些期待,希望能够为用户提供有用的参考信息。
898 58
|
机器学习/深度学习 算法 算法框架/工具
|
机器学习/深度学习 编解码 测试技术
【YOLOv8改进-SPPF】 Focal Modulation :使用焦点调制模块替代SPPF
YOLOv8专栏介绍了FocalNets,一种取代自注意力的新型模块,提升模型在图像分类、检测和分割任务中的性能。Focal Modulation包括局部聚焦、全局调制和多尺度处理,通过融合CNN和自注意力优点。代码展示了FocalModulation模块的实现。论文和代码已开源。在多个基准测试中,FocalNets超越了Swin等先进模型。