当前位置: 首页 > news >正文

关于 梯度下降算法、线性回归模型、梯度下降训练线性回归、线性回归的其他训练算法 以及 回归模型分类 的详细说明

以下是关于 梯度下降算法线性回归模型梯度下降训练线性回归线性回归的其他训练算法 以及 回归模型分类 的详细说明:
在这里插入图片描述


1. 梯度下降算法详解

核心概念

梯度下降是一种 优化算法,用于寻找函数的最小值。其核心思想是沿着函数梯度的反方向逐步迭代,最终收敛到局部或全局最小值。

数学原理
  • 梯度(Gradient)
    多变量函数 ( f(\mathbf{w}) ) 的梯度是偏导数的向量:
    [
    \nabla f = \left( \frac{\partial f}{\partial w_1}, \frac{\partial f}{\partial w_2}, \dots, \frac{\partial f}{\partial w_n} \right)
    ]
  • 更新规则
    [
    \mathbf{w}_{t+1} = \mathbf{w}_t - \eta \cdot \nabla J(\mathbf{w}_t)
    ]
    • ( \eta ):学习率(步长)。
    • ( J(\mathbf{w}) ):目标函数(如损失函数)。
算法步骤
  1. 初始化参数:随机选择初始参数 ( \mathbf{w}_0 )。
  2. 计算梯度:在当前参数 ( \mathbf{w}_t ) 处计算目标函数的梯度 ( \nabla J(\mathbf{w}_t) )。
  3. 参数更新:根据梯度方向和学习率调整参数。
  4. 收敛判断:重复步骤2-3,直到梯度足够小或达到迭代次数上限。
变体形式
类型数据使用方式优点缺点
批量梯度下降(BGD)使用全部训练数据计算梯度方向准确,收敛稳定计算开销大,不适合大数据集
随机梯度下降(SGD)每次迭代仅用一个样本计算梯度计算快,适合在线学习收敛波动大,可能陷入局部最优
小批量梯度下降(MBGD)每次迭代使用一小批样本(如32)平衡计算效率与方向稳定性需调参(批大小)
关键问题
  • 学习率选择
    • 过小:收敛慢;过大:可能发散。
    • 解决:自适应学习率(如Adam优化器)、学习率衰减。
  • 局部最优
    • 解决:多初始点尝试、正则化、复杂损失函数设计。

2. 线性回归模型详解

核心概念

线性回归是一种 监督学习算法,用于预测连续型目标变量。其假设变量间存在线性关系。

数学形式
  • 假设函数
    [
    h_\theta(\mathbf{x}) = \theta_0 + \theta_1 x_1 + \theta_2 x_2 + \dots + \theta_n x_n = \mathbf{\theta}^\top \mathbf{x}
    ]

    • ( \mathbf{\theta} ):模型参数(权重和偏置)。
    • ( \mathbf{x} ):特征向量。
  • 损失函数(均方误差 MSE)
    [
    J(\mathbf{\theta}) = \frac{1}{2m} \sum_{i=1}^m (h_\theta(\mathbf{x}^{(i)}) - y{(i)})2
    ]

    • 目标:最小化 ( J(\mathbf{\theta}) )。
求解方法
  1. 正规方程法(解析解)
    [
    \mathbf{\theta} = (\mathbf{X}^\top \mathbf{X})^{-1} \mathbf{X}^\top \mathbf{y}
    ]

    • 无需迭代,但计算复杂度高(需矩阵求逆),适合小数据集。
  2. 梯度下降法(数值解)
    通过迭代更新参数 ( \mathbf{\theta} ),适用于大数据集。

评估指标
  • 均方误差(MSE):衡量预测值与真实值的平均误差。
  • R²(决定系数):表示模型解释的方差比例(取值0到1,1为完美拟合)。

3. 梯度下降训练线性回归模型详解

步骤与数学推导
  1. 初始化参数:随机初始化 ( \theta_0, \theta_1, \dots, \theta_n )。
  2. 计算梯度
    对每个参数 ( \theta_j ),梯度为:
    [
    \frac{\partial J}{\partial \theta_j} = \frac{1}{m} \sum_{i=1}^m (h_\theta(\mathbf{x}^{(i)}) - y^{(i)}) x_j^{(i)}
    ]
  3. 参数更新
    [
    \theta_j := \theta_j - \eta \cdot \frac{\partial J}{\partial \theta_j}
    ]
  4. 迭代优化:重复步骤2-3直到收敛。
