ChatGPT可以开车吗?分享大型语言模型在自动驾驶方面的应用案例

自动驾驶边缘案例需要复杂的、类似人类的推理,远远超出传统的算法和人工智能模型。而大型语言模型正在致力实现这一目标。

人工智能技术如今正在快速发展和应用,人工智能模型也是如此。拥有100亿个参数的通用模型的性能正在碾压拥有5000万个参数的任务特定模型,在从单一模型解决许多任务方面表现出了卓越的性能。

人工智能模型也正在变得多模态。微软公司的Florence 2和OpenAI公司的GPT-4V等新的视觉模型正在扩展这些模型的应用,以整合图像、视频和声音,将大型语言模型(LLM)强大的能力应用在数百万个新的用例中。

事实证明,在模型工程领域,规模越大越好,每个应用程序都经历了类似的发展:

  • 一个任务,一个领域:针对特定用例的简单模型——用于检测道路的对象检测器,用于室内场景的深度分割模型、图像字幕模型、用于Web应用程序的聊天机器人等。
  • 一个任务,每个领域:将一个简单模型的应用扩展到许多用例中——无处不在的对象检测器(YOLO、DINO等)、各种事物的深度分割(MobileNet)、多种产品的聊天插件。
  • 每个任务,每个领域:可以应用在任何事情的大型模型,新的大型语言模型(LLM)使范式转变成为可能。例如Florence、GPT-4V、ChatGPT。
  • 每个任务,一个领域:为某一个领域优化大型模型,支持实时应用程序和更高的可靠性——例如,用于交互式搜索的GPT-3.5-Turbo,用于研究和起草法律文档的Harvey.ai,用于自动驾驶的DriveGPT。

运行在小型模型上的自动驾驶技术

自动驾驶技术仍然在小型模型上运行。虽然许多单一任务模型、专用传感器和精确的地图组合已经提供了令人印象深刻的原型,但目前的技术还没有提供支持司机日常所需的安全性或规模。

以下是阻碍自动驾驶技术发展的因素:

  • 零样本泛化。现有的模型经常在从未见过的情况下失败,通常被称为自动驾驶的“长尾”。如果没有得到充分的训练,这些模型就没有能力根据基本原则来推断下一步该做什么。迄今为止的解决方案是建立另一个专用模型。难以绘制动态场景是大多数自动驾驶系统的一个关键弱点。
  • 理解司机和行人的意图。现有的模型无法理解人类互动和意图的微妙之处,无论是车内的司机还是车外的行人或车辆。
  • 准确绘制区域地图。虽然自动驾驶车辆在地图绘制良好的区域大多可以行驶,但事实证明,精确的高清地图很难进行缩放。如果没有精确的地图,基于地图的自动驾驶车辆就不能很好地行驶。
  • 扩展到其他类型车辆。如今的自动驾驶出租车依赖于专门的传感器,昂贵的计算以及许多专用模型的组合——这是一个复杂而昂贵的技术,尚未扩展应用到其他类型的汽车。

大型语言模型和长尾问题

在所有应用程序中,模型工程师使用大型语言模型作为超级强大的开发工具来改进模型工程过程的每个方面。大型语言模型已经被证明在开发和改进模拟环境,对大量数据集进行分类、理解和标记,以及解释和调试神经网络的“黑匣子”方面非常有用。

也许大型语言模型在开发过程中的最大优势之一是能够用自然语言表达复杂的、多步骤的逻辑,通过绕过对专家代码的需求来加快开发速度。这已经被证明在复杂的问题领域非常有用,例如文本摘要或代码完成与代码库之间的复杂依赖关系。

所有这些工程工具都可以广泛地改进开发工作,包括自动驾驶,但大型语言模型最有趣和最有影响力的应用是直接针对驾驶任务本身:对复杂的场景进行推理,并规划最安全的前进路线。

自动驾驶是一个特别具有挑战性的问题,因为某些边缘情况需要复杂的、类似人类的推理,远远超出传统的算法和模型。大型语言模型在超越纯粹的相关性,展示真正的“对世界的理解”方面表现出了希望。这种新的理解水平延伸到了驾驶任务,使司机能够在不需要明确训练的情况下,以安全和自然的方式在复杂的场景中导航。

现有的模型可能会被十字路口出现的建筑工人或事故现场周围的路线所迷惑,大型语言模型已经显示出了非常熟练地推理正确路线和速度的能力。大型语言模型提供了一条解决“长尾”的新途径,即处理前所未有的情况的能力。在过去的二十年,长尾一直是自动驾驶面临的根本挑战。

大型语言模型对自主任务的限制

