Wayve最近的GAIA-3分享:全面扩展世界模型的评测能力......

作者 | Feynman 编辑 | 自动驾驶之心

 原文链接:https://zhuanlan.zhihu.com/p/1979144898872627828 

点击下方卡片,关注“自动驾驶之心”公众号

戳我-> 领取自动驾驶近30个方向学习路线

>>自动驾驶前沿信息获取自动驾驶之心知识星球

本文只做学术分享,如有侵权,联系删文

简单版

  • GAIA-3是一个强有力的测试工具。

  • GAIA-3可以:

    • 修改自车轨迹

    • 修改天气/白夜

    • 针对一段已有车载多视图视频

    • 适配不同传感器配置(比如摄像头安装位置不一样);

    • 根据少量案例(比如突然刹车),生成相同问题的新场景

  • GAIA-3 是一个15B的基于Latent Diffusion的模型,其video tokenizer是比GAIA-2的两倍

思考:

  1. GAIA-3的实现方法到底是什么?

  • 从功能上分析,现在学术界(应该也包括工业界)大部分采用基于3DGS重建的方法,比如ReconDreamer系列

  • 但文章还是明说使用Latent Diffusion的方法,这个需要继续思考一下。

完整版:https://wayve.ai/thinking/gaia-3/

GAIA-3:规模化世界模型,驱动自动驾驶的安全与评测

将世界建模从一个视觉合成工具,转变为自动驾驶评估的基石。

大规模评估自动驾驶系统仍然是推进现实世界自动驾驶技术面临的核心挑战之一。现实世界测试对于验证安全性至关重要,但其成本高昂、受物流限制,并且数据效率日益低下。随着驾驶模型的改进和可观测错误的减少,得出具有统计学意义的结论所需的测试里程数急剧增加。而这些里程中的大部分都是平淡无奇的,几乎无法提供关于罕见但至关重要的安全行为的有效信息。

仿真模拟提供了一条前进的道路。虚拟环境能够实现安全、可靠、可重复且可扩展的驾驶模型测试。然而,尽管前景广阔,现有的仿真方法仍不足以对现代端到端驾驶系统进行有意义的评估。长期以来作为自动驾驶测试标准的程序化仿真器,允许精确控制但缺乏真实性。基于3D重建的仿真器实现了更高的真实感,但在处理遮挡和动态交通参与者方面存在困难。我们在世界模型方面的最新进展,结合了两者的优点:既捕捉了真实环境的静态和动态特性,又能生成逼真的反事实场景,从而扩展了现实世界测试的覆盖范围。

GAIA-3 is conditioned to weave around a highway scene in a sine wave, while other agents’ trajectories are un-modified.

GAIA-3:将世界建模用于安全与评估

Wayve 一直率先使用世界模型,以开启自动驾驶汽车训练和评估的新范式。基于我们在未来预测、驾驶“梦境”生成、鸟瞰图预测以及学习世界模型方面的研究,我们推出了 GAIA-1(用于自动驾驶的生成式人工智能),这是我们迈向这一愿景的第一步。GAIA-1 证明了生成模型可以从视频、文本和动作中学习,以产生逼真的驾驶体验。GAIA-2 则通过引入更丰富的可控性、更广泛的地理覆盖范围以及通过多摄像头、时空连贯的场景生成实现多样化的车辆“化身”,进一步扩展了视野。

凭借 GAIA-3,我们迈出了大胆的一步:将世界建模从一个视觉合成工具,转变为自动驾驶评估的基石。GAIA-3 生成的驾驶场景不仅逼真,而且结构化和有目的性——旨在测量、比较并加速实现安全、可扩展的自动驾驶。

GAIA-3 结合了真实世界数据的真实感与仿真的可控性。它允许我们获取真实的驾驶序列,并通过精确、参数化的变体重现这些序列——例如,在场景中所有其他元素保持完全一致的同时,改变自车的轨迹。其他交通参与者保持其运动状态,光照和天气不变,整个世界保持连贯。这种以“世界在轨”方式运行的能力,是生成式世界建模向前迈出的重要一步,它将评估从反应式测量转变为主动探索决定安全性的边缘案例。

安全性关键场景