Python 实现示例
import numpy as np# 数据集
X = np.array([[1, 1], [1, 2], [1, 3], [1, 4]])  # 添加偏置项
y = np.array([2, 4, 6, 8])# 初始化参数
theta = np.zeros(2)
learning_rate = 0.01
iterations = 1000for _ in range(iterations):predictions = X.dot(theta)errors = predictions - ygradient = (2/X.shape[0]) * X.T.dot(errors)theta -= learning_rate * gradientprint("最优参数:", theta)  # 输出应接近 [0, 2]

4. 训练线性回归模型的其他算法

(1) 正规方程法(Normal Equation)
  • 原理:直接求解最小化损失函数的解析解。
  • 公式
    [
    \mathbf{\theta} = (\mathbf{X}^\top \mathbf{X})^{-1} \mathbf{X}^\top \mathbf{y}
    ]
  • 适用场景:小规模数据,无需迭代。
  • 缺点:计算 ( \mathbf{X}^\top \mathbf{X} ) 的逆矩阵复杂度高(( O(n^3) )),特征过多时不可行。
(2) 牛顿法(Newton’s Method)
  • 原理:利用二阶导数(Hessian 矩阵)加速收敛。
  • 更新规则
    [
    \mathbf{\theta}_{t+1} = \mathbf{\theta}_t - H^{-1}(\mathbf{\theta}_t) \nabla J(\mathbf{\theta}_t)
    ]
    • ( H ):Hessian 矩阵(二阶导数)。
  • 优点:收敛速度快。
  • 缺点:计算 Hessian 矩阵开销大,需存储和求逆。
(3) 坐标下降法(Coordinate Descent)
  • 原理:逐个优化单个参数,其余参数固定。
  • 适用场景:稀疏数据或特征间相关性低。
  • 示例
    对 ( \theta_j ) 更新时,其他参数保持不变,通过求导直接求解最优值。
(4) 随机/小批量梯度下降(SGD/MBGD)
  • SGD:每次迭代用一个样本更新参数,适合在线学习。
  • MBGD:每次迭代用小批量样本(如32),平衡计算效率与方向稳定性。

5. 回归模型的分类

(1) 线性回归(Linear Regression)
  • 特点:假设输入与输出呈线性关系。
  • 适用场景:简单线性关系的预测(如房价与面积)。
(2) 多项式回归(Polynomial Regression)
  • 特点:通过多项式扩展输入特征,拟合非线性关系。
  • 示例
    [
    h_\theta(\mathbf{x}) = \theta_0 + \theta_1 x + \theta_2 x^2
    ]
(3) 岭回归(Ridge Regression)
  • 特点:在损失函数中添加 L2 正则化项,防止过拟合。
  • 公式
    [
    J(\mathbf{\theta}) = \text{MSE} + \alpha \sum_{j=1}^n \theta_j^2
    ]
    • ( \alpha ):正则化系数。
(4) Lasso 回归(Lasso Regression)
  • 特点:添加 L1 正则化项,可自动选择特征(使部分系数为0)。
  • 公式
    [
    J(\mathbf{\theta}) = \text{MSE} + \alpha \sum_{j=1}^n |\theta_j|
    ]
(5) 弹性网络(Elastic Net)
  • 特点:结合 L1 和 L2 正则化,适合高维数据。
  • 公式
    [
    J(\mathbf{\theta}) = \text{MSE} + \alpha \left( r \sum |\theta_j| + \frac{1-r}{2} \sum \theta_j^2 \right)
    ]
    • ( r ):控制 L1/L2 的比例。
(6) 支持向量回归(SVR)
  • 特点:通过核函数处理非线性关系,寻找最大间隔超平面。
  • 适用场景:复杂非线性问题。
(7) 决策树回归(Decision Tree Regression)
  • 特点:通过树结构分割数据,预测连续值。
  • 优点:无需特征缩放,可解释性强。
