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

【AI论文】通过R1-Zero类似训练改进视觉空间推理

摘要:人们越来越关注提升多模态大型语言模型(MLLMs)的推理能力。作为在物理领域中运作的人工智能代理的基石,基于视频的视觉空间智能(VSI)成为MLLMs最为关键的推理能力之一。本研究首次深入探讨了通过R1-Zero类训练提升MLLMs视觉空间推理能力的方法。技术上,我们首先发现,通过思维链(Chain of Thought, CoT)提示无法激活中小型Qwen2-VL模型的视觉空间推理能力。随后,我们借鉴DeepSeek-R1-Zero的方法,利用精心策划的VSI-100k数据集,引入GRPO训练以提升视觉空间推理能力。在研究过程中,我们认识到在GRPO中保持KL惩罚(即使值很小)的必要性。仅用120个GPU小时,我们从Qwen2-VL-2B微调得到的vsGRPO-2B模型,性能即可超越基础模型12.1%,并超越GPT-4o。此外,我们从Qwen2-VL-7B微调得到的vsGRPO-7B模型,性能可与最佳开源模型LLaVA-NeXT-Video-72B相媲美。此外,我们将vsGRPO与监督微调和直接偏好优化基线进行比较,观察到其性能优势显著。代码和数据集将很快提供。Huggingface链接:Paper page,论文链接:2504.00883

研究背景和目的

研究背景

随着人工智能技术的快速发展,多模态大型语言模型(MLLMs)逐渐成为研究和应用的热点。这类模型能够处理文本、图像和视频等多种模态的输入,并输出文本响应,为多种应用提供了强大的基础,如多模态理解、视觉语言代理、自动驾驶等。然而,尽管MLLMs在多模态理解方面取得了显著进展,但在处理复杂的视觉空间推理任务时仍面临挑战。视觉空间推理能力,特别是基于视频的视觉空间智能(VSI),是MLLMs在物理世界中运作的基石,对于实现更高级别的认知能力和决策制定至关重要。

当前,现有的MLLMs在视觉空间推理任务上的表现往往不尽如人意。这主要是由于这些模型在训练过程中缺乏针对视觉空间推理能力的专门优化,导致它们在处理需要深度理解和空间感知的任务时存在局限。此外,尽管思维链(Chain of Thought, CoT)提示等技术在提升语言模型推理能力方面取得了一定成效,但对于中小型MLLMs来说,这些方法在激活其视觉空间推理能力方面效果有限。

为了应对这些挑战,本研究聚焦于通过特定的训练策略来提升MLLMs的视觉空间推理能力。我们选择了Qwen2-VL模型作为基础模型,这是因为它在视觉语言任务中表现出了良好的性能,但在视觉空间推理方面仍有提升空间。通过深入分析Qwen2-VL模型在视觉空间推理任务上的表现,我们旨在找到一种有效的训练方法来显著提升其视觉空间推理能力。

研究目的

本研究的主要目的是通过R1-Zero类训练方法来改进MLLMs的视觉空间推理能力。具体目标包括:

  1. 评估现有方法:首先,我们评估了CoT提示等现有技术在激活Qwen2-VL模型视觉空间推理能力方面的效果,并发现这些方法对于中小型模型来说效果有限。
  2. 引入新训练方法:鉴于现有方法的局限性,我们引入了GRPO(Group Relative Policy Optimization)训练方法,旨在通过强化学习的方式提升模型的视觉空间推理能力。
  3. 构建专门数据集:为了支持GRPO训练,我们精心策划了VSI-100k数据集,该数据集包含了大量基于视频的视觉空间推理任务,为模型的训练提供了丰富的高质量数据。
  4. 验证方法有效性:通过对比实验,我们验证了GRPO训练方法在提升Qwen2-VL模型视觉空间推理能力方面的有效性,并展示了其相对于其他训练方法的优越性。
  5. 推动模型应用:最终,我们希望通过改进Qwen2-VL模型的视觉空间推理能力,推动其在自动驾驶、机器人导航等实际应用场景中的落地应用。

研究方法

数据集构建