如今,大型语言模型对于自主应用方面仍然存在一些限制。简单地说,大型语言模型需要变得更加可靠和更快。因此需要开发解决方案,而这正是开发人员努力工作的地方。

1.延迟和实时限制

司机的关键决策必须在不到一秒钟的时间内做出,而在数据中心运行的最新大型语言模型可能需要10秒或更长时间。

解决这个问题的一个方案是采用混合云架构,它用数据中心处理为车载计算系统提供补充。另一个方案是专门构建的大型语言模型,它可以将大型模型压缩成足够小、足够快,以适应汽车的应用。人们已经看到在优化大型模型方面有了显著的改进。Mistral 7B和Llama 2 7B已证明其性能可与GPT-3.5相媲美,参数数量级更少(70亿个参数对1750亿个参数)。摩尔定律和持续的优化应该会迅速将更多的这些模型转移到边缘。

2.幻觉

大型语言模型基于相关性进行推理,但并非所有相关性在特定场景中都有效。例如,自动驾驶车辆观察到一个人站在十字路口可能意味着停止(行人)、驶离(交警)或减速(施工工人)。正相关性并不总是给出正确的答案。当模型产生不能反映现实的输出时,将其结果称为“幻觉”。

基于人类反馈的强化学习(RLHF)通过将模型与人类反馈相结合来理解这些复杂的驾驶场景,为这些问题提供了一个潜在的解决方案。随着数据质量的提高,像Llama 2 70B这样的小型模型的性能与GPT-4不相上下,参数却减少了20倍(700亿个参数对1.7万亿个参数)。

研究项目也使更好的数据质量更容易扩展。例如,OpenChat框架利用了强化学习微调(RLFT)等新技术,在提高性能的同时避免了成本高昂的人类偏好标签。

3.新的长尾

大型语言模型已经编码了“一切”,但仍然可能没有涵盖所有特定于驾驶的概念,例如在繁忙的十字路口进行导航的能力。这里的一个潜在解决方案是采用长序列的专有驾驶数据训练模型,这些数据可以将这些更详细的概念嵌入模型中。例如,Replit使用来自其用户群的专有编码数据,通过微调不断改进其代码生成工具,性能优于Code Llama 7B等大型模型。

自动驾驶的未来发展

如今,自动驾驶尚未成为主流技术,目前只有少数自动驾驶车辆能够在最复杂的城市环境安全行驶。大型模型正在改变自动驾驶模型的开发方式,最终将改变自动驾驶技术——提供必要的安全性和规模,最终将这项技术交付给司机。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/840807.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

缓存IO与直接IO