(8) 集成方法(Ensemble Methods)
  • 随机森林回归(Random Forest):多棵决策树的平均结果。
  • 梯度提升树(GBDT):逐步修正前一棵树的残差。

总结对比表

模型类型是否线性正则化适用场景优点缺点
线性回归线性关系问题简单高效无法处理非线性关系
多项式回归否(扩展后)非线性关系问题灵活拟合曲线可能过拟合
岭回归L2高维数据/共线性问题减少过拟合牺牲部分特征的重要性
Lasso 回归L1特征选择/稀疏数据自动特征选择对噪声敏感
SVR可选非线性复杂问题高泛化能力计算复杂度高
决策树回归非线性关系/高维数据可解释性强容易过拟合
随机森林回归复杂非线性问题减少过拟合计算资源需求大

关键选择建议

  • 线性关系:优先线性回归或正则化线性模型(如岭回归)。
  • 非线性关系:尝试多项式回归、SVR 或决策树/随机森林。
  • 高维数据/过拟合:使用 Lasso 或 Elastic Net 进行特征选择。
  • 复杂模式:集成方法(如随机森林、GBDT)或深度学习模型。

如果需要进一步探讨具体模型的实现细节或对比实验,可以补充说明!

相关文章:

关于 梯度下降算法、线性回归模型、梯度下降训练线性回归、线性回归的其他训练算法 以及 回归模型分类 的详细说明

以下是关于 梯度下降算法、线性回归模型、梯度下降训练线性回归、线性回归的其他训练算法 以及 回归模型分类 的详细说明: 1. 梯度下降算法详解 核心概念 梯度下降是一种 优化算法,用于寻找函数的最小值。其核心思想是沿着函数梯度的反方向逐步迭代&a…...

【数据结构和算法】4. 链表 LinkedList

本文根据 数据结构和算法入门 视频记录 文章目录 1. 链表的概念1.1 链表的类型1.2 链表的基本操作 2. 单向链表的实现2.1 插入2.2 删除2.3 查找2.4 更新 1. 链表的概念 我们知道数组是很常用的数据储存方式,而链表就是继数组之后,第二种最通用的数据储…...

基于S2B2C模式与定制开发开源AI智能名片的小程序商城系统研究

摘要:在新零售蓬勃发展的大背景下,S2B2C模式凭借其对消费场景的强力支撑以及柔性供应链的显著优势,成为推动零售行业变革的关键力量。本文深入剖析S2B2C模式,着重探讨定制开发开源AI智能名片S2B2C商城小程序源码的实践意义。通过分…...

【Python核心库实战指南】从数据处理到Web开发

目录 前言:技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块对比 二、实战演示环境配置要求核心代码实现(5个案例)案例1:NumPy数组运算案例2:Pandas数据分析…...

【错误记录】Windows 命令行程序循环暂停问题分析 ( 设置 “ 命令记录 “ 选项 | 启用 “ 丢弃旧的副本 “ 选项 | 将日志重定向到文件 )

文章目录 一、报错信息二、问题分析1、Windows 命令行的缓冲区机制2、命令记录设置 三、解决方案1、设置 " 命令记录 " 选项2、将日志重定向到文件 一、报错信息 Java 程序中 , 设置 无限循环 , 每次循环 休眠 10 秒后 , 再执行程序逻辑 , 在命令行中打印日志信息 ; …...

【iOS】Blocks学习

Blocks学习 Blocks概要Blocks模式Blocks语法Blocks类型变量截获自动变量值__block说明符截获的自动变量 Blocks的实现Blocks的实质截获自动变量值__block说明符Block存储域_block变量存储域截获对象__block变量和对象 总结 Blocks概要 Blocks是C语言的扩充功能,简单…...

Spring MVC DispatcherServlet 的作用是什么? 它在整个请求处理流程中扮演了什么角色?为什么它是核心?

DispatcherServlet 是 Spring MVC 框架的绝对核心和灵魂。它扮演着前端控制器(Front Controller)的角色,是所有进入 Spring MVC 应用程序的 HTTP 请求的统一入口点和中央调度枢纽。 一、 DispatcherServlet 的核心作用和职责: 请…...