为了支持本研究中的GRPO训练,我们精心策划了VSI-100k数据集。该数据集包含了超过100,000个样本,每个样本都是一个基于视频的视觉空间推理任务。我们通过以下步骤构建了该数据集:

  1. 数据收集:我们利用ScanNet等公开数据集获取了高保真度的视频扫描数据,这些数据包含了详细的物体级3D标注信息。
  2. 问题生成:基于收集到的视频扫描数据和3D标注信息,我们生成了大量与空间信息相关的问题和答案对。这些问题涵盖了对象计数、绝对距离测量、对象大小评估、房间大小评估、相对距离、相对方向、路线规划和外观顺序等多个方面。
  3. 质量控制:为了确保数据集的质量,我们对生成的问题和答案对进行了严格的审核和筛选,去除了重复、模糊或错误的数据。
模型训练

在模型训练方面,我们采用了GRPO训练方法。GRPO是一种强化学习方法,它消除了传统强化学习中的评论家模型,从而降低了训练成本。具体训练过程如下:

  1. 策略模型采样:对于每个问题,我们从策略模型πθold中采样一组输出集合{o1, o2, ..., oG}。
  2. 优势函数计算:我们利用组奖励{r1, r2, ..., rG}计算优势函数Ai,该函数用于衡量每个输出相对于平均输出的优势。
  3. KL惩罚:为了避免模型在训练过程中偏离初始点太远,我们引入了KL惩罚项DKL(πθ∥πref),其中πref是参考策略模型。
  4. 策略更新:最后,我们利用优势函数和KL惩罚项来更新策略模型πθ,以最大化期望奖励。

在训练过程中,我们还采用了多种奖励函数来引导模型的训练方向。这些奖励函数包括格式奖励和准确性奖励等。格式奖励用于衡量模型的输出是否符合指定的格式要求,而准确性奖励则用于衡量模型的输出与真实答案之间的相似度。

模型评估

为了评估训练后的模型性能,我们在VSI-bench等基准测试集上进行了全面的实验。具体评估指标包括平均对象计数、绝对距离测量、对象大小评估、房间大小评估、相对距离、相对方向、路线规划和外观顺序等多个方面的准确率。此外,我们还采用了不同的提示策略(如Think-mode、Observe-mode和Vanilla-mode)来测试模型的泛化能力。

研究结果

主要结果

通过GRPO训练,我们成功提升了Qwen2-VL模型的视觉空间推理能力。具体结果如下:

  1. 性能提升:对于基于Qwen2-VL-2B的vsGRPO-2B模型,其在VSI-bench上的性能相对于基础模型提升了12.1%,并超越了GPT-4o等先进模型。对于基于Qwen2-VL-7B的vsGRPO-7B模型,其性能则与最佳开源模型LLaVA-NeXT-Video-72B相当。
  2. 泛化能力:通过采用不同的提示策略进行测试,我们发现训练后的模型在未见过的任务上也表现出了良好的泛化能力。这表明GRPO训练不仅提升了模型的特定任务性能,还增强了其整体推理能力。
  3. 奖励函数分析:在训练过程中,我们观察到格式奖励和准确性奖励对模型的性能提升起到了重要作用。特别是准确性奖励,在训练后期对模型性能的进一步提升起到了关键作用。
KL惩罚的重要性

在GRPO训练过程中,我们发现保持KL惩罚(即使值很小)对于稳定训练过程至关重要。如果没有KL惩罚项,模型在训练过程中很容易偏离初始点太远,导致训练崩溃。通过引入KL惩罚项,我们能够有效地避免这种情况的发生,从而确保了训练的稳定性和有效性。

与其他方法的比较

我们还将GRPO训练方法与监督微调和直接偏好优化等基线方法进行了比较。实验结果表明,GRPO训练方法在提升模型视觉空间推理能力方面表现出了显著的优势。具体来说,GRPO训练后的模型在VSI-bench上的性能优于监督微调和直接偏好优化后的模型。

研究局限

