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

CVPR‘25 SOTA——GoalFlow论文精读

1)第一遍___粗读

Q: 这篇论文试图解决什么问题?

A: 这篇论文提出了一个名为 GoalFlow 的端到端自动驾驶方法,旨在解决自动驾驶场景中高质量多模态轨迹生成的问题。具体而言,它试图解决以下问题:

  1. 轨迹选择的复杂性:在自动驾驶中,通常不存在单一的合适轨迹,而是存在多种可能的轨迹选择。现有的方法在生成多模态轨迹时,往往面临轨迹选择复杂的问题,难以从众多候选轨迹中快速准确地选出最优轨迹。

  2. 轨迹发散问题:基于扩散模型的方法在生成轨迹时容易出现轨迹发散的问题,导致生成的轨迹与真实轨迹差异过大,降低了轨迹的质量。

  3. 引导信息与场景信息的一致性:现有的一些方法使用引导信息(如预定义的目标点)来生成轨迹,但这些引导信息与真实轨迹之间的差距可能导致生成低质量的轨迹。此外,这些方法在引导信息与场景信息不一致时,难以生成符合实际道路网络的轨迹。

  4. 端到端系统中的轨迹生成:在端到端自动驾驶系统中,现有的方法主要关注碰撞率和 L2 距离等指标,而忽视了车辆是否保持在可行驶区域内。此外,大多数方法基于回归模型,当引导信息与真实值偏差较大时,容易生成低质量的轨迹。

为了解决这些问题,GoalFlow 引入了一种新的目标点引导机制,通过精确的目标点来约束生成过程,从而生成高质量的多模态轨迹。同时,它采用了 Flow Matching 方法来高效生成轨迹,并通过评分机制从候选轨迹中选择最优轨迹。

Q: 有哪些相关研究?

A: 论文中提到了以下相关研究:

端到端自动驾驶

  • 早期方法:早期的端到端自动驾驶方法主要使用模仿学习,直接从输入图像中提取特征以生成轨迹。例如,Codevilla 等人的工作[4]和 Codevilla 等人的后续研究[5]。

  • Transfuser:Transfuser[3]通过融合摄像头和激光雷达信息进行感知,并使用辅助任务(如地图构建和目标检测)为感知提供监督

  • FusionAD:FusionAD[32]进一步发展了 Transfuser,将融合的感知特征直接传播到预测和规划模块。

  • UniAD:UniAD[15]引入了统一查询设计,使框架最终以规划为导向。

  • VAD:VAD[17]通过简化感知任务并将场景表示转换为矢量化格式,显著提高了规划能力和效率。

  • VADv2:VADv2[1]对轨迹空间进行了离散化,构建了轨迹词汇表,将回归任务转换为分类任务。

  • PARA-Drive:PARA-Drive[29]并行执行地图构建、规划、运动预测和占用预测任务。

  • GenAD:GenAD[34]使用 VAE 和 GRU 进行时间轨迹重建。(小米的VLA尾部很像)

  • SparseDrive:SparseDrive[26]在矢量化场景表示方面取得了进展,省略了更密集的 BEV 表示。

扩散模型和 Flow Matching

  • 早期生成模型:早期的生成模型通常使用 VAE[21] 和 GAN[10] 进行图像生成。

  • 扩散模型:扩散模型通过迭代添加和移除噪声来生成图像,DDPM[14] 是这一领域的开创性工作。后续方法[25]进一步优化了采样效率,CFG[13]增强了生成输出的鲁棒性。

  • Flow MatchingFlow Matching[22]通过建立从一个分布到另一个分布的向量场来进行生成建模。Rectified Flow[23] 是 Flow Matching 的一种特定形式,它通过最优传输[24]路径直接线性过渡。

多模态轨迹生成

  • 操纵任务中的多模态建模:在操纵任务中,Cheng 等人[2]通过应用扩散模型取得了显著成功。

  • 自动驾驶中的多模态策略

    • 基于离散命令的方法

    • VAD[17]使用离散命令来引导轨迹生成,产生三种不同的轨迹模式。(left,straight,right)

    • SparseDrive[26]和[16]从数据集中聚类固定的导航点以引导轨迹。

    • 直接应用扩散模型:一些方法[18, 28, 31]直接引入扩散模型来生成多模态轨迹,在轨迹预测中取得了成功,但在端到端应用中面临挑战。

    • Diffusion-ES[31]需要基于 HD 地图的评分机制来与真实世界道路网络对齐,这在端到端环境中难以获得。

    • MotionDiffuser[18]通过使用真实终点作为约束来解决轨迹发散问题,但引入了过于强烈的先验信息。

    • GoalGAN[8]首先预测目标点,然后使用它来引导 GAN 网络生成轨迹,但它使用网格单元来采样目标点,没有考虑目标点的分布。