IO类型 缓存 I/O 缓存 I/O 又被称作标准 I/O,大多数文件系统的默认 I/O 操作都是缓存 I/O。在 Linux 的缓存 I/O 机制中,数据先从磁盘复制到内核空间的缓冲区,然后从内核空间缓冲区复制到应用程序的地址空间(用户空间&#xff0…

提示优化 | PhaseEvo:面向大型语言模型的统一上下文提示优化

【摘要】为大型语言模型 (LLM) 制作理想的提示是一项具有挑战性的任务,需要大量资源和专家的人力投入。现有的工作将提示教学和情境学习示例的优化视为不同的问题,导致提示性能不佳。本研究通过建立统一的上下文提示优化框架来解决这一限制,旨…

ACE之ACE_Reactor

简介 ACE_Reactor实现了reactor模式,其使用了桥接设计模式,实现类的抽象为ACE_Reactor_Impl 结构 #mermaid-svg-RxRq4dmugv7inayl {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-RxRq4dmug…

Langchain-Chatchat的markdownHeaderTextSplitter使用

文章目录 背景排查步骤官方issue排查测试正常对话测试官方默认知识库Debug排查vscode配置launch.json命令行自动启动condadebug知识库搜索测试更换ChineseRecursiveTextSplitter分词器 结论 关于markdownHeaderTextSplitter的探索标准的markdown测试集Langchain区分head1和head…

OSI七层模型和TCP/IP四层模型的区别

OSI七层模型 1.物理层(Physical Layer) 实现相邻节点之间比特流的透明传输,尽可能屏蔽传输介质带来的差异。典型设备:集线器(Hub)。 2.数据链路层(Data Link Layer) 将网络层传下来…

字符串相似性匹配实际问题(一)

背景:很多人都是直接说dp编辑距离,我只想说,凡事都是说起来容易,做起来难。 问题:现有一个Python函数similarity_function,用于计算字符串之间的相似性,可以直接使用该函数完成下面的算法: 给定一个字符串列表List,其中的元素都是字符串string,给定一个substring,求…

Linux驱动(2)---Linux内核的组成

1.Linux内核源码目录 arch包含和硬件体系相关结构相关源码,每个平台占用一个目录 block:块设备驱动程序I/O调度 crypto:常用加密和三列算法,还有一些压缩和CRC校验算法。 documentation:内核个部分的通用解释和注释.。 drive…

gdb调试openjdk

参考Linux安装百度网盘-CSDN博客 在百度网盘官网下载Linux版本的安装包(deb格式)。 linux环境安装百度网盘: sudo dpkg -i baidunetdisk_linux_2.0.1.deb sudo apt-get -f install 在编译OpenJDK过程中,需要用到的软件如下: …

01_尚硅谷JavaWeb最新版笔记

尚硅谷JAVAWEB概述 课程概述 计划学习时间:1周以内

【2024软考】史上最全!软考刷题+解析大合集(9万字全手工打,货真价实)

计算机基础知识 1.中断向量表用来保存各个中断源的中断服务程序的入口地址。当外设发出中断请求信号(INTR)以后,由中断控制器(INTC)确定其中断号,并根据中断号查找中断向量表来取得其中断服务程序的入口地…

Pytorch-03 数据集与数据加载器

在 PyTorch 中,数据集和数据加载器是用于有效加载和处理数据的重要组件,特别是在训练深度学习模型时。以下是关于 PyTorch 数据集和数据加载器的简要介绍以及示例代码: 数据集(Dataset): 数据集是一个抽象…

python --创建固定字符串长度,先进先出

a 123def concatenate_within_limit(b, new_string):# 计算新字符串与a的长度之和a btotal_length len(a) len(new_string)# 如果长度超过1024,从前面删除足够的字符if total_length > 5:diff total_length - 5a a[diff:] new_string # 删除前diff个字符…

第86天:代码审计-PHP项目TP框架安全写法1day利用0day分析

案例一: 利用框架漏洞-TP3框架-SQL注入&Demo&YxtCMF 首先先查询thinkphp的版本 去寻找版本漏洞: Thinkphp3.2.3及以下版本漏洞整理_thinkphp3.2.3漏洞-CSDN博客 去查这个exp注入 这里的利用条件是必须有find方法,并且where后面的参数是数组 …

java基础-JVM日志、参数、内存结构、垃圾回收器

一、基础基础 1.1 数据类型 Java的数据类型分为原始数据类型和引用数据类型。 原始数据类型又分为数字型和布尔型。 数字型又有byte、short、int、long、char、float、double。注意,在这里char被定义为整数型,并且在规范中明确定义:byte、…

电赛一等奖!基于TMS320F2812的简易数字频率计

电赛一等奖!简易数字频率计设计(原理图、PCB、源码、分析报告) 这份文件是关于合肥工业大学电气与自动化工程学院的一个项目报告,题目为“基于TMS320F2812的简易数字频率计”。项目由方敏、侯其立、李苗、张巧云四位本科生完成&am…

Redis 哨兵机制的工作原理——Java全栈知识(22)

Redis 哨兵机制的工作原理 在之前的文章我们讲到了 Redis 的三种集群架构:跳转文章:Redis集群模式 接下来我们详细讲哨兵机制的作用以及实现原理 以下是 Redis 哨兵的结构图 1、Redis 哨兵的作用 哨兵的作用如下: 1、监控,2、…

如何使用Python中的生成器

如何使用Python中的生成器 在Python中,生成器是一种特殊的迭代器,它允许你逐个地生成值,而不是一次性地计算并存储所有的值。这对于处理大量数据或者无限序列特别有用,因为它能够节省内存并提高效率。 生成器通常是通过以下两种…

Java API使用避坑合集

Java API使用避坑合集 总结常见的容易踩坑点记录下来以供参考 相当于避坑大杂烩、会涉及各种坑,持续更新… 1、数组转集合 Arrays.asList() 方法 Arrays.asList() 方法 返回的集合不支持修改操作,否则会抛异常 java.lang.UnsupportedOperationExcept…

5月25日,每日信息差

第一、博通推出 P1400GD 高速网卡:支持 400Gbps 网络、5nm 工艺,搭载 BCM57608 芯片,符合 IEEE P802.3bs 标准。这款网卡采用 5nm 制程技术,为 AI/ML、云、高性能计算提供支持,配备第六代增强型 NIC 架构、第四代 RoCE…

【晚风摇叶之其他】抖音直播弹幕解析,连接websocket解析弹幕内容

目录 一.生成websocket的url 1.查看网络面板拿到url,分析url 2.分析url 1.获取room_id,user_unique_id 2.获取signature 3.拼接url 二.连接websocket解析弹幕内容 1.查找消息体序列化方式 2.编写proto对象信息 3.python连接websocket 问题1:cookie问题