尽管本研究在提升MLLMs视觉空间推理能力方面取得了一定成果,但仍存在一些局限性:

  1. 数据集规模:尽管我们构建了VSI-100k数据集来支持模型的训练,但该数据集的规模仍相对有限。未来可以考虑进一步扩大数据集的规模,以包含更多样化的视觉空间推理任务。
  2. 模型选择:本研究选择了Qwen2-VL模型作为基础模型。虽然该模型在视觉语言任务中表现良好,但在处理更复杂的视觉空间推理任务时仍可能存在局限。未来可以考虑探索其他类型的MLLMs,以进一步验证GRPO训练方法的普适性。
  3. 奖励函数设计:在训练过程中,我们采用了格式奖励和准确性奖励等函数来引导模型的训练方向。然而,这些奖励函数可能无法完全捕捉到视觉空间推理任务中的所有关键要素。未来可以考虑设计更精细的奖励函数来更好地指导模型的训练过程。
  4. 计算资源需求:GRPO训练方法需要较多的计算资源来支持模型的训练过程。尽管本研究在有限的计算资源下取得了不错的成果,但未来可以考虑进一步优化算法以降低计算资源需求。

未来研究方向

针对本研究的局限性,未来可以考虑以下研究方向:

  1. 扩大数据集规模:通过收集更多样化的视频扫描数据和生成更多样化的视觉空间推理任务来扩大数据集的规模。这将有助于提升模型的泛化能力和处理更复杂任务的能力。
  2. 探索其他模型架构:除了Qwen2-VL模型外,还可以探索其他类型的MLLMs(如BERT、GPT等)作为基础模型来验证GRPO训练方法的普适性。这将有助于我们更全面地了解GRPO训练方法在不同模型架构上的表现。
  3. 设计更精细的奖励函数:通过深入分析视觉空间推理任务的特点和要求来设计更精细的奖励函数。这将有助于更好地引导模型的训练过程并提升其在视觉空间推理任务上的表现。
  4. 优化算法降低计算资源需求:通过优化GRPO训练算法来降低其对计算资源的需求。例如,可以采用更高效的优化算法或并行计算技术来加速模型的训练过程。这将有助于使GRPO训练方法更易于在实际应用中推广和使用。

此外,未来还可以考虑将GRPO训练方法与其他先进技术相结合来进一步提升MLLMs的视觉空间推理能力。例如,可以将GRPO训练与迁移学习、多任务学习等技术相结合来利用其他相关任务的知识来辅助模型的训练过程。这将有助于提升模型的性能和泛化能力,并推动其在更多实际应用场景中的落地应用。

相关文章:

【AI论文】通过R1-Zero类似训练改进视觉空间推理

摘要:人们越来越关注提升多模态大型语言模型(MLLMs)的推理能力。作为在物理领域中运作的人工智能代理的基石,基于视频的视觉空间智能(VSI)成为MLLMs最为关键的推理能力之一。本研究首次深入探讨了通过R1-Ze…...

游戏引擎学习第203天

回顾当前情况 在这里我将直播完成整个游戏的制作。我们现在面临一些技术上的困难,确实如此。我的笔记本电脑的电源接口坏了,所以我不得不准备了这台备用笔记本,希望它能够正常工作。我所以希望一切都还好,尽管我不完全确定是否一…...

从菜鸟到高手的提示词优化指南‌