Q: 论文如何解决这个问题?

A: 论文通过提出 GoalFlow 方法来解决自动驾驶场景中高质量多模态轨迹生成的问题,具体方法如下:

目标点引导机制---FlowMatching---轨迹选择

Q: 论文做了哪些实验?

A: 论文中进行了以下几类实验来验证 GoalFlow 方法的有效性和性能:

1. 与现有方法的比较实验

  • 实验环境:在 Navsim 环境中进行测试,该环境包含 1192 个训练验证场景和 136 个测试场景,总共有超过 10 万个样本。
  • 评估指标:使用以下指标来评估生成轨迹的质量:
    • SNC(无责任碰撞):衡量生成轨迹是否会导致碰撞。
    • SDAC(可行驶区域合规性):衡量轨迹是否保持在可行驶区域内。
    • STTC(时间到碰撞):衡量轨迹与周围物体的潜在碰撞时间。
    • SEP(自我进度):衡量轨迹是否能够有效推进车辆。
    • SCF(舒适性):衡量轨迹的平滑性和舒适性。
    • SDDC(驾驶方向合规性):衡量轨迹是否符合驾驶方向(由于实际限制,此指标未在计算中使用)。
  • 比较方法:与以下几种现有方法进行比较:
    • Constant Velocity:假设车辆以恒定速度前进。
    • Ego Status MLP:仅使用当前状态作为输入,通过 MLP 生成轨迹。
    • LTF:Transfuser 的简化版本,使用图像和 LiDAR 输入。
    • Transfuser:使用图像和 LiDAR 输入,通过 Transformer 融合生成轨迹。
    • UniAD:使用多个 Transformer 架构处理信息,专注于规划任务。
    • PARA-Drive:并行执行地图构建、规划、运动预测和占用预测任务。
  • 结果GoalFlow 在所有评估指标上均优于其他方法,特别是在 SDAC 和 SEP 上表现突出,分别比第二好的方法高出 5.5 和 5.7 个百分点。

2. 消融研究

  • 实验目的:验证 GoalFlow 中各个组件的贡献。
  • 实验设置
    • M0:仅使用 Rectified Flow 生成轨迹,不使用目标点引导。
    • M1:在 M0 的基础上引入距离评分图,选择得分最高的目标点引导 Rectified Flow。
    • M2:在 M1 的基础上引入可行驶区域合规性评分图。
    • M3:在 M2 的基础上引入轨迹评分器。
  • 结果
    • M0:在 DAC 和 TTC 上表现优于基线方法,表明基于 Flow Matching 的模型具有强大的建模能力。
    • M1:引入距离评分图后,性能显著提升,特别是在 DAC 和 TTC 上。
    • M2:进一步引入可行驶区域合规性评分图,进一步提升了 DAC 分数。
    • M3:引入轨迹评分器后,进一步提升了轨迹选择的可靠性,最终在所有指标上取得了最佳性能。

3. 不同去噪步骤的实验

  • 实验目的:评估在不同去噪步骤下 GoalFlow 的性能。
  • 实验设置:在推理过程中使用不同数量的去噪步骤(从 20 步到 1 步)。
  • 结果
    • 即使在仅使用 1 步去噪的情况下,GoalFlow 依然能够保持高性能,仅比最优情况下降了 1.6%。
    • 这表明 Flow Matching 方法在推理过程中具有高效性,适合实时自动驾驶系统。

4. 不同初始噪声的实验

  • 实验目的:评估不同初始噪声分布对轨迹生成的影响。
  • 实验设置:在训练过程中使用不同标准差 σσ 的高斯分布作为初始噪声。
  • 结果
    • 当 σσ 超过 0.1 时,生成的轨迹变得过于发散,导致性能显著下降。
    • 当 σσ 小于 0.1 时,性能保持稳定,表明适当的噪声水平对于生成高质量轨迹至关重要。