现实世界中的安全性关键事件——碰撞、险情或失控情况——是罕见的、不可预测的,并且过于危险而无法有意重现。目前,行业仍然依赖受控的测试场实验,例如使用预设角色和假人车辆的 NCAP(新车评估规程)测试。这些设置提供了精度,但牺牲了真实感和可扩展性。它们无法捕捉现实世界驾驶的视觉丰富性、行为多样性和环境复杂性。因此,测试场实验只能构成解决方案的一部分,并且可能导致对现实世界安全性能的认知不完整。

GAIA-3 通过对真实世界驾驶序列进行受控且逼真的变体生成,克服了这些限制。给定一个现有场景,GAIA-3 可以在保持环境其他部分一致的同时改变自车的轨迹;其他交通参与者继续其原有运动,静态元素保持不变。这使得生成碰撞和接近碰撞场景的系统化生成成为可能,这些场景可以使用与现实世界数据相同的占用率和轨迹指标进行评估,为可扩展、可复现的安全验证铺平道路。

这种方法也可以用于虚拟地、大规模地生成 NCAP 风格的测试,既可以在模拟的测试场环境中,也可以在不同的现实世界条件下进行。虽然车辆轨迹和时间保持一致,但背景、光照和场景动态会发生变化。

安全关键场景生成的一个关键基准是一致性——确保当仅自车行为改变时,场景的其余部分在物理上和视觉上保持连贯。为了验证这一点,我们使用激光雷达捕捉的真实世界序列,并修改自车轨迹以产生与场景物体的碰撞。然后,我们将原始记录的激光雷达点云与生成的帧进行对齐,并检查错位和不一致之处。

离线评估套件

现实世界驾驶很少遵循脚本。诸如突然停车、延迟并线或行人走上道路等意外事件,揭示了模型对其环境的真正理解程度。离线重现和测试这些“假设”时刻的能力对于建立对自动驾驶系统的信心至关重要。通过 GAIA-3,这可以系统地完成。

通过动作条件控制自车行为,并可选地结合“世界在轨”扰动,GAIA-3 可以生成真实世界场景的受控变体。从单个记录序列开始,通过调整不同参数,可以创建一整套“假设”情景。这些扰动允许对模型从边缘案例中恢复的能力或在变化条件下保持稳定性的能力进行定量测试。

其结果就是结构化、可扩展、可重复且可测量的离线评估测试套件。它们比静态回放提供更丰富的诊断信号,揭示了当条件改变时驾驶策略行为如何变化。GAIA-3 的合成干预与道路实验之间的相关性研究表明,该模型能够可靠地预测相关策略性能,从而提升了离线评估在模型比较和决策中的实用价值。

化身迁移

不同的摄像头配置和视场使得跨车辆重用数据具有挑战性。通过化身迁移,GAIA-3 可以从新的传感器配置重新渲染同一场景,只需使用目标摄像头配置的一个小型、非配对样本即可。

这意味着评估套件可以轻松地在不同的“化身”或不同汽车制造商(OEM)的车辆项目之间迁移,而无需进行配对采集。以下示例展示了 GAIA-3 如何将场景从一个摄像头配置迁移到另一个。

  • 原始化身:原始视频由一辆配备 5 个 RGB 摄像头的车辆采集,其中一个直视前方,两个看向侧面,另外两个看向后方。

  • 化身 A:这辆车是与原始化身不同品牌和型号的车辆,但具有类似的 5 摄像头配置。主要区别包括:遮挡前向摄像头视野的仪表板、在左右前向摄像头中显得更扁平更短的引擎盖,以及更明显的挡风玻璃。GAIA-3 令人信服地再现了来自场景的反射,包括来自对向车辆的反射。

鲁棒性与可解释控制

驾驶模型在面对外观、光照或语义变化时必须保持可靠。然而,这些变化必须是可测量的,以确保有意义的评估。

我们引入了受控的视觉多样性,允许场景的外观发生变化,而其底层结构保持不变。这意味着光照、纹理和天气等元素可以变化,但场景的几何结构和运动保持一致。因此,我们可以直接比较模型在不同视觉条件下的性能,大规模评估鲁棒性,并更好地理解特定的视觉变化如何影响模型行为。

数据丰富化与调试

罕见的故障模式在现实世界驾驶中难以捕获,这限制了数据覆盖范围并减缓了模型迭代速度。GAIA-3 可以从少量示例中学习,并围绕它们生成结构化变体,从而将诸如刹车或并线等场景家族扩展为丰富且物理一致的测试集。

这些罕见事件可以被放大成更大的、带有标签的测试套件,用于针对性测试或再训练,从而缩短发现问题与验证修复方案之间的时间。

