机器学习中的逻辑回归

什么是逻辑回归?

想象一下,你在玩一个游戏:根据一些线索,猜一个人是“猫派”还是“狗派”。机器学习里的逻辑回归(Logistic Regression)就是这样一个“猜分类”的算法。它不是用来预测连续的数字(比如房价),而是用来预测“属于哪一类”的概率,比如“是”或“否”、“ spam邮件”还是“正常邮件”。

它叫“回归”,但其实是分类算法,因为它基于线性回归,但加了个“魔法”来处理分类问题。简单说,它先用一条直线拟合数据,然后把结果挤压成0到1之间的概率。

线性回归 vs 逻辑回归:为什么需要区别?

线性回归就像画一条直线来预测连续值,比如根据房子大小预测价格。但如果用它来分类,比如预测“是否会下雨”(0或1),它可能会给出负数或大于1的值,这没意义。

逻辑回归解决了这个问题:它用同样的直线,但输出不是直接的数值,而是概率。

如上图所示,线性回归的线可以无限延伸,而逻辑回归的输出被限制在0和1之间,看起来像一条S形的曲线。

Sigmoid函数:逻辑回归的核心“魔法”

逻辑回归的秘密武器是Sigmoid函数。它把线性方程的输出(叫z = w*x + b,其中w是权重,x是特征,b是偏置)转化成概率。

公式简单:

  • 如果z很大正数,ϕ(z)接近1(比如“很可能属于这一类”)。
  • 如果z很大负数,ϕ(z)接近0。
  • 如果z=0,ϕ(z)=0.5(不确定)。

这就像一个“挤压机”,把无限的直线输出挤成0-1的概率曲线。

这张图画的是Sigmoid(逻辑)函数

  • 横轴是 z(可以取任意实数,

  • 纵轴是 ϕ(z)(被“压缩”到 0∼1之间)

  • 曲线是典型的S 型
    z 很大时输出接近 1;z 很小时输出接近 0;在 z=0 时刚好 ϕ(0)=0.5

这正是机器学习里逻辑回归(Logistic Regression)的核心:把“线性打分”变成“概率”。


1) 逻辑回归在做什么?

逻辑回归用于二分类(比如:垃圾邮件/非垃圾邮件,违约/不违约)。

它先算一个线性组合:

  • x:特征向量(比如邮箱里“中奖”“免费”等词出现次数)

  • w:权重(每个特征的重要性)

  • b:偏置(整体阈值)

然后把这个 z 丢进图里的 Sigmoid:

于是输出就成了一个概率:

  • 接近 1:更像正类 y=1

  • 接近 0:更像负类 y=0


2) 决策边界:为什么图里 z=0 很关键?

因为 ϕ(0)=0.5。常见分类规则是:

  • 若 p≥0.5 判为 1

  • 若 p<0.5 判为 0


所以逻辑回归的决策边界就是:

这是一条“直线/平面/超平面”——也就是说逻辑回归本质上学的是线性可分的边界(在原特征空间里)。


3) 它为什么叫“回归”,但在做“分类”?

因为它不是直接输出类别,而是回归一个概率值
最后再用阈值把概率切成 0/1。


4) 训练时学什么?用什么损失函数?

目标是让训练数据在“正确类别”上的概率尽量大(最大似然)。等价地,我们最常用交叉熵损失(log loss):

  • 如果真实 y=1,就惩罚log p(希望 p 越大越好)

  • 如果真实 y=0,就惩罚 log⁡(1−p)(希望 p 越小越好)

然后用梯度下降或其变体(SGD、Adam 等)去优化 w,b。


5) 图里“S型”还暗示了两个很重要的性质

  1. 概率压缩:再大的正负数,都被压进 (0,1)。适合做概率。

  2. 饱和:当 z 很大或很小时,曲线变平,梯度会变小——这会让极端自信(接近 0 或 1)的样本对参数更新影响变弱。


6) 正则化:防止“权重太极端”

实际训练常加正则化:

  • L2:(更常用,权重更平滑)

  • L1:​(会做特征选择,让很多权重变 0)