5. 模型扩展实验

  • 实验目的:评估模型扩展对性能的影响。
  • 实验设置
    • 维度扩展:在相同的 V2-99 骨架下,增加 Transformer 的隐藏维度。
    • 骨干网络扩展:比较不同骨干网络(如 ResNet-34 和 V2-99)对性能的影响。
  • 结果
    • 增加隐藏维度和使用更大的骨干网络均能提升性能,最佳性能在隐藏维度为 1024 时取得。
    • 不同骨干网络在分数分布上存在显著差异,表明不同的网络架构对目标点信息的学习方式不同。

6. 可视化实验

  • 轨迹可视化:生成了多种场景下的轨迹,包括直行、左转、右转和让行场景,展示了 GoalFlow 生成的轨迹多样性和质量。
  • 目标点分布可视化:展示了目标点的分布情况,包括距离评分、可行驶区域合规性评分和最终评分,验证了目标点选择机制的有效性。

通过这些实验,论文全面验证了 GoalFlow 在多模态轨迹生成方面的性能和鲁棒性,证明了其在端到端自动驾驶中的应用潜力。

Q: 有什么可以进一步探索的点?

A: 论文中提出了一种有效的方法来生成高质量的多模态轨迹,但仍有一些可以进一步探索的点:

1. 目标点的进一步优化

  • 目标点的动态调整:目前的目标点选择是基于静态的评分机制,可以探索动态调整目标点的方法,例如根据实时交通状况和周围车辆的行为动态更新目标点。

  • 多目标点的联合建模:目前的方法主要关注单个目标点的引导,可以探索多目标点的联合建模,以更好地捕捉复杂的交通场景和多模态轨迹。

2. 模型的泛化能力

  • 跨场景泛化:虽然在 Navsim 环境中取得了良好的性能,但可以进一步探索模型在不同驾驶场景(如城市道路、高速公路、乡村道路等)中的泛化能力。

  • 跨数据集泛化:在其他自动驾驶数据集上验证模型的性能,以确保其在不同环境和条件下的鲁棒性。

3. 模型的效率和实时性

  • 推理时间优化:尽管 Flow Matching 方法已经减少了推理时间,但进一步优化推理时间对于实际应用至关重要。可以探索更高效的网络架构或优化算法来进一步提高实时性。

  • 硬件加速:研究如何利用硬件加速(如 GPU、FPGA 等)来进一步提高模型的推理速度。

4. 与其他技术的融合

  • 与强化学习的结合:结合强化学习方法,使模型能够根据环境反馈动态调整轨迹生成策略。

  • 与自然语言处理的结合:利用自然语言处理技术,使模型能够理解和处理自然语言指令,生成符合人类驾驶习惯的轨迹。

5. 轨迹生成的多样性

  • 多样性增强:虽然 Flow Matching 方法能够生成多模态轨迹,但可以进一步探索如何增强轨迹的多样性,以更好地覆盖不同的驾驶场景和行为模式。

  • 轨迹的可解释性:提高轨迹生成过程的可解释性,使人类驾驶员能够理解模型的决策过程。

6. 安全性和可靠性

  • 安全机制的增强:进一步增强模型的安全机制,例如引入更复杂的安全检查和碰撞预测算法,以确保生成的轨迹在各种复杂场景下的安全性。

  • 可靠性评估:建立更全面的可靠性评估指标,不仅包括轨迹的质量,还包括模型在不同条件下的稳定性和鲁棒性。

7. 模型的可扩展性

  • 大规模数据集训练:在更大的数据集上训练模型,以提高其对不同驾驶场景和行为模式的覆盖能力。

  • 多任务学习:探索多任务学习框架,使模型能够同时处理多个相关任务(如目标检测、轨迹预测、规划等),以提高整体性能。

8. 用户交互和反馈

  • 用户交互机制:引入用户交互机制,使驾驶员能够实时调整或干预轨迹生成过程,以更好地满足实际驾驶需求。

  • 反馈学习:利用驾驶员的反馈进行在线学习,使模型能够根据用户的偏好和行为模式进行动态调整。

这些探索方向不仅可以进一步提升 GoalFlow 方法的性能和应用范围,还可以为自动驾驶领域的研究提供新的思路和方法。

2)第二遍___细读

目标引导机制:

精确的目标点选择

  • 构建目标点词汇表:通过聚类训练数据中的轨迹末端点,构建一个密集的目标点词汇表。这使得目标点能够覆盖各种可能的驾驶场景和行为模式,为轨迹生成提供了丰富的候选点。

  • 评分机制:使用距离评分和可行驶区域合规评分来评估每个目标点。距离评分衡量目标点与真实轨迹末端点的接近程度,值越接近1表示越接近真实终点;可行驶区域合规评分确保目标点位于可行驶区域内,值为1表示目标点在可行驶区域内,值为0表示不在。通过加权融合这两个评分,选择评分最高的目标点作为轨迹生成的引导信息,从而确保生成的轨迹既符合实际道路情况,又接近真实的驾驶意图。

对轨迹生成过程的约束

  • 约束轨迹方向:目标点为轨迹生成提供了明确的方向指引,使得生成的轨迹朝着目标点方向发展,避免了轨迹的随意发散。这有助于减少轨迹与真实轨迹之间的差异,提高轨迹的准确性和可靠性。

  • 结合场景信息:目标点的选择是基于场景信息进行的,考虑了周围车辆、道路布局等因素。这样生成的轨迹不仅符合目标点的指引,还能与周围的交通环境相协调,更好地适应复杂的驾驶场景。

提升轨迹的多样性和适应性

  • 多模态轨迹生成:通过选择不同的目标点,可以生成多种不同模式的轨迹,满足不同场景下的驾驶需求。例如,在交叉路口可以选择直行、左转或右转的目标点,生成对应的轨迹,增加了轨迹的多样性。

  • 适应不同驾驶场景:目标点引导机制能够根据不同的驾驶场景选择合适的目标点,使生成的轨迹适应各种复杂的交通状况。比如在高速公路上可以选择保持车道或变道的目标点,在城市道路中可以选择避让障碍物或跟随前车的目标点,提高了轨迹生成的适应性和灵活性。

增强轨迹的安全性和可行性

  • 确保轨迹在可行驶区域内:通过可行驶区域合规评分的筛选,确保所选目标点位于可行驶区域内,从而保证生成的轨迹不会驶出道路或进入禁止通行的区域,增强了轨迹的安全性。

  • 减少碰撞风险:目标点的选择考虑了周围车辆和障碍物的位置,生成的轨迹能够更好地避开潜在的碰撞风险,提高自动驾驶系统的安全性。

3)第三遍___CodeReview及复现

相关文章:

CVPR‘25 SOTA——GoalFlow论文精读

1)第一遍___粗读 Q: 这篇论文试图解决什么问题? A: 这篇论文提出了一个名为 GoalFlow 的端到端自动驾驶方法,旨在解决自动驾驶场景中高质量多模态轨迹生成的问题。具体而言,它试图解决以下问题: 轨迹选择的复杂性&am…...

vue3 onMounted 使用方法和注意事项

基础用法 / 语法糖写法 <script> import { onMounted } from vue;// 选项式 API 写法 export default {setup() {onMounted(() > {console.log(组件已挂载);});} } </script><script setup> onMounted(() > {console.log(组件已挂载); }); </scrip…...

【ubuntu】linux开机自启动

目录 开机自启动&#xff1a; /etc/rc.loacl system V 使用/etc/rc*.d/系统运行优先级 遇到的问题&#xff1a; 1. Linux 系统启动阶段概述 方法1&#xff1a;/etc/rc5.d/ 脚本延时日志 方法二&#xff1a;使用 udev 规则来触发脚本执行 开机自启动&#xff1a; /etc/…...

OpenCV day2

Matplotlib相关知识 Matplotlib相关操作&#xff1a; import numpy as np from matplotlib import pyplot as pltx np.linspace(0, 2 * np.pi, 100) y1 np.sin(x) y2 np.cos(x)# 使用红色虚线&#xff0c;圆点标记&#xff0c;线宽1.5&#xff0c;标记大小为6绘制sin plt.p…...

OpenCV 图形API(31)图像滤波-----3x3 腐蚀操作函数erode3x3()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 使用3x3矩形结构元素腐蚀图像。 该函数通过使用中心作为锚点的3x3矩形结构元素来腐蚀源图像。腐蚀操作可以应用多次&#xff08;迭代&#xff0…...

机器学习概述自用笔记(李宏毅)

机器学习概述 机器学习即找一个复杂的人类写不出来的函数&#xff0c;把输入&#xff08;向量&#xff0c;矩阵&#xff0c;序列&#xff09;转换为输出。 regression&#xff1a;输出是一个数值&#xff08;预测PM2.5的数值&#xff09; classification&#xff1a;选择设置…...

大数据面试问答-Spark