QT 5.15 程序打包

说明: windeployqt 是 Qt 提供的一个工具,用于自动收集并复制运行 Qt 应用程序所需的动态链接库(.dll 文件)及其他资源(如插件、QML 模块等)到可执行文件所在的目录。这样你就可以将应用程序和这些依赖项一…...

PyCharm 初级教程:从安装到第一个 Python 项目

作为 Python 程序员,无论是刚入门还是工作多年,PyCharm 都是一个绕不开的开发工具。它是 JetBrains 出品的一款强大的 Python IDE,有自动补全、调试、虚拟环境支持、代码检查等等功能,体验比命令行 记事本舒服一百倍。 今天这篇…...

【Linux】进程替换与自定义 Shell:原理与实战

目录 一、进程程序替换 1、替换原理 2、替换函数 (1)函数解释 ① filename / pathname ② 参数表传递 ③ 环境变量表传递 (2)命名理解 二、自定义shell命令行解释器 1、实现原理 2、实现代码 (1)获…...

【AI提示词】数据分析专家

提示说明 数据分析师专家致力于通过深入分析和解读数据,帮助用户发现数据背后的模式和趋势。他们通常在商业智能、市场研究、社会科学等领域发挥重要作用,为决策提供数据支持。 提示词 # 角色 数据分析师专家## 注意 1. 数据分析师专家需要具备高度的…...

Lucky配置反向代理+Https安全访问AxureCloud服务(解决证书续签问题)

前言 之前用AxureCloud配置了SSL证书,发现ssl证书3个月就过期了,还需要手动续证书,更改配置文件,重启服务才能正常使用,太过于麻烦。也暴露了过多不安全的端口在公网,操作过于麻烦。另外暴露了过多不安全的…...

vscode使用remote ssh插件连接服务器的问题

本人今天发现自己的vscode使用remote ssh连接不上服务器了,表现是:始终在初始化 解决方法: 参考链接:vscode remote-ssh 连接失败的基本原理和优雅的解决方案 原因 vscode 的 SSH 之所以能够拥有比传统 SSH 更加强大的功能&a…...

WWW和WWWForm类

WWW类 WWW类是什么 //WWW是Unity提供的简单的访问网页的类 //我们可以通过该类上传和下载一些资源 //在使用http是,默认的请求类型是get,如果想要用post上传需要配合WWWFrom类使用 //它主要支持的协议: //…...

利用课程编辑器创新教学,提升竞争力​

(一)快速创建优质教学内容​ 对于教育机构来说,教学内容的质量是吸引学员的关键因素之一。而课程编辑器就像是一位得力的助手,帮助教师快速创建出优质的教学内容。课程编辑器通常具有简洁易用的界面,教师即使没有专业的…...

spark与hadoop的区别

一.概述 二.处理速度 三.编程模型 四:实时性处理 五.spark内置模块 六.spark的运行模式...

【项目日记(三)】

目录 SERVER服务器模块实现: 1、Buffer模块:缓冲区模块 2、套接字Socket类实现: 3、事件管理Channel类实现: 4、 描述符事件监控Poller类实现: 5、定时任务管理TimerWheel类实现: eventfd 6、Reac…...

【图片转PDF工具】如何批量将文件夹里的图片以文件夹为单位批量合并PDF文档,基于WPF实现步骤及总结

应用场景 在实际工作和生活中,我们可能会遇到需要将一个文件夹内的多张图片合并成一个 PDF 文档的情况。例如,设计师可能会将一个项目的所有设计稿图片整理在一个文件夹中,然后合并成一个 PDF 方便交付给客户;摄影师可能会将一次拍摄的所有照片按拍摄主题存放在不同文件夹…...

深度解析算法之位运算

33.常见位运算 1.基础位运算 << 左移操作符 > >右移操作符号 ~取反 &按位与&#xff1a;有0就是0 |按位或&#xff1a;有1就是1 ^按位异或&#xff1a;相同为0&#xff0c;不用的话就是1 /无进位相加 0 1 0 0 1 1 0 1 0 按位与结果 0 1 1 按位或结果 0 0 1 …...

深入探索Qt异步编程--从信号槽到Future

