跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

机器学习回归算法:线性回归与逻辑回归

机器学习回归算法主要包含线性回归与逻辑回归。文章首先定义了训练集与测试集,随后深入解析线性回归的数学模型、损失函数及多种梯度下降优化策略(如 BGD、SGD、Adam),并列举了 R²、MSE 等评估指标。此外还介绍了逻辑回归的分类原理、二元交叉熵损失函数以及混淆矩阵、AUC 等分类性能评估方法。

晚风叙旧发布于 2026/3/15更新于 2026/9/469 浏览

一、机器学习

机器学习是人工智能的核心分支,本质是通过让计算机通过数据学习规律实现自主决策、预测或模式识别。核心逻辑就是给它一串数据,通过特定的模型训练让它找到数据的内在规律对我们想要解决的问题进行一个预测。在寻找适合的模型中,我们要采取各种算法提高其准确度。

机器学习知识体系思维导图如下:

文章配图

二、回归

回归的本质是拟合一条'曲线 / 平面',并尽可能让所有的数据都在这条线上,也就是误差最小,以此提高预测的精确度和可靠性。

回归流程如下:

文章配图

1. 训练集与测试集

训练集和测试集作为存放数据的集合都有特征和标签,这里和平时理解的字面意义上的特征和标签不一样,我们可以分别把其简单理解为'输入'和'输出'。

特征是模型的输入信息,通常描绘了数据的各属性和维度。比如在预估房价时,房屋的面积、楼层还有地段等都是特征;在识别垃圾邮件时,发件人、邮件内容等也是特征。

标签是模型的输出目标,也就是想要得到数据的结果。可大致分为分类和回归两种类型,前者的标签指离散类别,比如是垃圾邮件/正常邮件;后者的标签则指连续的数值,比如预测的房价、销量等。

训练集作用是让模型不断学习并挖掘数据的内在规律,而测试集的作用则是用训练过的模型来对数据的结果进行一个预估,与真实值进行对比看这个模型准不准。他们俩的区别在于是否参与过模型训练。

实践中常使用验证集调节参数以防止过拟合。

2. 线性回归

线性回归是一种用于预测连续数值的统计方法,通过找到自变量(特征)与因变量(目标)之间的线性关系进行预测。基本公式为:

y = w₁x₁ + w₂x₂ + ... + wₙxₙ + b

其中,y 为预测目标;x 为特征变量;w 为系数(权重);b 为截距。

关于线性回归,重要的核心概念有三个分别是损失函数、梯度下降、评估指标。

a. 损失函数

损失函数是核心的'误差衡量工具',它量化了模型预测结果与真实值之间的差异,指导模型参数的优化方向。为什么它是核心呢,要看一个线性回归模型误差大不大其实是有很多指标的,除了直观的可视化图像之外也需要有量化的数据来计算到底'损失'了多少。

b. 梯度下降算法

通过逐步降低损失函数,找到最优解。是线性回归中用来最小化损失函数的核心优化算法。批量梯度下降(BGD)是最基础的形式,每次迭代都使用全部训练样本计算梯度。

1. BGD
  • 计算损失函数每个参数的梯度/偏导,更新参数
  • 每次更新步长由学习率决定(过大会导致震荡不收敛,过小会导致收敛过慢)

文章配图

更新公式:

文章配图

文章配图

文章配图

其中 θ 是模型参数,η 是学习率,∇θJ(θ) 是损失函数 J(θ) 在全部样本上的梯度。

优点是梯度估计准确,收敛稳定,能保证朝全局最优方向前进;但如果训练集数据过于庞大,会导致计算量大,速度也慢——针对这个进行优化就有了随机梯度下降算法(SGD)。

2. SGD

与 BGD 不同的是,SGD 在每次迭代时只随机选择部分训练样本计算梯度并更新参数。

更新公式:

文章配图

文章配图

文章配图

优点是计算速度快,大数据集适用,并且随机性也有助于跳出局部最优解;但会引入噪声,更新方向也不稳定,收敛过程会产生较大震荡,难以精确收敛——针对此问题又优化引进动量法(Momentum)。

3. Momentum

在更新参数时,不仅考虑当前梯度,还积累之前的梯度方向。

更新公式:

文章配图

文章配图

文章配图

它可以提高速度并有效抑制震荡,但仍需要手动调整学习率——针对这个问题优化为自适应学习算法。

4. AdaGrad 和 RMSProp

为每个参数位数一个独立的学习率,对出现频率低的参数使用较大的学习率,频率高的则使用较小的学习率。RMSProp 则是对前者学习率过早衰减的问题进行优化。

文章配图

文章配图

5. Adam

动量 + 自适应学习(Momentum+RMSProp)是目前最流行的优化算法之一。

利用动量平滑路径,自适应调整每个参数的学习率。

文章配图