1. Spark 1.1 Spark定位 "Apache Spark是一个基于内存的分布式计算框架&#xff0c;旨在解决Hadoop MapReduce在迭代计算和实时处理上的性能瓶颈。 1.2 核心架构 Spark架构中有三个关键角色&#xff1a; Driver&#xff1a;解析代码生成DAG&#xff0c;协调任务调度&a…...

UE5 设置父物体和解除父子关系(移除子物体)

文章目录 设置父物体解除父子关系 Acotor类似于untiy的objecttransfrom&#xff0c;可以用来进行父子操作 设置父物体 Actor attach to Actor节点 解除父子关系 Detach From Actor...

Git - 怎么把当前修改追加到前面某个commit中

怎么把当前修改追加到前面某个commit中 git log commit b7cb11b53388d410d07e3b3084c67274cee4cdad (HEAD -> hotfix/task-108344, origin_dbackup/hotfix/task-108344) Author: aaa <aaammm.com> Date: Thu Mar 27 15:08:32 2025 0800Fix #108344: add bbbcommit …...

【HFP】蓝牙 HFP 协议状态通知机制研究

目录 一、状态通知体系架构 1.1 核心功能矩阵 1.2 三层控制体系 1.3 角色分工 1.4 协议栈层级 二、核心AT命令解析 2.1 ATCMER&#xff1a;指示器状态报告控制 2.2 ATBIA&#xff1a;指示器激活控制 2.3 CIEV&#xff1a;未请求结果码 三、关键功能实现机制 3.1 注册…...

unity100天学习计划

以下是一个为期100天的Unity学习大纲,涵盖从零基础到独立开发完整游戏的全流程,结合理论、实践和项目实战,每天学习2-3小时: 第一阶段:基础奠基(Day 1-20) 目标:掌握Unity引擎基础与C#编程 Day 1-5:引擎入门 安装Unity Hub和Unity Editor(LTS版本)熟悉Unity界面:S…...

STM32电机库 电机控制特性

ST MC FW库提供FOC和六步法两种电机控制方式。这使得它能够驱动永磁同步电机 (PMSM) 和无刷直流电机 (BLDC)。FOC 更适合 PMSM,而六步法更适合 BLDC 电机。该固件可以驱动内嵌式PMSM 和标贴式PMSM。 ST Motor Control 固件库提供以下功能: FOC SVPWM 生成: 可配置的 PW…...

MySQL数据库 - 事务

事务 此笔记参考黑马教程&#xff0c;仅学习使用&#xff0c;如有侵权&#xff0c;联系必删 文章目录 事务1. 事务简介2. 事务操作2.1 事务操作 - 方式一2.2 方式二代码实现 3. 事务四大特性&#xff08;ACID&#xff09;4. 并发事务问题5. 事务隔离级别代码实现 总结 1. 事务…...

火山引擎旗下的产品

用户问的是火山引擎旗下的产品&#xff0c;我需要详细列出各个类别下的产品。首先&#xff0c;我得确认火山引擎有哪些主要业务领域&#xff0c;比如云计算、大数据、人工智能这些。然后&#xff0c;每个领域下具体有哪些产品呢&#xff1f;比如云计算方面可能有云服务器、容器…...

用 Python 从零构建异步回显服务器

简介 让我们从 0 开始&#xff0c;搭建一个异步服务输出服务器。 套接字 套接字&#xff08;socket&#xff09;&#xff0c;是不同计算机中实现通信的一种方式&#xff0c;你可以理解成一个接口&#xff0c;它会在客户端和服务端建立连接&#xff0c;一台发送数据&#xff…...

【3D文件】可爱小鹿3D建模,3D打印文件

【3D文件】可爱小鹿3D建模&#xff0c;3D打印文件 免费下载&#xff0c;下载链接&#xff1a; 3D文件可爱小鹿3D建模&#xff0c;可爱小鹿建模仿真&#xff0c;小鹿仿真设计&#xff0c;3D打印文件&#xff0c;免费下载资源-CSDN文库 资源下载&#xff1a; 3D文件可爱小鹿3D…...

RabbitMQ 优先级队列详解

本文是博主在记录使用 RabbitMQ 在执行业务时遇到的问题和解决办法&#xff0c;因此查阅了相关资料并做了以下记载&#xff0c;记录了优先级队列的机制和使用要点。 本文为长文&#xff0c;详细介绍了相关的知识&#xff0c;可作为学习资料看。 文章目录 一、优先级队列介绍1、…...