7) 多分类怎么办?

二分类用 Sigmoid;多分类常用Softmax 回归(多项逻辑回归):

我们用一个超小、可手算的逻辑回归例子,把“线性打分 → Sigmoid → 概率 → 分类 → 损失”完整走一遍。


例子设定(二分类:垃圾邮件=1,正常邮件=0)

假设我们只用两个特征:

  • x1:邮件里“免费”出现次数

  • x2​:邮件里“会议”出现次数

模型参数(随便举一组):

逻辑回归做两步:

  1. 线性打分

  1. Sigmoid 变概率


样本 A:x=[2,1](“免费”2次,“会议”1次)

1) 算 z

2) 算概率 p=σ(1.4)

用近似:

解释:模型认为“是垃圾邮件”的概率约80.2%

3) 做分类(阈值 0.5)

  • (判为垃圾邮件)


顺便算一下“这次预测有多好”:交叉熵损失

交叉熵(log loss):

  • 如果真实 y=1:

(损失小,说明预测不错)

  • 如果真实 y=0:

(损失大,说明“把正常邮件当垃圾”会被狠狠惩罚)


样本 B:x=[0,3](“免费”0次,“会议”3次)

1) 算 z

2) 算概率

解释:是垃圾邮件概率8.3%,所以判为正常邮件。


这张图里“z=0 对应 0.5”的意义(决策边界)

因为 σ(0)=0.5,所以分类阈值 0.5 等价于看 z的正负:

  • 判1

  • 判0

本例的边界就是:

这是一条直线(高维里是超平面),逻辑回归本质学到的就是这条线/面。

我们继续把训练(参数怎么更新)也用刚才那两个样本,做一遍“可手算”的 SGD/梯度下降示范。


1) 关键结论:逻辑回归的梯度特别简单

对单个样本 (x,y):

交叉熵损失对参数的梯度是:

这里的 (p−y) 可以理解成:“预测概率 - 真实标签”

  • 如果 y=1 但 p<1,则 p−y<0:更新会让 z 变大(把概率推向 1)

  • 如果 y=0 但 p>0,则 p−y>0:更新会让 z 变小(把概率压向 0)


2) 对样本 A 做一次 SGD(假设真实是垃圾邮件 y=1)

样本 A:x=[2,1]
我们之前算过:z=1.4,

(1) 误差项

(2) 梯度

(3) 用学习率 η=0.1 更新(SGD)

初始参数:

逐项算:

直觉解释:真实是 1,但模型只给了 0.80,还不够自信,所以更新把 w1​ 提高、把 w2​ 变得“没那么负”、把 b 往上推——目的都是让这个样本的 z 更大,从而 p 更接近 1。


3) 对样本 B 做一次 SGD(假设真实是正常邮件 y=0)

样本 B:x=[0,3]
我们算过:z=−2.4,

(1) 误差项

(2) 梯度

(3) 学习率 η=0.1 更新(从原始参数出发演示)

直觉解释:真实是 0,但模型给了 0.083(还不够接近 0),所以更新会让 zzz 更负:把 w2w_2w2​ 更往负方向推、把 bbb 也往下拉,让这个样本的概率更贴近 0。


4) 你现在可以把训练想成一句话

每个样本都会产生一个“推动力” (p−y),它会沿着特征 x 的方向去推 w,让正确类别的概率更接近 1(或 0)。

我们把样本 A、B 放在一起做一次 mini-batch(batch size=2),用“平均梯度”更新一次参数。

继续沿用我们前面的设定:
初始,学习率 η=0.1
样本 A 标签 yA=1,样本 B 标签 yB=0


1) 先回顾:单个样本的梯度公式


2) 两个样本各自的梯度(我们前面已算过 p)

样本 A

所以:

样本 B

所以:


3) mini-batch:求平均梯度

平均的 gwg_wgw​

  • 第一维:

  • 第二维:

所以:

平均的 gb


4) 用平均梯度更新一次参数

带入 η=0.1:

更新后:


5)(可选验证)更新后概率有没有“往对的方向走”?

样本 A(希望更接近 1)

z 从 1.4 增到约 1.4427,所以 pA′ 会从0.802稍微上升到大约0.809(更像 1 ✅)

样本 B(希望更接近 0)

z 从 -2.4 变得更负一点点,所以 pB′​ 会从0.08317稍微下降(更像 0 ✅)

1. 整体原理:像一个天气预报App

想象逻辑回归是一个智能天气App。它不会简单说“今天下雨”或“不下雨”,而是根据风速、湿度、气压等线索,给你一个概率,比如“下雨概率70%”。如果你设个阈值(比如50%以上就带伞),它就帮你决定行动。这比线性回归(像直接预测雨量多少)更适合分类,因为概率总在0-100%之间,不会乱来。

上图对比了线性回归(直线无限延伸,像预测无限雨量)和逻辑回归(S形曲线,像概率预报),生动地展示了为什么逻辑回归更“靠谱”于分类。

2. Sigmoid函数:像一个懒洋洋的开关灯

Sigmoid是逻辑回归的“心脏”,它把原始计算结果(一个无限的数字)转化成0-1的概率。比喻成一个懒开关:当输入小(负数大)时,灯几乎不亮(概率近0);输入中等时,灯慢慢亮起(概率0.5左右);输入大时,灯全亮(概率近1)。不像普通开关“啪”一下,它是渐变的,不会突然跳跃。这让预测更平滑,像现实中事情的“可能性”过渡。

看看这张图:Sigmoid曲线像一个伸懒腰的S形,输入从左到右,输出从暗到亮,完美捕捉“渐变”的本质。

3. 决策边界:像球场上的中场线

在数据空间里,逻辑回归画一条“边界线”,一边是A类(概率>0.5),一边是B类。比喻成足球场的中场线:根据球员位置、速度等,判断球是进攻还是防守区。如果数据点“越界”,概率就翻转。这条线是线性的,但如果数据乱七八糟,可以想象成弯曲的草坪边缘(不过标准逻辑回归假设它直)。

这张卡通图像一个搞笑的回归指南,把决策边界画得像分蛋糕的刀子,一刀切开两类数据点,超级直观!

4. 损失函数和训练:像打高尔夫找洞

训练逻辑回归就是最小化“损失”——错得多惨。交叉熵损失像高尔夫分数:如果预测“肯定不下雨”(概率0.01)但实际下大雨,罚分超高(因为你太自信错了);预测准,就低分。训练过程用梯度下降,像推高尔夫球下坡:从随机起点开始,计算最陡方向,一推一推,直到球进洞(损失最小)。如果坡太陡,可能卡在小坑(局部最小),但通常够用。

另一个比喻:像调吉他弦。开始音调乱(随机权重),弹错音(高损失),慢慢拧紧(更新参数),直到和弦完美。

5. 优点与局限:像一把瑞士军刀

逻辑回归像瑞士军刀:小巧、多功能、易用(解释每个特征的影响,像刀刃的用途),适合二分类如“邮件是垃圾吗”。但它不万能——如果数据像迷宫(非线性),它就力不从心,得换更高级的“工具箱”如神经网络。优点是快如闪电,局限是假设世界太“直线”。

总结:逻辑回归的优点和局限

优点:简单、快、解释性强(能看到每个特征的影响)。

局限:假设数据线性可分;多分类需扩展(比如One-vs-Rest)。

用在哪?信用卡欺诈检测、医疗诊断等二分类问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1136056.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch JVM堆内存使用图解说明

Elasticsearch JVM堆内存使用图解说明 一次查询背后的“内存战争” 你有没有遇到过这样的场景&#xff1a;集群刚上线时响应飞快&#xff0c;但随着数据量增长&#xff0c;查询延迟逐渐升高&#xff0c;偶尔还出现节点失联&#xff1f;监控图表上&#xff0c;JVM堆内存使用率…

一文说清AUTOSAR架构结构:核心要点全梳理

