这两天,马斯克的一条推文引起了人们的注意:
简单来说,FSD Beta v12 将采用端到端的架构,输入视觉等传感器信号、输出转向、刹车、加速等车辆控制信号,与现有版本将有巨大差距。
(资料图片)
消息一出,便引起了人们的激烈讨论:有说特斯拉牛X的,有期待的,当然也不乏说马斯克吹牛的。
但在这之中,还有相当多的人提出了一个相同的问题:
什么是“端到端”?
今天,我们就来简单聊聊这个话题。
「端到端」的定义
很多人看到“端到端”,第一印象总是“从A到B的自动驾驶。”
其实,“端到端”是深度学习中的概念,英文为“End-to-End(E2E)”,指的是一个AI模型,只要输入原始数据就可以输出最终结果。
比如最近很火的ChatGPT,它就是一个典型的端到端模型,输入文字语句,直接就能得到回答。
那对于智能驾驶来说,“最终结果”指的是什么?
用第一性原理分析,智能驾驶其实就是让车辆自动把你从A点带到B点。当然了,作为乘客的你,肯定是希望它能开得轻柔一些,还要能避开路上的一切威胁,也别对其他人造成威胁。
这需要车做些什么呢?其实很简单,跟你开车是一样的:踩油门刹车、打方向盘。
踩油门还是踩刹车?方向盘向左打还是向右打?这就是智能驾驶AI模型应该输出的“最终结果”。
马斯克在描述FSD Beta v12 时,就提到了它可以实现输入图像,输出转向、刹车、加速等车辆控制信号的能力,因此说它是“端到端”的。
需要强调的是,目前各家对于“端到端”还没有一个统一的定义,因此不同语境下的端到端可能会存在一定的差异。而像特斯拉FSD Beta v12 这种“端到端”,其实还有一种说法,叫做“感知决策一体化”,也就是将“感知”和“决策”融合到一个模型中,这种描述则相对更为准确一些。
「端到端」的优势
那有的朋友可能要问了:“端到端”牛在哪?
目前已量产的智能驾驶,绝大多数采用的是模块化架构。
所谓“模块化”其实很好理解,就是把智能驾驶拆分成一个个典型任务,然后将这些任务交由专门的AI模型或模块来处理,比如说感知、预测、规划等等。
实际应用中,感知模型的任务就是输入摄像头等传感器信息,然后在里面找到车辆周围的障碍物、车辆、车道线、红绿灯等一切与驾驶相关的元素,然后把感知信息汇总给规划模型,规划模型就会根据得到的信息规划出车辆的最佳行驶路线,再交给控制模块(控制模块一般并非AI模型),实现车辆最终的控制。
在这种架构中,每个大的模块下,又可能是以多种模型组合而来的,例如感知,其中可能包含了分类、追踪、定位等AI模型,各司其职。
也就是说,一个智能驾驶系统里,可能包含了很多很多个模型,每个模型都要专门进行训练、优化、迭代,随着模型的不断进化,参数量提高,所需的研发人员也水涨船高,研发投入极高。
而端到端架构,则是通过一个模型实现了以上多种模型的功能,研发人员只需要针对这一个模型进行整体训练、调整优化,即可实现性能上的提升,因此可以更好地集中资源,实现功能聚焦。
另一方面,传统的模块化架构可以看做是一种流水线,很多模型的输入参数,其实是前级模型的输出结果。如果前级模型输出的结果有误差,就会影响下一级模型的输出,导致级联误差的出现,最终影响整套系统的性能。
这很好理解,在这种架构下,不同模块间就相当于不同的人,负责决策的人是不能直接看到环境的,需要“观察员”转告,因此将不可避免地产生误差。
而端到端架构,输入传感器信号后可以直接输出车控信号,大大降低了级联误差的概率,也因此大大提升了系统性能的上限,整体潜力极大。
「端到端」的难点
在智能驾驶领域,端到端其实并不是什么新鲜概念,早在1988年就面世的ALVINN自动驾驶试验车就基于端到端架构,可以在大学校园里实现最高70km/h的自主行驶。
直至目前,依然有许多厂商在进行端到端智能驾驶技术的研发,除了特斯拉外,还有英伟达、comma.ai等厂商。
但在量产车上看,模块化架构依然是目前智能驾驶的绝对主流,可见端到端架构依然存在一些关键的问题未能解决。
“可解释性”,就是其中最关键的一点。
在AI业内,最近有一个词特别火,叫做“涌现”,意思是当模型突破某个规模时,性能突然显著提升,表现出了让人惊艳、甚至是意外的能力。
而之所以称之为“涌现”,是因为这种情况是不可控的、不能预知的,即便一个模型发生了“涌现”,人们也不知道其内部发生了什么,是因为什么导致了能力的巨大变化。
这就是深度学习中,模型的重要评估指标“可解释性”的具体表现。
一个模型,如果可解释性好,说明人们对这个模型的运作逻辑是能理解的,也就能更细致且有目的地来对模型进行调整。
但如果一个模型的可解释性很差,那说明人们对这个模型内部知之甚少,甚至都不能理解这个模型为什么能跑起来,是一个黑盒。他虽然能做出正确的决策,但方法是什么,理由又是什么,都不知道。
很可怕对不对?
可惜,端到端智能驾驶,就是一种可解释性很差的模型,这就导致了一系列的问题。
首当其冲的就是安全性。
还是拿ChatGPT为例,作为端到端的大模型,它的能力很强,但“胡说八道”的情况也不少见,对于一个语言模型来说,错了就错了,纠正一下就是,但对于驾驶来说,如果决策规划出错了,就有可能导致严重的事故,甚至危及生命。
可端到端智能驾驶是个黑盒子,即便出了差错,研究人员也不知道它为什么会出差错,到底是哪一部分出了问题,又该如何去避免。只能通过不断的训练、调参、增加参数量,来尽可能地提高模型的准确率,但最终能否达到100%的安全,还是要打一个问号。
另一方面,端到端智能驾驶,它的训练本就是很复杂的。感知模型训练时,需要的是经过标注的图片,这是一种比较容易获得的素材,而端到端智能驾驶,它需要学习的是驾驶行为,因此需要大量标注有驾驶行为的视频才能进行进行训练,采集和标注都很困难。
因此,端到端智能驾驶,它的闭环验证比较困难,缺少足够的真实数据,目前主要还是在仿真环境中进行训练和验证,这也直接影响了它的量产落地。
「端到端」的落地
虽然困难重重,但端到端对智能驾驶的诱惑太大了,因此厂商们也在持续推进端到端的落地,也带来了不同的解题思路。
例如混合专家系统(Mixture of Experts, MoE),这是一种集成学习(Ensemble Learning) 技术,在一个大模型里,有很多个“专家网络”,这些专家网络之间是具备共享结构的,在训练时,网络之间可以分享一些共性的学习结果,保证整体学习的一致性。
但同时,这些专家网络又是针对不同任务而构建的,可以针对不同的任务进行预测,例如识别、分类、预测、定位等等,与模块化结构类似。
在这种结构下,人们既可以针对某些专家网络进行训练,也可以针对整个模型进行训练,一定程度上提高了端到端模型的可解释性,还方便对模型内的网络进行单独替换。
此外,针对端到端的安全问题,还可以通过多种方法进行补足,例如加入毫米波雷达、激光雷达等传感器,提供更多的传感器特征,提高参数量,在最后的控制上加入一些“if-then”条件进行约束、或者强化学习等等。
而在训练和验证方面,则与量产车的部署数量有很大关系。特斯拉之所以能在端到端的落地上走在行业前列,我猜测与其量产车所具备的“影子模式”有很大关系,甚至有可能每一辆搭载FSD的特斯拉都在为FSD端到端的训练做出贡献。
不难看出,端到端智能驾驶一旦成功落地,对于整个行业的影响将是颠覆性的。但我们也要认识到,端到端有优势也有挑战,并且挑战依然是极大的,在现阶段甚至是未来很长一段时间内,当我们看到“端到端”时,只要看不到实物落地,就应该理性看待。
标签:
X 关闭
X 关闭