串口通信简述

一.串口的特点 1.全双工异步通信 全双工指通信双方可以同时进行数据的发送和接收操作。 异步通信是指通信双方不使用共同的时钟信号来同步数据传输&#xff0c;而是通过特殊的信号或约定来标识数据的开始和结束 2.数据字长度可编程&#xff08;8 位或 9 位&#xff09; 不…...

【2025年五一数学建模竞赛A题】完整思路和代码

1.问题背景与重述 2.解题思路分析 2.1 问题一的分析 问题一假设无人机以平行于水平面的方式飞行并投放物资&#xff0c;可以将物资的运动 类比成平抛运动&#xff0c;由于物资的重量较大&#xff0c;因此不能简单的看成质点&#xff0c;还要考虑物资 的重量。 2.1.1本题要求给…...

为了四季度的盈利,李斌的换人还在继续

李斌对蔚来和乐道人事调整还在继续。 4月10日&#xff0c;蔚来发布内部邮件宣布大量人事变动。 蔚来方面&#xff1a; 原用户关系&#xff08;UR&#xff09;负责人沈泓因个人原因将离开公司。 任命孙明担任用户关系&#xff08;UR&#xff09;负责人&#xff0c;向高级副总…...

Pytest 自动化测试框架详解

Pytest和Unittest测试框架的区别&#xff1f; 如何区分这两者&#xff0c;很简单unittest作为官方的测试框架&#xff0c;在测试方面更加基础&#xff0c;并且可以再次基础上进行二次开发&#xff0c;同时在用法上格式会更加复杂&#xff1b;而pytest框架作为第三方框架&#x…...

sqli-labs靶场 less 9

文章目录 sqli-labs靶场less 9 时间盲注 sqli-labs靶场 每道题都从以下模板讲解&#xff0c;并且每个步骤都有图片&#xff0c;清晰明了&#xff0c;便于复盘。 sql注入的基本步骤 注入点注入类型 字符型&#xff1a;判断闭合方式 &#xff08;‘、"、’、“”&#xf…...

奇趣点播系统测试报告

1.项目简介 本项目旨在搭建一个视频共享点播系统&#xff0c;服务器支持用户通过前端浏览器访问服务器&#xff0c;获取展示与观看和操作的界面&#xff0c;最终实现视频的上传以及观看和删改查等基础管理功能。让用户拥有良好的观看体验和分享视频的快捷方式&#xff0c;此外…...

空地机器人在复杂动态环境下,如何高效自主导航?

随着空陆两栖机器人(AGR)在应急救援和城市巡检等领域的应用范围不断扩大&#xff0c;其在复杂动态环境中实现自主导航的挑战也日益凸显。对此香港大学王俊铭基于阿木实验室P600无人机平台自主搭建了一整套空地两栖机器人&#xff0c;使用Prometheus开源框架完成算法的仿真验证与…...

01 - QEMU 初始化概览 - Init()

目录 1.初始化 - qemu_init() 1.1.基本设备 1.2.日志 1.3.模块信息 1.4.子系统 1.5.选项解析 - 阶段一 1.6.选项解析 - 阶段二 1.7.选项配置 1.8.Trace 1.9.主线程 1.10.CPU 时钟 1.11.其他设置 1.12.创建虚拟机 1.13.启动虚拟机 2.主线程 - qemu_main() 2.1.处…...

Vue3 使用ref

<button click"changeMsg">change</button> <div>{{ message }}</div>//接受一个内部值并返回一个响应式且可变的 ref 对象。ref 对象仅有一个 .value property&#xff0c;指向该内部值。 const message ref(hello world) const mum 1 co…...

React中 点击事件写法 的注意(this、箭头函数)

目录 ‌1、错误写法‌&#xff1a;onClick{this.acceptAlls()} ‌2、正确写法‌&#xff1a;onClick{this.acceptAlls}&#xff08;不带括号&#xff09; 总结 方案1&#xff1a;构造函数绑定 方案2&#xff1a;箭头函数包装方法&#xff08;更简洁&#xff09; 方案3&am…...

DeepSeek AI大模型:中国智能时代的“争气机“-AI生成

DeepSeek AI大模型&#xff1a;中国智能时代的"争气机" 当全球科技巨头在万亿参数竞赛中你追我赶时&#xff0c;一家中国公司悄然改写了游戏规则。DeepSeek AI最新发布的"探月"大模型不仅以中英双语能力打破技术壁垒&#xff0c;更用"动态脑区"设…...