深入AUTOSAR架构&#xff1a;从分层设计到工程落地的全链路解析 汽车电子系统正在经历一场静默却深刻的变革。十年前&#xff0c;一辆车的ECU&#xff08;电子控制单元&#xff09;数量不过十几个&#xff1b;如今&#xff0c;高端车型的ECU已超过100个&#xff0c;软件代码量逼…

基于SpringBoot的旅游分享点评网系统(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦旅游场景下用户分享互动与真实点评需求&#xff0c;设计并实现一套基于Spring Boot框架的旅游分享点评网系统&#xff0c;旨在破解传统旅游信息获取中真实体验缺失、用户互动不足、优质攻略传播不畅、点评信息分散等痛点问题&#xff0c;精准匹配游客获取真实…

高频信号处理篇---单差分对电路

一句话核心比喻单差分对电路就像一个极其灵敏的“电流天平”。它不关心“绝对重量”&#xff08;输入的绝对电压&#xff09;&#xff0c;只关心“两边谁重谁轻”&#xff08;两个输入电压的差值&#xff09;。1. 先看看这个“天平”长什么样想象一个简单的结构&#xff1a;一个…

labview通过AxtiveX操作excel,不需要NIReport.llb也可以生成报表

labview通过AxtiveX操作excel&#xff0c;不需要NIReport.llb也可以生成报表。听说有人嫌NI Report太笨重&#xff1f;来试试用LabVIEW直接调教Excel&#xff01;今天咱们手把手玩转ActiveX&#xff0c;不用任何第三方工具包&#xff0c;直接让Excel乖乖听话生成报表。先扔个硬…

LABVIEW与三菱PLC通迅:实现数据批量读写的库

LABVIEW和三菱PLC通迅&#xff0c;实现数据批量读写的库&#xff01;凌晨三点半的工业自动化车间&#xff0c;PLC红色指示灯在控制柜里规律闪烁。当我在LabVIEW前面板拖动数值控件时&#xff0c;透过MX Component的DLL接口&#xff0c;三菱Q系列PLC的D9000寄存器组突然集体&quo…

Python 精确计算:告别浮点数陷阱,decimal 模块实战指南

目录Python 精确计算&#xff1a;告别浮点数陷阱&#xff0c;decimal 模块实战指南第一章&#xff1a;浮点数的“原罪”&#xff1a;为什么你的计算结果总是怪怪的&#xff1f;1.1 罪魁祸首&#xff1a;IEEE 754 标准1.2 什么时候我们需要绝对精确&#xff1f;第二章&#xff1…

吐血推荐10个一键生成论文工具,自考学生轻松搞定毕业论文!

吐血推荐10个一键生成论文工具&#xff0c;自考学生轻松搞定毕业论文&#xff01; AI 工具正在改变论文写作的未来 在自考学生群体中&#xff0c;毕业论文一直是一个令人头疼的问题。无论是选题困难、资料查找繁琐&#xff0c;还是写作过程中的逻辑梳理和语言表达&#xff0c;都…

基于SpringBoot的旅游景点推荐系统(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦旅游场景下景点精准匹配与个性化推荐需求&#xff0c;设计并实现一套基于Spring Boot框架的旅游景点推荐系统&#xff0c;旨在破解传统旅游中景点信息分散、推荐匹配度低、游客筛选景点低效、特色景点难挖掘等痛点问题&#xff0c;精准匹配游客获取个性化景点…

打开COMSOL看到电磁波模块就手痒?今天拿介质圆柱散射练练手。先搞个半径5μm的氧化铝圆柱(ε_r=9.8),扔到532nm激光里会发生啥?咱们边操作边唠嗑

COMSOL介质圆柱散射效率分析。 也可分析散射截面&#xff0c;消光截面与吸收截面。建模时直接在几何里画个圆&#xff0c;边界条件记得套两层&#xff1a;里面是散射边界&#xff08;别让波反射回来捣乱&#xff09;&#xff0c;外面包个完美匹配层。材料库调出氧化铝参数时注意…

sbit用于电磁阀开关控制的核心要点说明

用一个位&#xff0c;掌控电磁阀的“开关命脉”&#xff1a;深入解析sbit在8051中的实战精髓在自动化设备车间里&#xff0c;你是否见过这样的场景——一条产线上的气动夹具瞬间动作&#xff0c;液体精准注入容器&#xff0c;阀门无声启闭。这些看似简单的“通断”背后&#xf…

高密度板生产对接:Altium Designer设计与PCB板生产厂家协作

从设计到量产&#xff1a;Altium Designer与PCB板厂高效协同的实战指南你有没有遇到过这样的情况&#xff1f;辛辛苦苦画完一块高密度BGA板&#xff0c;信号完整性也仿真过了&#xff0c;3D模型也没干涉&#xff0c;结果发给pcb板生产厂家后&#xff0c;对方回传一纸DFM报告——…

高频信号处理篇---双差分对电路

如果说单差分对是一个“电流天平”&#xff0c;那么双差分对就是 两个联动的电流天平&#xff0c;外加一个“电流开关”。它能把一个信号的正负变化&#xff0c;直接转换成开关动作&#xff0c;是模拟世界通往数字世界的关键桥梁。核心比喻&#xff1a;“电流方向舵”想象你在开…

当C#遇上工业PLC:手撕多品牌通讯源码实录

C#与三菱&#xff0c;西门子&#xff0c;台达&#xff0c;基恩士&#xff0c;等各品牌plc通讯源码。搞过工控的老铁都知道&#xff0c;PLC通讯就像和不同方言的人聊天——三菱说MC协议&#xff0c;西门子玩S7&#xff0c;台达可能掏出Modbus&#xff0c;基恩士说不定甩个自定义…

导师推荐2026 AI论文平台TOP10:本科生毕业论文写作全解析

导师推荐2026 AI论文平台TOP10&#xff1a;本科生毕业论文写作全解析 2026年AI论文平台测评&#xff1a;为何需要这份权威榜单&#xff1f; 随着人工智能技术在学术领域的深入应用&#xff0c;越来越多的本科生开始借助AI工具辅助毕业论文写作。然而&#xff0c;面对市场上五花…

信捷8轴焊锡机程序详解:显控触摸屏加XD5-60T10,电子齿轮比单独设置,转盘式机械手下料加...

信捷8轴焊锡机程序&#xff0c;采用显控触摸屏加XD5-60T10 每个轴的电子齿轮比单独设置&#xff0c;转盘式 机械手下料加料架&#xff0c;放料位置可以堆叠&#xff0c;放满一堆自动移动料架&#xff0c;直到整框装满。 程序带详细注释 原创程序 采用C语言算轴参数 含回原点…

【信号处理】HST水平同步压缩变换附Matlab复现含文献

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和数学建模资料 &#x1f34…

PMBus隔离方案选型:磁耦与光耦的对比分析

PMBus隔离方案选型&#xff1a;磁耦与光耦的实战对比你有没有遇到过这样的场景&#xff1f;系统调试接近尾声&#xff0c;突然发现PMBus通信在高温下开始丢包&#xff1b;或者某台设备运行两年后遥测数据频繁出错&#xff0c;查来查去竟是隔离器件“老了”。这类问题背后&#…

了解PCB电镀+蚀刻:从原理到实践入门

深入PCB制造核心&#xff1a;电镀与蚀刻的原理、实战与避坑指南你有没有试过自己画好一块电路板&#xff0c;满心期待地送去打样&#xff0c;结果收到板子却发现线路断了、孔里没铜&#xff1f;或者在实验室手工制板时&#xff0c;明明曝光显影都按步骤来了&#xff0c;蚀刻出来…

基于SpringBoot的绿色行动平台系统(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦绿色环保公益行动的数字化协同与推广需求&#xff0c;设计并实现一套基于Spring Boot框架的绿色行动平台系统&#xff0c;旨在破解传统绿色行动中参与渠道分散、活动组织低效、成果追踪困难、公益资源整合不足等痛点问题&#xff0c;精准匹配公众便捷参与环保…