以下示例展示了一种特定行为——急刹车,作为受控的分布外变体生成,有助于评估模型在难以通过现实世界测试重现的情况下的行为。相同的行为可以跨不同的环境和国家进行转换。例如,在美国的高速公路上刹车、在日本的市区环境中刹车,甚至是在给定交通灯处意外停车。

GAIA-3 可以帮助利用罕见的分布外示例来扩展数据集。在这里,GAIA-3 可以将一个特定的故障模式——在街道中央急刹车——转换到新的场景和地理环境中。

GAIA-3 的技术能力

世界模型的进步是由规模驱动的:不仅体现在参数数量上,还体现在数据多样性、表征能力和生成体验的质量上。

GAIA-3 是一个拥有 150 亿参数的基于潜在扩散的世界模型,专为自动驾驶的可扩展、逼真和可控的离线评估而设计。为了支持这种能力,GAIA-3 的训练计算量是 GAIA-2 的五倍,数据量大约是 GAIA-2 的两倍,覆盖了 3 大洲的 8 个国家。

数据集强调行人、骑行者、标志和交通控制基础设施等安全关键场景元素,确保模型不仅学习模仿驾驶场景,而且理解和再现与自动驾驶系统最相关的元素。

GAIA-3 带来了明显的改进,静态和动态场景元素的视觉效果更清晰。重要的是,它还展示了增强的世界建模能力,能够在长轨迹和临时遮挡时刻保持场景连贯性。

GAIA-2 与 GAIA-3 的对比

GAIA-3 在规模和能力上实现了显著飞跃,其模型大小相比前代 GAIA-2 增加了一倍,大大扩展了表征能力和生成精度。这个更广泛的基础使 GAIA-3 能够跨地域、“化身”和驾驶情境进行泛化,使其成为真正用于自动驾驶评估的全球性模型。

此次规模升级的核心是一个新的视频分词器,其大小是 GAIA-2 的两倍。它捕捉安全关键的空间和时间结构,从细微的行人运动到快速移动的车辆、道路标志和交通信号灯。通过编码细粒度的时空上下文,GAIA-3 比以往更忠实地表征了现实世界驾驶的物理和因果关系结构。该模型生成具有更高保真度的视频,视觉效果更清晰,光照更一致,纹理细节更丰富。

前方的道路

GAIA-3 通过在一个系统中实现可控性、增强的真实感和实用性,将世界建模精炼为一个用于评估和验证的实用框架。

其结果是一个支持结构化、可重复测试的模型,这是朝着可扩展地评估端到端驾驶系统迈出的重要一步。这些功能提供了一种可靠的方法,使用反映现实世界性能的指标来离线评估进展和比较模型。

我们继续专注于效率和实时生成,以及通过我们获得英国政府资助的 DriveSafeSim 项目对该工具进行验证。我们的目标是确立生成式仿真作为衡量进展和证明整个具身人工智能领域安全性的主要工具。

自动驾驶之心

世界模型与自动驾驶小班课!