Java老鼠迷宫(递归)---案例来自韩顺平老师讲Java

题目&#xff1a; 粉色圈圈是启动&#xff0c;红色方框是阻挡&#xff0c;蓝色五角星是出口&#xff0c;走到出口&#xff0c;老鼠winner 代码&#xff1a; public class test6 {public static void main(String[] args){//创建二维数组int[][] map new int[8][7];// 最外围都…...

Python大数据视频教程

概述 最新整理的Python大数据视频教程已出&#xff0c;需要学习的小伙伴抓紧了。 课程亮点&#xff1a; ❶ 编程基石&#xff1a;从Python基础到高阶函数式编程&#xff0c;用代码驯服数据 ❷ 数据魔法&#xff1a;SQL进阶ETL实战&#xff0c;Pandas玩转百万级数据分析 ❸ 分…...

Java工厂模式解析:灵活对象创建的实践指南

精心整理了最新的面试资料和简历模板&#xff0c;有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 一、模式定义与分类 工厂模式&#xff08;Factory Pattern&#xff09;是创建型设计模式的核心成员之一&#xff0c;主要解决对象创建过程中的灵活性问题。根…...

PDF转换格式失败?原因及解决方法全解析

在日常工作中&#xff0c;我们经常会遇到将PDF转换为Word、Excel、PPT等格式的需求。有时候以为一键转换就能搞掂&#xff0c;没想到却转换失败。到底问题出在哪&#xff1f;别急&#xff0c;我们可以看看是否以下几个问题引起的&#xff0c;找到解决问题的关键&#xff01; 原…...

《轨道力学讲义》——第五讲:摄动理论基础

第五讲&#xff1a;摄动理论基础 引言 在实际的航天任务中&#xff0c;我们很少能够使用理想的二体问题来精确描述航天器的运动。地球的非球形性、大气阻力、太阳辐射压以及第三天体引力等各种因素都会对航天器轨道产生偏离理想轨道的影响。这些额外的力被称为"摄动力&q…...

【NLP】23.小结:选择60题

Question 1: What does the fixed lookup table in traditional NLP represent? A. A table of one‐hot vectors B. A table of pre‐trained dense word embeddings C. A dictionary of word definitions D. A table of n-gram counts Answer (中文): 答案选 B。传统NLP中“…...

C++核心机制-this 指针传递与内存布局分析

示例代码 #include<iostream> using namespace std;class A { public:int a;A() {printf("A:A()的this指针&#xff1a;%p!\n", this);}void funcA() {printf("A:funcA()的this指针&#xff1a;%p!\n", this);} };class B { public:int b;B() {prin…...

python asyncio 的基本使用

1、引言 asyncio 是 Python 标准库中的一个库&#xff0c;提供了对异步 I/O 、事件循环、协程和任务等异步编程模型的支持。 asyncio 文档 2、进程、线程、协程 线程 线程是操作系统调度的基本单位&#xff0c;同一个进程中的多个线程共享相同的内存空间。线程之间的切换由操…...

大模型中提到的分词器是什么

分词器在大模型中的核心解析 1. 分词器的定义与基本作用 分词器(Tokenizer)是自然语言处理(NLP)中的核心组件,负责将原始文本拆分为模型可处理的离散单元(称为Token)。其核心功能包括: 文本离散化:将连续字符序列转化为数字序列,作为模型的输入。语义单元提取:通过…...

Android中使用BuildConfig.DEBUG无法找到的解决方法

BuildConfig是Android构建工具自动生成的一个类&#xff0c;通常位于应用的包名下&#xff0c;包含一些构建相关的常量&#xff0c;比如DEBUG标志、应用ID、版本信息等。 遇到的问题可能有几种情况。首先&#xff0c;可能项目没有正确构建&#xff0c;导致BuildConfig没有被生…...

Python(14)Python内置函数完全指南:从基础使用到高阶技巧

目录 背景介绍一、内置函数全景分类1. 数据类型转换&#xff08;15个&#xff09;2. 数学运算&#xff08;12个&#xff09;3. 迭代处理&#xff08;9个&#xff09;4. 对象操作&#xff08;11个&#xff09;5. 输入输出&#xff08;4个&#xff09; 二、高阶函数应用场景1. en…...

echo命令,tail命令,反引号,重定向符