概述 在现代软件开发中,应用程序的响应速度和用户体验是至关重要的。尤其是在图形用户界面(GUI)应用中,长时间运行的任务如果直接在主线程执行会导致界面冻结,严重影响用户体验。 Qt提供了一系列工具和技术来帮助开发者实现异步编程,从而避免这些问题。本文将深入探讨Qt…...

【KWDB 创作者计划】_本地化部署与使用KWDB 深度实践

引言 KWDB 是一款面向 AIoT 场景的分布式多模数据库&#xff0c;由开放原子开源基金会孵化及运营。它能在同一实例同时建立时序库和关系库&#xff0c;融合处理多模数据&#xff0c;具备强大的数据处理能力&#xff0c;可实现千万级设备接入、百万级数据秒级写入、亿级数据秒级…...

基于XC7V690T的在轨抗单粒子翻转系统设计

本文介绍一种基于XC7V690T 的在轨抗单粒子翻转系统架构;其硬件架构主要由XC7V690TSRAM 型FPGA芯片、AX500反熔丝型FPGA 芯片以及多片FLASH 组成;软件架构主要包括AX500反熔丝型FPGA对XC7V690T进行配置管理及监控管理,对XC7V690T进行在轨重构管理,XC7V690T通过调用内部SEMIP核实…...

机器学习 Day13 Boosting集成学习方法: Adaboosting和GBDT

大多数优化算法可以分解为三个主要部分&#xff1a; 模型函数&#xff1a;如何组合特征进行预测&#xff08;如线性加法&#xff09; 损失函数&#xff1a;衡量预测与真实值的差距&#xff08;如交叉熵、平方损失&#xff09; 优化方法&#xff1a;如何最小化损失函数&#x…...

Floyd算法求解最短路径问题——从零开始的图论讲解(3)

目录 前言 Djikstra算法的缺陷 为什么无法解决负权图 模拟流程 什么是Floyd算法 Floyd算法的核心思想 状态表示 状态转移方程 边界设置 代码实现 逻辑解释 举例说明 Floyd算法的特点 结尾 前言 这是笔者图论系列的第三篇博客 第一篇: 图的概念,图的存储,图的…...

spark和hadoop的区别与联系

区别 1. 数据处理模型 Hadoop&#xff1a;主要依赖 MapReduce 模型&#xff0c;计算分 Map&#xff08;映射&#xff09;和 Reduce&#xff08;归约&#xff09;两个阶段&#xff0c;中间结果常需写入磁盘&#xff0c;磁盘 I/O 操作频繁&#xff0c;数据处理速度相对受限&#…...

XMLXXE 安全无回显方案OOB 盲注DTD 外部实体黑白盒挖掘

# 详细点&#xff1a; XML 被设计为传输和存储数据&#xff0c; XML 文档结构包括 XML 声明、 DTD 文档类型定义&#xff08;可 选&#xff09;、文档元素&#xff0c;其焦点是数据的内容&#xff0c;其把数据从 HTML 分离&#xff0c;是独立于软件和硬件的 信息传输…...

C# .NET如何自动实现依赖注入(DI)

为解决重复性的工作&#xff0c;自动实现依赖注入&#xff08;DI&#xff09; 示例代码如下 namespace DialysisSOPSystem.Infrastructure {public static class ServiceCollectionExtensions{/// <summary>/// 批量注入服务/// </summary>/// <param name&qu…...

FastGPT Docker Compose本地部署与硅基流动免费AI接口集成指南

本文参考&#xff1a;https://doc.tryfastgpt.ai/docs/development/ 一、背景与技术优势 FastGPT是基于LLM的知识库问答系统&#xff0c;支持自定义数据训练与多模型接入。硅基流动&#xff08;SiliconFlow&#xff09;作为AI基础设施平台&#xff0c;提供高性能大模型推理引…...

AI对话高效输入指令攻略(三):使用大忌——“AI味”

免责声明&#xff1a; 1.本文所提供的所有 AI 使用示例及提示词&#xff0c;仅用于学术写作技巧交流与 AI 功能探索测试&#xff0c;无任何唆使或鼓励利用 AI 抄袭作业、学术造假的意图。 2.文章中提及的内容旨在帮助读者提升与 AI 交互的能力&#xff0c;合理运用 AI 辅助学…...