收敛速度快,对超参数不敏感,在大多数深度学习任务中表现出色,是默认首选优化器。

c. 评估指标

决定系数 (R²)

R^{^{2}}

(最核心指标),取值为 [0,1],越接近 1 表示拟合效果越好

文章配图

(适用无明显异常值时)

均方误差(Mean Squared Error, MSE):

文章配图

(对大误差更敏感)

均方根误差(Root Mean Squared Error, RMSE):

文章配图

(同样适用于无明显异常值时)

平均绝对误差(Mean Absolute Error, MAE):

文章配图

(对异常值更鲁棒,不进行平方操作,故当存在异常值时使用更为恰当)

除此之外,还有

平均绝对百分比误差(MAPE):

文章配图

(衡量预测值相对真实值的平均百分比误差,适合评估相对偏差的场景)

均方对数误差(MSLE):

文章配图

(目标值范围大,用对数变换可以缓解大值对误差的影响)

3. 逻辑回归

逻辑回归是一种用于分类的统计方法,虽然名字里有'回归',但它本质上是通过线性模型结合 Sigmoid 函数,将预测结果映射到 [0,1] 区间,从而实现对二分类问题的概率预测。其基本公式为:

文章配图

\hat{y}

是预测为正类的概率,z 是线性组合的输出,

\sigma

() Sigmoid 激活函数,将线性输出压缩到概率区间

a. 损失函数

二元交叉熵损失(Binary Cross-Entropy):

文章配图

多分类交叉熵损失(Categorical Cross-Entropy):

文章配图

b. 梯度下降算法(GD)

计算通线性回归,这里不做详细说明。

c. 评估指标

逻辑回归作为分类模型,常用以下指标来评估性能:

混淆矩阵

预测为正类预测为负类
真实为正类真阳性(TP)假阴性(FN)
真实为负类假阳性(FP)真阴性(TN)

准确率 Accuracy

文章配图

(在数据不平衡的情况下极具误导性,仅适用于数据集分布相对平衡时)

精确率 Precision

文章配图

(所有预测为正类中,真正是正的比例,适用于数据不平衡/避免误报时)

召回率 Recall

文章配图

(所有真实为正类中,预测为正的比例,适用于数据不平衡/避免漏报时)

F1 分数

(精确率和召回率的调和平均数,为二者的平衡指标,使用范围广不管数据平不平衡)

AUC

ROC 曲线下的面积,取值范围为 [0,1]。roc 横轴为假阳性率:FP/(FP+TN),纵轴为真阳性率/召回率:TP/(TP+FN)。auc 代表模型区分正负样本的能力,越接近 1 分类能力越强,对数据不平衡不敏感,是评估分类模型的重要指标之一。

目录

  1. 一、机器学习
  2. 二、回归
  3. 1. 训练集与测试集
  4. 2. 线性回归
  5. a. 损失函数
  6. b. 梯度下降算法
  7. 1. BGD
  8. 2. SGD
  9. 3. Momentum
  10. 4. AdaGrad 和 RMSProp
  11. 5. Adam
  12. c. 评估指标
  13. 3. 逻辑回归
  14. a. 损失函数
  15. b. 梯度下降算法(GD)
  16. c. 评估指标

更多推荐文章

查看全部
  • Claude Code 源码泄露深度解析:架构、风控与隐藏功能复盘
  • 低代码开发:提升企业应用搭建效率的新方式
  • OpenClaw 接入企业微信完整流程与配置详解
  • 从 0 到 1 打造 RISC-V 智能家居中控:硬件 + 固件 + 通信全链路实战
  • ZeroClaw Rust AI Agent 框架深度技术分析
  • OpenHarmony Flutter 开发:使用 sanitize_html 净化 HTML 防止 XSS
  • Docker 部署 AI 量化分析平台:波浪理论实战指南
  • IQuest-Coder-V1 vs Meta-Llama-Code:指令模型精度实测
  • ZeroClaw Gateway + LM Studio + Reflex 本地 AI 管理面板搭建
  • AIGC 电影《编钟》制作幕后复盘
  • AMD Nitro-E 304M 轻量级扩散模型技术解析
  • 昇腾平台 DeepSeek-R1 与 Qwen2.5 强化学习训练优化实践
  • Spring Boot 3.5.9:工程视角下的稳定性演进与实战价值
  • AI 时代个人开发者如何用 Python 实现黄金量化交易
  • 基于 LangGraph 构建模块化 Skills 型 AI Agent
  • 睿抗机器人大赛 Oryxbot 仿真环境搭建及 Python 任务控制脚本
  • Zep:时间知识图谱驱动的智能体记忆架构
  • Claude Code 接入 MySQL 实战:辅助开发与 SQL 优化
  • Java 包、抽象类与接口详解
  • Python Plotly 数据可视化:从基础到最佳实践

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online