如何用“说话的艺术”榨干AI潜力? ——从菜鸟到高手的提示词优化指南‌ 一、什么是好的提示词? 核心公式‌:精准提问 明确需求 限定条件 示范案例 好比让AI帮你买咖啡—— ❌ 差提示:“帮我买杯咖啡”(AI可能随便…...

应对高并发的根本挑战:思维转变【大模型总结】

以下是对这篇技术总结的详细解析,以分步说明的形式呈现,帮助理解亿万并发场景下的核心策略与创新思维: 一、应对高并发的根本挑战:思维转变 1. 传统架构的局限 问题:传统系统追求零故障和强一致性,但在海…...

【Java集合】单列集合List详解

参考笔记: java 单列集合List 万字详解(通俗易懂)_java singlelist-CSDN博客 目录 前言: 一、概述 二、特点 三、使用集合的经典四部曲 四、List接口常用的方法 五、List接口实现类——ArrayList 六、List接口实现类——Ve…...

蓝桥刷题note13(排序)

1.冒泡排序 适用场景: 数据量较小:适用于数据量较小的情况,例如数组长度在 10 以内。 优点 稳定性:冒泡排序是一种稳定的排序算法,相同元素的相对顺序不会改变。 缺点 时间复杂度高:平均和最坏时间复杂度为…...

【AI模型核心流程】(一)大语言模型输入处理机制详解与常见误解辨析

一、引言 大语言模型(LLM)如GPT、BERT、LLaMA等,已成为自然语言处理领域的核心技术。然而,许多开发者对其底层输入处理机制存在误解,尤其是从自然语言文本到模型可理解的向量表示这一过程。本文将从技术细节出发&…...

如何完整迁移 Git 仓库 ?

Git 已经成为软件开发中版本控制和协作的事实上的标准。有时,开发人员可能需要将整个 Git 存储库 (包括其历史记录、分支和标记) 移动到新的位置或托管服务。在这个全面的指南中,我们将讨论在不丢失任何关键数据或历史记录的情况下无缝地重新定位完整 Gi…...

《在 Ubuntu 22.04 上安装 CUDA 11.8 和 Anaconda,并配置环境变量》

安装 CUDA 11.8 和 Anaconda 并配置环境变量 在本教程中,我们将介绍如何在 Ubuntu 22.04 上安装 CUDA 11.8 和 Anaconda,并配置相应的环境变量。我们还将配置使用 阿里云镜像源 来加速软件包更新。以下是具体步骤。 步骤 1:更新软件源 首先…...

残差神经网络(ResNet)概念解析与用法实例:简洁的图像处理任务

目录 1. 前言 2. ResNet的核心思想 2.1 残差学习 2.2 跳跃连接 3. ResNet的架构 3.1 残差块 3.2 ResNet的整体架构 4. ResNet实例:随便处理处理图像 5. 总结 1. 前言 随着深度学习的发展,神经网络的层数不断增加,但随之而来的是梯度…...

家里网络访问Github有时候打不开,解决办法

1、修改Hosts文件修改法 通过DNS查询工具(如)获取最新GitHub域名解析IP修改系统hosts文件(路径:C:\Windows\System32\drivers\etc\hosts),添加:20.205.243.166 github.com 20.27.177.113 github…...

VirtualBox 配置双网卡(NAT + 桥接)详细步骤

在 VirtualBox 中为 CentOS 虚拟机配置双网卡(NAT 桥接),使其既能访问外网(NAT),又能与宿主机(Windows 10)或局域网通信(桥接)。 步骤 1:关闭虚…...

【2023】ORIGIN或MATLAB 颜色图,等高图,颜色条——需要拟合补全中间的颜色

前言 不是我疯了,就是世界疯了。我不知道究竟是哪一个疯了。瓶口和瓶盖尺寸不符。也许该怪瓶子,也许该怪盖子。但不管怎样,尺寸不符的事实不容动摇——《1Q84》 \;\;\;\;\;\; 有十几二十个导出的曲线数据,其中第一列是频率点,大约1001个,第二列是某种数据,都在0~1之间…...

flutter 专题 七十三Flutter打包未签名的ipa

在Flutter项目开发完成之后,需要把iOS项目拿给第三方(如打包机)进行签名,那我们首先就需要准备打包好未签名的的ipa包。 打包之前,需要先从第三方获取到iOS证书(.p12)和描述文件(.mobileprovision),然后然…...

ngx_get_full_name

定义在 src\core\ngx_file.c ngx_int_t ngx_get_full_name(ngx_pool_t *pool, ngx_str_t *prefix, ngx_str_t *name) {size_t len;u_char *p, *n;ngx_int_t rc;rc ngx_test_full_name(name);if (rc NGX_OK) {return rc;}len prefix->len;#if (NGX_WIN32)if (…...

leetcode-代码随想录-链表-链表总结篇

理论基础 链表: 每个节点由两部分组成:数据域和指针域(存放指向下一个节点的指针);入口节点称为头节点;最后一个节点的指针域指向NULL(空指针)。 分类: 单链表双链表&…...

如何用Python轻松实现快速复制或剪切文件列表中的所有文件呢?

在程序开发的过程中,处理文件是我们日常工作中一个很重要的环节。想象一下,当你需要把一大堆文件从一个文件夹移动到另一个文件夹时,手工操作真的会让人觉得烦躁对吧?这时,用代码来处理这些烦恼,真是太方便…...

【棒垒球规则】全国幼儿软式棒垒球比赛规则(二)·棒球1号位

幼儿棒垒球设备 2.01 球棒 球棒使用组委会提供的泡棉发泡安全球棒,以安全环保材料制成;球棒规格:长度为 53 厘米,重量为 200 克(10 克),棒头直径为 7 厘米,握把直径为 3 厘米。 2…...

在MacOS 10.15上使用MongoDB

这次是在MacOS 10.15上使用MongoDB。先在豆包问支持MacOS 10.15的MongoDB最新版是什么,答案是MongoDB 5.0。 抱着谨慎怀疑的态度去官方网站查询了一下,答案如下 MongoDB 7.x支持的最低版本MacOS是11MongoDB 6.x支持的最低版本MacOS是10.14 又找deepsee…...

【Ragflow】11. 文件解析流程分析/批量解析实现

概述 本文继续对ragflow文档解析部分进行分析,并通过脚本的方式实现对文件的批量上传解析。 文件解析流程 文件解析的请求处理流程大致如下: 1.前端上传文件,通过v1/document/run接口,发起文件解析请求 2.后端api\apps\docum…...

企业供应链管理

企业供应链管理 企业供应链管理 企业供应链管理企业信息化信息化的作用信息化的发展阶段信息化建设的挑战 SRM(供应商关系管理)SRM架构参考图企业内部系统协作: ERP (企业资源计划)OA (办公自动化)业务功能模块:企业日常办公 EMS …...

性能测试之jmeter的基本使用

简介 Jmeter是Apache的开源项目,基于Java开发,主要用于进行压力测试。 优点:开源免费、支持多协议、轻量级、功能强大 官网:https://jmeter.apache.org/index.html 安装 安装步骤: 下载:进入jmeter的…...

常见的微信个人号二次开发功能

一、常见开发功能 1. 好友管理 好友列表维护 添加/删除好友 修改好友信息(备注、标签等) 分组管理 创建/编辑/删除标签 好友分类与筛选 2. 消息管理 信息发送 支持多类型内容:文本、图片、视频、文件、小程序、名片、URL链接等 附加功…...

Muduo网络库实现 [十三] - HttpRequest模块

目录 设计思路 成员设计 模块实现 设计思路 首先我们要先知道HTTP的请求的流程是什么样子的,不然我们会学的很迷糊。对于HTTP请求如何到来以及去往哪里,我们应该很清楚的知道 HTTP请求在服务器系统中的传递流程是一个多层次的过程: 客户端发起请求…...

探索C++11:解锁现代编程(3)

1.包装器 1.1function std::function 是 C 标准库中的一个模板类&#xff0c;位于 <functional> 头文件中。它用于封装可调用对象&#xff0c;包括普通函数、Lambda 表达式、函数对象、成员函数等。std::function 提供了极大的灵活性&#xff0c;使得你可以将不同类型的…...

软件工程(应试版)图形工具总结(二)

遇到的问题&#xff0c;都有解决方案&#xff0c;希望我的博客能为你提供一点帮助。 教材参考《软件工程导论&#xff08;第六版&#xff09;》 七、 层次图&#xff08;H图&#xff09;与HIPO图 1、概述 1.1、层次图&#xff08;Hierarchy Chart / H图&#xff09; ​核心…...

人工智能在前端开发中的应用探索

一、人工智能在前端开发中的应用场景 人工智能&#xff08;AI&#xff09;技术的快速发展为前端开发带来了新的机遇和挑战。AI在前端开发中的应用主要集中在以下几个方面&#xff1a;智能代码生成、自动化测试、个性化推荐、智能交互设计以及性能优化。这些应用场景不仅提高了…...

木马学习记录

一句话木马是什么 一句话木马就是仅需要一行代码的木马&#xff0c;很简短且简单&#xff0c;木马的函数将会执行我们发送的命令 如何发送命令&#xff06;发送的命令如何执行? 有三种方式&#xff1a;GET&#xff0c;POST&#xff0c;COOKIE&#xff0c;一句话木马中用$_G…...

WebSocket 也有跨域问题?如何让 Spring Boot WebSocket 允许跨域连接?

前言 在现代 Web 开发中&#xff0c;跨域问题一直是开发者必须面对的挑战。无论是传统的 HTTP 请求还是实时通信的 WebSocket&#xff0c;浏览器的同源策略&#xff08;Same-Origin Policy&#xff09;都可能成为功能实现的拦路虎。许多开发者对 HTTP 的跨域解决方案&#xff…...

音视频入门基础:MPEG2-PS专题(8)——使用Wireshark分析GB28181的PS流

音视频入门基础&#xff1a;MPEG2-PS专题系列文章&#xff1a; 音视频入门基础&#xff1a;MPEG2-PS专题&#xff08;1&#xff09;——MPEG2-PS官方文档下载 音视频入门基础&#xff1a;MPEG2-PS专题&#xff08;2&#xff09;——使用FFmpeg命令生成ps文件 音视频入门基础…...

Bash详解

各类资料学习下载合集 ​​https://pan.quark.cn/s/8c91ccb5a474​​ Bash详解 Bash(Bourne Again SHell)是Linux和Unix系统中最常用的命令行解释器之一。它不仅提供了强大的命令行操作功能,还支持脚本编程,使得用户能够自动化任务和实现复杂的操作。本文将详细介绍Bash…...

WORD+VISIO输出PDF图片提高清晰度的方法

WORDVISIO输出PDF图片提高清晰度的方法 part 1: visio 绘图part 2: word 导出 part 1: visio 绘图 先在visio中把图片和对应的文字调整为适合插入到文章中的尺寸&#xff1b; 在visio中把所有元素进行组合&#xff1b; 把组合后的图片长和宽等比例放缩&#xff0c;如放大10倍…...

springMVC--Controller配置总结

控制器Controller 控制器复杂提供访问应用程序的行为&#xff0c;通常通过接口定义或注解定义两种方式 控制器负责解析客户的请求并转换成一个模型 在springMVC中&#xff0c;一个控制器类可以包含多种方法 在springMVC中&#xff0c;对于controller的配置有多种 实现Contr…...

JavaScript BOM核心对象、本地存储

目录 BOM 核心对象详解 一、location 对象 1. 常用属性 2. 常用方法 3. 应用场景 二、navigator 对象 1. 核心属性 2. 常用方法 3. 应用场景 三、history 对象 1. 核心属性和方法 2. 应用场景 四、兼容性与注意事项 五、总结 本地存储与复杂数据类型处理 一、本…...

单元测试之测试覆盖率-jacoco基本使用

简介 免费的、开源的、针对java的单元测试覆盖率工具。基于字节码&#xff0c;无需源码也可以工作。 代码覆盖率&#xff1a;用来衡量测试代码对功能代码的测试情况&#xff0c;量化说明测试的充分度。通过执行测试用例&#xff0c;功能代码中的哪些行被执行了&#xff0c;哪…...

css3.31面试题

CSS 相关的面试题一般围绕基础知识、布局、性能优化、兼容性、深入原理等几个方向。以下是一些常见的面试题总结&#xff1a; CSS 基础知识 盒模型&#xff08;Box Model&#xff09;是什么&#xff1f;有哪些类型&#xff1f; px、em、rem、vw、vh、% 的区别&#xff1f; …...

Nature Electronics|一种透气、可拉伸的液态金属基3D电子皮肤系统(健康监测/可穿戴电子/透汗透气性电子/电子皮肤/柔性电子/集成电路)

一、 摘要 穿戴式和皮肤电子设备的发展要求高密度可伸展电子系统能够与软组织共形,持续运行并提供长期的生物相容性。大多数可拉伸电子系统的集成密度低,并且与外部印刷电路板连接,这限制了功能,降低了用户体验并阻碍了长期可用性。在此,作者提出了一种可渗透的三维集成电…...

【家政平台开发(15)】解锁Spring Boot:家政平台后端开发全攻略

本【家政平台开发】专栏聚焦家政平台从 0 到 1 的全流程打造。从前期需求分析&#xff0c;剖析家政行业现状、挖掘用户需求与梳理功能要点&#xff0c;到系统设计阶段的架构选型、数据库构建&#xff0c;再到开发阶段各模块逐一实现。涵盖移动与 PC 端设计、接口开发及性能优化…...

AI Agent设计模式二:Parallelization

概念 &#xff1a;并行任务执行引擎 ✅ 优点&#xff1a;提升吞吐量&#xff0c;充分利用多核资源❌ 缺点&#xff1a;复杂度高&#xff0c;存在竞态条件风险 from langchain_openai import ChatOpenAI from langgraph.graph import StateGraph, START, END from typing impor…...

Upload-labs靶场通关

之前搭好了靶场&#xff0c;Upload-labs 靶场搭建 及一句话木马的原理与运用-CSDN博客 今天开始通关并写详细流程 Pass-1 来到靶场的第一关 先随便上传php 代码 点击上传 发现文件类型被限制了 方法1&#xff1a; 改文件后缀为合法文件&#xff08;.jpg .png .gif&#xf…...

Python数据结构之有序列表

一.基本介绍 在有序列表中&#xff0c;元素的相对位置取决于它们的基本特征。它们通常以升序或者降序排列&#xff0c;并且我们假设元素之间能进行有意义的比较。有序列表和无序列表(链表)的许多操作都是相同的。 二.代码实现 class OrderedList:"""有序列表类…...

LMK04828使用指南-01-简介与引脚功能描述

简介 LMK0482x系列是业界性能最高的时钟调节器&#xff0c;支持JEDEC JESD204B。 PLL2的14个时钟输出可以配置为使用设备和SYSREF时钟驱动七个JESD204B转换器或其他逻辑设备。可以使用直流和交流耦合提供SYSREF。不限于JESD204B应用&#xff0c;14个输出中的每一个都可以单独…...

统计学基本原理

目录 文章目录 目录统计学统计学基本概念描述性统计数据可视化图表工具 汇总统计统计数据的分布情况&#xff1a;中位数、众数、平均值统计数据的离散程度&#xff1a;极差、方差、标准差、离散系数 相关分析Pearson 线性关系相关系数Spearman 单调关系相关系数 回归分析回归模…...

日常真实工作环境,Mysql常用操作命令,笔记!

1、开放增删改查权限&#xff0c;不开放表结构修改权限 有许多生产环境是不需要修改表结构的&#xff0c;也是为了防止SQL注入。 创建用户 mysql> grant all on *.* to ie% identified by test1设置权限 1.首先我们先回收所有权限。 revoke all on *.* from ie% ;2.设…...

洛谷题单3-P1307 [NOIP 2011 普及组] 数字反转-python-流程图重构

题目描述 给定一个整数 N N N&#xff0c;请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式&#xff0c;即除非给定的原数为零&#xff0c;否则反转后得到的新数的最高位数字不应为零&#xff08;参见样例 2&#xff09;。 输入格式 一个整数 N N N。 …...

洛谷题单3-P1420 最长连号-python-流程图重构

题目描述 输入长度为 n n n 的一个正整数序列&#xff0c;要求输出序列中最长连号的长度。 连号指在序列中&#xff0c;从小到大的连续自然数。 输入格式 第一行&#xff0c;一个整数 n n n。 第二行&#xff0c; n n n 个整数 a i a_i ai​&#xff0c;之间用空格隔开…...

PostgreSQL:表分区与继承

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;精通Java编…...

【NLP 55、投机采样加速推理】

目录 一、投机采样 二、投机采样改进&#xff1a;美杜莎模型 流程 改进 三、Deepseek的投机采样 流程 Ⅰ、输入文本预处理 Ⅱ、引导模型预测 Ⅲ、候选集筛选&#xff08;可选&#xff09; Ⅳ、主模型验证 Ⅴ、生成输出与循环 骗你的&#xff0c;其实我在意透了 —— 25.4.4 一、…...

CSS 创建与使用学习笔记

一、CSS 的作用 CSS&#xff08;层叠样式表&#xff09;用于控制 HTML 文档的样式和布局。当浏览器读取一个样式表时&#xff0c;它会根据样式表中的规则来格式化 HTML 文档&#xff0c;从而实现页面的美化和布局调整。 二、插入样式表的方法 CSS 可以通过以下三种方式插入到…...

CSS Id 和 Class 选择器学习笔记

一、概述 在 CSS 中&#xff0c;id 和 class 选择器是用于为 HTML 元素指定样式的强大工具。它们可以帮助我们精确地控制页面中元素的样式&#xff0c;让页面设计更加灵活和高效。 二、id 选择器 1. 定义和使用 定义&#xff1a;id 选择器用于为具有特定 id 属性的 HTML 元素…...