算法 | 成长优化算法(Growth Optimizer,GO)原理,公式,应用,算法改进研究综述,matlab代码

===================================================== github:https://github.com/MichaelBeechan CSDN:https://blog.csdn.net/u011344545 ===================================================== 成长优化算法 一、算法原理二、核心公式三、应用领域四、算法改进研究五…...

生产环境问题排查:日志分析与性能瓶颈定位(一)

引言 在当今数字化时代&#xff0c;各类应用系统如潮水般涌现&#xff0c;支撑着我们生活和工作的方方面面。从日常使用的电商平台、社交网络&#xff0c;到企业内部复杂的业务系统&#xff0c;它们的稳定运行和高效性能至关重要。而在生产环境中&#xff0c;日志分析与性能瓶…...

go语言的八股文

1.go语言触发异常的场景有哪些 运行时错误 1.空指针解引用&#xff1a;尝试访问一个未初始化的指针指向的内存&#xff0c;会导致程序崩溃并触发异常。 2.数组越界访问&#xff1a;试图访问数组中不存在的索引&#xff0c;比如数组长度为5&#xff0c;却尝试访问索引为10的元素…...

Office文件内容提取 | 获取Word文件内容 |Javascript提取PDF文字内容 |PPT文档文字内容提取

关于Office系列文件文字内容的提取 本文主要通过接口的方式获取Office文件和PDF、OFD文件的文字内容。适用于需要获取Word、OFD、PDF、PPT等文件内容的提取实现。例如在线文字统计以及论文文字内容的提取。 一、提取Word及WPS文档的文字内容。 支持以下文件格式&#xff1a; …...

组态软件工业化自动领域的可视化配置利器

组态软件是工业自动化领域的可视化配置利器&#xff0c;在工业生产中发挥着至关重要的作用&#xff0c;以下从定义、特点、功能、应用场景、市场现状及发展趋势等方面进行详细介绍&#xff1a; 定义 组态软件&#xff0c;又称组态监控系统软件&#xff0c;是用于数据采集和过程…...

Ansys electronics安装多版本simulink打开s-function冲突解决方法

安装了Ansys Electronics 2022 R1和2024 R1&#xff0c;想通过simplorer和simulink中的S-function进行联合仿真&#xff0c;结果注册表一直是2024 R1&#xff0c;修改方法如下&#xff1a; 1. WINR打开cmd&#xff0c;注意要用管理员权限打开 2. 输入 "D:\ANSYS\AnsysE…...

ubuntu--安装双系统

教程 BIOS设置 启动盘生成和ubuntu安装 boot option #1设置USB为第一启动项 rufus下载 官网&#xff1a; 链接 点击“链接”下面的按钮&#xff0c;即可下载。(注意查看自己的电脑是x64还是x84) 网盘下载&#xff1a; 链接...

快速搭建 Cpolar 内网穿透(Mac 系统)

1、Cpolar快速入门教程&#xff08;官方&#xff09; 链接地址&#xff1a;Cpolar 快速入门 2、官方教程详解 本地安装homebrew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"这个是从 git 上拉取的&#x…...

【pytorch】torch.nn.Unfold操作

说明 一个代码里涉及到了unfold的操作&#xff0c;看了半天官网都没整明白维度怎么变化的&#xff0c;参考这个链接搞明白了&#xff1a; https://blog.csdn.net/ViatorSun/article/details/119940759 https://zhuanlan.zhihu.com/p/361140988 维度计算 输入&#xff08; N,…...

使用PyTorch实现图像增广与模型训练实战

本文通过完整代码示例演示如何利用PyTorch和torchvision实现常用图像增广方法&#xff0c;并在CIFAR-10数据集上训练ResNet-18模型。我们将从基础图像变换到复杂数据增强策略逐步讲解&#xff0c;最终实现一个完整的训练流程。 一、图像增广基础操作 1.1 准备工作 #matplotli…...

PyTorch实现糖尿病预测的CNN模型:从数据加载到模型部署全解析【N折交叉验证、文末免费下载】