基于径向基函数神经网络RBFNN的自适应滑模控制学习(Matlab代码实现)内容概要:本文介绍了基于径向基函数神经网络(RBFNN)的自适应滑模控制方法,并提供了相应的Matlab代码实现。该方法结合了RBF神经网络的非线性逼近能力和滑模控制的强鲁棒性,用于解决复杂系统的控制问题,尤其适用于存在不确定性和外部干扰的动态系统。文中详细阐述了控制算法的设计思路、RBFNN的结构与权重更新机制、滑模面的构建以及自适应律的推导过程,并通过Matlab仿真验证了所提方法的有效性和稳定性。此外,文档还列举了大量相关的科研方向和技术应用,涵盖智能优化算法、机器学习、电力系统、路径规划等多个领域,展示了该技术的广泛应用前景。; 适合人群:具备一定自动控制理论基础和Matlab编程能力的研究生、科研人员及工程技术人员,特别是从事智能控制、非线性系统控制及相关领域的研究人员; 使用场景及目标:①学习和掌握RBF神经网络与滑模控制相结合的自适应控制策略设计方法;②应用于电机控制、机器人轨迹跟踪、电力电子系统等存在模型不确定性或外界扰动的实际控制系统中,提升控制精度与鲁棒性; 阅读建议:建议读者结合提供的Matlab代码进行仿真实践,深入理解算法实现细节,同时可参考文中提及的相关技术方向拓展研究思路,注重理论分析与仿真验证相结合。
先展示下效果 https://pan.quark.cn/s/a4b39357ea24 本项目是本人参加BAT等其他公司电话、现场面试之后总结出来的针对Java面试的知识点或真题,每个点或题目都是在面试中被问过的。 除开知识点,一定要准备好以下套路: 个人介绍,需要准备一个1分钟的介绍,包括学习经历、工作经历、项目经历、个人优势、一句话总结。 一定要自己背得滚瓜烂熟,张口就来 抽象概念,当面试官问你是如何理解多线程的时候,你要知道从定义、来源、实现、问题、优化、应用方面系统性地回答 项目强化,至少与知识点的比例是五五开,所以必须针对简历中的两个以上的项目,形成包括【架构和实现细节】,【正常流程和异常流程的处理】,【难点+坑+复盘优化】三位一体的组合拳 压力练习,面试的时候难免紧张,可能会严重影响发挥,通过平时多找机会参与交流分享,或找人做压力面试来改善 表达练习,表达能力非常影响在面试中的表现,能否简练地将答案告诉面试官,可以通过给自己讲解的方式刻意练习 重点针对,面试官会针对简历提问,所以请针对简历上写的所有技术点进行重点准备 Java基础 JVM原理 集合 多线程 IO 问题排查 Web框架、数据库 Spring MySQL Redis 通用基础 操作系统 网络通信协议 排序算法 常用设计模式 从URL到看到网页的过程 分布式 CAP理论 锁 事务 消息队列 协调器 ID生成方式 一致性hash 限流 微服务 微服务介绍 服务发现 API网关 服务容错保护 服务配置中心 算法 数组-快速排序-第k大个数 数组-对撞指针-最大蓄水 数组-滑动窗口-最小连续子数组 数组-归并排序-合并有序数组 数组-顺时针打印矩形 数组-24点游戏 链表-链表反转-链表相加 链表-...
<think> 问题分析:该错误信息表明在Maven构建过程中,项目`gaia-apigc-adapter-api`依赖的`gaia-apigc-common:jar:1.0.0`在配置的Maven仓库(`huawei-product-maven`)中找不到。 可能的原因及解决方案: 1. 依赖的版本不存在:确认`com.huawei.cbgitpublicproduct:gaia-apigc-common:jar:1.0.0`是否在仓库中存在。可能是版本号错误,或者该组件没有被正确部署到仓库。 2. 仓库配置问题:检查Maven的settings.xml或pom.xml中配置的仓库地址是否正确,以及网络是否可访问该仓库。 3. 仓库权限问题:如果仓库需要认证,检查Maven的settings.xml中是否配置了正确的用户名和密码。 4. 本地Maven缓存问题:有时本地缓存可能导致问题,可以尝试清除本地仓库中该依赖的目录(位于`~/.m2/repository/com/huawei/cbgitpublicproduct/gaia-apigc-common/1.0.0`)并重新构建。 步骤: 1. 检查仓库中是否存在该依赖: 在浏览器中访问仓库URL:`https://cmc.centralrepo.rnd.huawei.com/artifactory/product_maven/com/huawei/cbgitpublicproduct/gaia-apigc-common/1.0.0/`,查看是否有对应的jar文件。 2. 如果不存在,需要将该依赖部署到仓库,或者检查项目版本号是否正确。 3. 检查项目的pom.xml或父pom中是否配置了正确的仓库。例如,确保有类似如下配置: ```xml <repositories> <repository> <id>huawei-product-maven</id> <url>https://cmc.centralrepo.rnd.huawei.com/artifactory/product_maven/</url> </repository> </repositories> ``` 4. 检查settings.xml中的仓库配置和认证信息(如果有需要认证的仓库): ```xml <servers> <server> <id>huawei-product-maven</id> <!-- 必须与repository的id匹配 --> <username>your-username</username> <password>your-password</password> </server> </servers> ``` 5. 尝试手动下载依赖: 在命令行中执行: ```bash mvn dependency:get -Dartifact=com.huawei.cbgitpublicproduct:gaia-apigc-common:1.0.0 -DremoteRepositories=huawei-product-maven ``` 6. 清除本地缓存并重新构建: ```bash mvn dependency:purge-local-repository -DmanualInclude=com.huawei.cbgitpublicproduct:gaia-apigc-common mvn clean install ``` 如果以上步骤无法解决,可能需要联系仓库管理员确认该依赖是否可用,或者检查构建过程中是否有其他问题。 由于问题与Maven依赖解析有关,这里不涉及具体代码,而是配置和构建过程。因此,以下给出一个检查Maven仓库配置的示例: 假设在项目的pom.xml中,需要确保仓库配置正确: 如果项目pom.xml中没有配置仓库,可以尝试添加: ```xml <project> ... <repositories> <repository> <id>huawei-product-maven</id> <url>https://cmc.centralrepo.rnd.huawei.com/artifactory/product_maven/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> ... </project> ``` 如果仓库需要认证,在settings.xml中配置(注意:settings.xml通常位于用户目录下的.m2文件夹中): ```xml <settings> <servers> <server> <id>huawei-product-maven</id> <!-- 必须与pom中repository的id一致 --> <username>username</username> <password>password</password> </server> </servers> </settings> ``` 注意:将`username`和`password`替换为实际的认证信息。 如果问题仍然存在,请确认该依赖确实在仓库中存在。如果不存在,需要将依赖安装到仓库或者检查依赖的构建和发布过程。 相关问题: </think> ### 问题分析 这个错误是 Maven 构建失败导致的依赖解析问题,核心原因是: 1. 依赖 `gaia-apigc-common:1.0.0` 在配置的仓库中不存在 2. Maven 仓库配置或网络访问问题 3. 依赖未被正确部署到仓库 --- ### 解决方案 #### 1. 检查依赖是否存在 在浏览器中访问仓库 URL,确认依赖是否存在: ``` https://cmc.centralrepo.rnd.huawei.com/artifactory/product_maven/com/huawei/cbgitpublicproduct/gaia-apigc-common/1.0.0/ ``` 如果返回 404,说明依赖确实不存在。 #### 2. 检查本地 Maven 配置 在项目的 `pom.xml` 中确认仓库配置是否正确: ```xml <repositories> <repository> <id>huawei-product-maven</id> <url>https://cmc.centralrepo.rnd.huawei.com/artifactory/product_maven/</url> </repository> </repositories> ``` #### 3. 强制更新依赖(常用解决方式) ```bash # 清理本地缓存并重新下载依赖 mvn clean install -U ``` #### 4. 手动安装依赖(如果依赖在本地) ```bash mvn install:install-file \ -Dfile=path/to/gaia-apigc-common-1.0.0.jar \ -DgroupId=com.huawei.cbgitpublicproduct \ -DartifactId=gaia-apigc-common \ -Dversion=1.0.0 \ -Dpackaging=jar ``` #### 5. 检查代理和网络设置 在 `~/.m2/settings.xml` 中检查代理配置: ```xml <proxies> <proxy> <id>huawei-proxy</id> <active>true</active> <protocol>https</protocol> <host>proxy.huawei.com</host> <port>8080</port> <username>your_id</username> <password>your_password</password> </proxy> </proxies> ``` #### 6. 确认依赖版本号 检查父级 POM 或 BOM 中是否强制覆盖了版本号: ```xml <dependencyManagement> <dependencies> <dependency> <groupId>com.huawei.cbgitpublicproduct</groupId> <artifactId>gaia-apigc-common</artifactId> <version>1.0.0</version> <!-- 确认此处版本正确 --> </dependency> </dependencies> </dependencyManagement> ``` #### 7. 联系仓库管理员 如果以上步骤无效,需联系仓库管理员确认: - 依赖是否被删除/移动 - 仓库访问权限是否变更 - 是否有新的仓库地址 --- ### 完整排查流程 ```mermaid graph TD A[构建失败] --> B{检查错误日志} B --> C[依赖未找到] C --> D[浏览器访问仓库URL] D --> E{是否存在依赖?} E -->|是| F[检查网络/代理设置] E -->|否| G[联系管理员部署依赖] F --> H[更新settings.xml配置] H --> I[执行 mvn clean install -U] I --> J{是否解决?} J -->|否| K[手动安装依赖] ``` --- ### 预防措施 1. 在团队内部搭建 Nexus 私服缓存中央仓库依赖 2. 使用 CI/CD 流水线自动部署依赖 3. 在 `pom.xml` 中配置备用仓库: ```xml <repositories> <repository> <id>backup-repo</id> <url>https://repo1.maven.org/maven2/</url> </repository> </repositories> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值