echo命令&#xff1a; 作用&#xff1a;在命令行中输出指定的内容&#xff0c;相当于print语句 语法&#xff1a;echo 指定的内容&#xff08;当内容包含空格和特殊字符的时候&#xff0c;语句很复杂的时候&#xff0c;最好用双引号括起来&#xff09; tail命令&#xff1a;…...

集成学习介绍

集成学习&#xff08;Ensemble Learning&#xff09;是一种机器学习范式&#xff0c;它通过组合多个模型的预测来提高整体模型的性能。单一模型可能在某些方面表现不佳或具有较高的偏差或方差&#xff0c;而集成方法能够通过结合多个模型的优点来克服这些问题&#xff0c;从而提…...

【CUDA】ubuntu环境下安装cuda

写在前面 软硬件匹配问题 &#xff1a;如老显卡安装ubuntu24, 会发现适合显卡的cuda不适合ubuntu24, 适合ubuntu24的cuda不适合显卡&#xff0c;因此安装ubuntu系统前&#xff0c;务必查明 &#xff1a;当前设备的显卡支持的cuda&#xff0c;支持哪些ubuntu版本 下面的三个问题…...

进程间通信-信号量

消息队列&#xff08;Message Queue&#xff09;是一种在不同组件或进程间进行异步通信的机制&#xff0c;它允许应用程序以松耦合的方式交换消息。消息队列就像一个缓冲区&#xff0c;发送者将消息放入队列&#xff0c;接收者从队列中取出消息进行处理。以下为你详细介绍消息队…...

Ubuntu 22.04安装MySQL : Qwen2.5 模型对话数据收集与微调教程

在Ubuntu 22.04安装MySQL的教程请点击下方链接进行参考: 点击这里获取MySQL安装教程 今天将为大家带来如何微调Qwen2.5模型并连接数据库进行对话的教程。快跟着小编一起试试吧~ ​ 1 大模型 Qwen2.5 微调步骤 1.1 从 github 仓库 克隆项目 克隆存储库:#拉取代码 git clo…...

L1-8 新年烟花

单位 杭州百腾教育科技有限公司 新年来临&#xff0c;许多地方会举行烟花庆典庆祝。小 C 也想参加庆典&#xff0c;但不幸的是跟他一个想法的人实在太多&#xff0c;活动场地全是人人人人人人人人人…… 活动场地可视作一个 NM 的矩阵&#xff0c;其中有一些格子是空的&#…...

OpenCV中的轮廓检测方法详解

文章目录 引言一、什么是轮廓&#xff1f;二、OpenCV中的轮廓检测基础1. 基本步骤2. findContours函数详解 三、轮廓检索模式四、轮廓近似方法五、轮廓特征分析1. 轮廓面积2. 轮廓周长/弧长3. 轮廓近似&#xff08;多边形拟合&#xff09;4. 凸包5. 边界矩形6. 最小闭合圆7. 拟…...

AIP-231 批量方法:Get

编号231原文链接AIP-231: Batch methods: Get状态批准创建日期2019-06-18更新日期2019-06-18 一些API允许用户获取一组特定资源在一个时间点&#xff08;例如使用读事务&#xff09;的状态。批量获取方法提供了这个功能。 指南 API 可以 按照以下模式支持批量获取&#xff1…...

人工智能基础-matplotlib基础

绘制图形 import numpy as np x np.linspace(0, 10, 100) y np.sin(x) import matplotlib as mpl import matplotlib.pyplot as plt plt.plot(x, y) plt.show()绘制多条曲线 siny y.copy() cosy np.cos(x) plt.plot(x, siny) plt.plot(x, cosy) plt.show()设置线条颜色 …...

qt运行时报段错误

标题&#xff1a; qt运行时报段错误&#xff0c;查看stack&#xff0c;显示&#xff1a; 原因 报错的cpp文件新包含一个头文件&#xff0c;这个头文件里的pack指令有问题&#xff0c;如下: 解决办法 修改为正确的pack指令。...

【Qt】Qt Creator开发基础:项目创建、界面解析与核心概念入门

&#x1f351;个人主页&#xff1a;Jupiter. &#x1f680; 所属专栏&#xff1a;QT 欢迎大家点赞收藏评论&#x1f60a; 目录 Qt Creator 新建项⽬认识 Qt Creator 界⾯项⽬⽂件解析Qt 编程注意事项认识对象模型&#xff08;对象树&#xff09;Qt 窗⼝坐标体系 Qt Creator 新…...