本文将详细介绍如何使用PyTorch框架构建一个卷积神经网络(CNN)来预测糖尿病&#xff0c;包含完整的代码实现、技术细节和可视化分析。 1. 项目概述 本项目使用经典的Pima Indians Diabetes数据集&#xff0c;通过5折交叉验证训练一个1D CNN模型&#xff0c;最终实现糖尿病预测…...

红队专题-漏洞挖掘-代码审计-反序列化

漏洞挖掘-代码审计-反序列化 加固/防御命令执行相关日志Tools-JNDIExploitJNDI Java Naming and Directory Interface Java命名目录接口注入原理payload参数渗透测试-php命令执行-RCE+Struts2拿webshell普通权限 命令执行 拿 webshellCMD echo 写入一句话 php文件菜刀连接Strut…...

【2025软考高级架构师】——计算机系统基础(7)

摘要 本文主要介绍了计算机系统的组成&#xff0c;包括硬件和软件两大部分。硬件由处理器、存储器、总线、接口和外部设备等组成&#xff0c;软件则涵盖系统软件和应用软件。文章还详细阐述了冯诺依曼计算机的组成结构&#xff0c;包括 CPU、主存储器、外存等&#xff0c;并解…...

【网络原理】TCP协议如何实现可靠传输(确认应答和超时重传机制)

目录 一. TCP协议 二. 确定应答 三. 超时重传 一. TCP协议 1&#xff09;端口号 源端口号&#xff1a;发送方端口号目的端口号&#xff1a;接收方端口号 16位&#xff08;2字节&#xff09;端口号&#xff0c;可以表示的范围&#xff08;0~65535&#xff09; 源端口和目的…...

Java synchroinzed和ReentrantLock

synchronized —— JVM亲儿子的暗黑兵法 核心思想&#xff1a;“锁即对象&#xff0c;对象即锁&#xff01;” 底层三板斧 对象头里的锁密码 每个Java对象头里藏了两个骚东西&#xff1a; Mark Word&#xff1a;32/64位的比特修罗场&#xff0c;存哈希码、GC年龄&#xff0…...

【Linux】vim配置----超详细

目录 一、插件管理器准备 二、目录准备 三、安装插件 一、插件管理器准备 Vim-plug 是一个Vim插件管理器&#xff0c;利用异步并行可以快速地安装、更新和卸载插件。它的安装和配置都非常简单&#xff0c;而且在操作过程中会给出很多易读的反馈信息&#xff0c;是一个自由、…...

驱动开发硬核特训 · Day 15:电源管理核心知识与实战解析

在嵌入式系统中&#xff0c;电源管理&#xff08;Power Management&#xff09;并不是“可选项”&#xff0c;而是实际部署中影响系统稳定性、功耗、安全性的重要一环。今天我们将以 Linux 电源管理框架 为基础&#xff0c;从理论结构、内核架构&#xff0c;再到典型驱动实战&a…...

如何使用人工智能大模型,免费快速写工作计划?

如何使用人工智能大模型&#xff0c;免费快速写工作计划&#xff1f; 具体视频教程https://edu.csdn.net/learn/40406/666579...

延长(暂停)Windows更新

延长&#xff08;暂停&#xff09;Windows更新 因为不关闭更新有时候就会出现驱动或者软硬件不兼容&#xff0c;导致蓝屏出现。 注&#xff1a;为什么选择延长更新而不是用软件暂停更新&#xff0c;因为使用软件暂停更新会出现一下问题&#xff0c;比如微软商店打不开等等 键…...

QT实现串口透传的功能

在一些产品的开发的时候&#xff0c;需要将一个串口的数据发送给另外一个串口进行转发。 具体的代码如下&#xff1a; #include "mainwindow.h" #include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::Ma…...

分布类相关的可视化图像

目录 一、直方图&#xff08;Histogram&#xff09; 1.定义 2.特点 3.局限性 4.类型 5.应用场景 6.使用Python实现 二、密度图&#xff08;Density Plot&#xff09; 1.定义 2.特点 3.局限性 4.类型 5.应用场景 6.使用Python实现 三、箱线图&#xff08;Box Plo…...