前言:
在7月底的一篇文章中,九章智驾提到,数据闭环能力是自动驾驶下半场的“入场券”,这一观点在行业内引起了广泛共鸣。
在数据闭环体系中,仿真技术无疑是非常关键的一环。仿真的起点是数据,而数据又分为真实数据跟合成数据。随着真实数据“规模小、质量低、使用难度大”等问题日渐暴露,合成数据越来越受重视。
顾名思义,合成数据(synthetic data)就是通过计算机技术生成的数据,而不是由真实事件产生的数据。但合成数据又具备“可用性”,能够在数学上或统计学上反映原始数据的属性,因此也可以用来训练、测试并验证模型——OpenAI 的 GPT-4,就采用了大量前一代模型 GPT-3.5 生产的数据来进行训练。
在2022年底,笔者曾写过5篇关于自动驾驶仿真的科普文,但这几篇文章对合成数据的着墨不多。过去的两个月里,笔者在学习合成数据的过程中,又遇到了不少疑问,带着这些疑问,笔者请教了十多位业内专家,然后形成“合成数据科普文”系列。
在本系列文章的撰写过程中,笔者得到了光轮智能CEO谢晨、图森首席科学家王乃岩、辰韬资本赵磊、复睿微电子张俊川、百度仿真专家徐志健、昆易电子方志刚、“车路慢慢”运营者李漫漫、PanoSim王文威等朋友的支持,在此表示感谢。
自动驾驶合成数据科普一:
不做真实数据的“颠覆者”,做“杠杆”
自动驾驶的仿真,最早就是以合成数据为主。这里讲的合成数据,主要是指由人工基于规则搭建的场景,这背后的技术,就是业内常说的WorldSim。通常,基于WorldSim搭建的场景,还需要用Unreal等游戏引擎来做图像渲染。直到今天,WorldSim+游戏引擎仍然是自动驾驶行业用得最多的合成技术之一。
看起来,基于WorldSim+游戏引擎的合成数据能在一定程度上弥补真实数据不足的问题,然而,在实际使用中,这种合成数据存在一个很难克服的短板:真实度还不够高。用更专业的术语来说是“保真度”不够高。
这一痛点,决定了基于WorldSim+游戏引擎的合成数据基本上只能用来做测试,很难用于做算法训练。
为了避开WorldSim+游戏引擎技术的这一短板,有一些公司试图将真实道路数据“转换成数学模型”。然而,这一设想实施起来困难重重。
但合成数据“可用性”的提升,并未因此而停止。
真正能帮合成数据提升可用性的,是更高的保真度和更强的泛化能力。GAN、VAE和Diffusion Model等模型在自动驾驶仿真中的应用,已经证明了这一点;而当下广受追捧的NeRF技术,也需要保证泛化能力才有可能被广泛应用。
当下大热的AI大模型能,也将在自动驾驶仿真中占有一席之地。事实上,AI大模型+NeRF的组合,被一些从业者视为帮合成数据攻克保真度和泛化能力这两大难题的关键武器。
随着合成数据面临的主要难题被一一攻克,真实数据“规模小、质量低、使用难度大”的问题也不再那么令人担忧。
通常,在谈起合成数据时,人们本能地以为它的主要价值是弥补真实数据“数量不足”的问题。但这可能是一个严重的误解。
在笔者看来,真实数据的最主要问题并不是“太少”,而是“质量低,使用难度大”。所以,哪怕真实数据的规模很大,合成数据仍然是必不可少的。不信的话,看看“最不缺”真实数据的特斯拉是怎么做的吧——特斯拉也在使用合成数据!
在国内,各家已有自动驾驶量产车型上路的主机厂也不缺真实数据,但这些数据的利用率究竟“高达”20%、10%还是1%,其实是存在很大的疑问的。
不过,真实数据质量低、使用难度大给主机厂带来的困扰,恰合也就是合成数据的用武之地。
有意思的是,不同于L4公司普遍用合成数据来“弥补”真实数据的不足,一些以提供合成数据服务为主业的公司更倾向于将合成数据定位为真实数据的“杠杆”。在后者看来,合成数据的使命和愿景并不是要去顶替真实数据,而是要做真实数据的“放大器”,帮助主机厂或自动驾驶公司提高真实数据的使用效率。
下面,我们将以1.1万字的篇幅来盘点一下“合成数据究竟能解决真实数据的哪些痛点”。
一、兼顾隐私保护与数据的可用性
在真实场景中,自动驾驶车辆的传感器采集到的信息经常包括车牌、人脸,但出于隐私保护的需求,这些数据通常大都无法直接使用,而是得先做脱敏或加密才行。但脱敏不仅意味着一笔额外的成本,而且,如果脱敏处理不好,数据的价值也会大打折扣,甚至根本无法使用。
但如果是根据实际需求搭建一些不包含隐私信息的数据,就可在兼顾隐私保护的前提下确保数据的可用性。
在美国和欧洲,合成数据已经是一个很大的产业了,但在中国,合成数据还处于萌芽阶段,其中有一个重要的原因是:
美欧国家在文化和法律层面都会对隐私保护比较讲究,因此,企业不得不通过采用合成数据来避免高度依赖真实数据所带来的风险;而在中国,长期以来,无论在文化层面还是法律层面,隐私都没有受到足够的重视,所以,企业可以“肆无忌惮”地使用真实数据,这也导致了中国缺乏合成数据发展的土壤。
但情况正在发生变化。一方面,在中国,普通个体关于隐私保护的权利意识在觉醒;另一方面,法律层面也不允许企业肆意滥用各种隐私数据了。
单从隐私保护的角度考虑,国内公司也将越来越多地降低对真实数据的依赖程度。
二、避开高精地图的资质障碍
除了图商等极少数有资质的公司,大多数公司都无法通过路采获取真实数据的方式来绘制高精地图,为了避开这一问题,很多公司推出了“去高精地图”方案,但这一方案对公司的前融合算法能力、规控算法能力都提出了新的挑战,实际上,真正能落地的公司并不多。
但如果能用合成数据来制作高精地图,那问题就简单得多了。
在中国,我们尚未看到有公司采用合成数据来制作高精地图,但在美国,已经有了类似的先例了。
2021年11月,在一场题为 Under the Hood的活动上,Cruise仿真技术战略主管 Sid Gandhi 披露,在向新的城市拓展时,他们不必重新绘制城市地图来跟踪车道变更或街道封闭等“不可避免发生的环境变化”,而是利用一项名为 WorldGen 的技术,准确、大规模地生成整个城市,“从奇特的布局到最小的细节”。
为了确保最佳的世界创建,Cruise 考虑了一天 24 小时不同时间段的照明和天气条件等因素,甚至系统地测量了旧金山一系列路灯的光线。
对于无法在现实路况下收集的特定场景,Cruise则使用 Morpheus。Morpheus 是一个可以根据地图上的特定位置生成合成数据的系统。
据曾担任过Cruise仿真负责人的光轮智能CEO谢晨说:
Crusie的 WorldGen和Morpheus并不是用合成数据来做高精地图,而是对真实世界做3D重建。但无论如何,将车道变更或街道封闭及“从奇特的布局到最小的细节”都纳入3D重建中,重建后的信息元素已经很接近高精地图了。
在美国,自动驾驶公司采集真实道路数据并不会受到如在中国这般严格的限制,但Crusie仍然采用了合成数据,这给那些被高精地图政策束缚了手脚的中国公司提供了一种新思路。
此外,今后受数据合规相关法规政策影响的,就不限于高精地图数据了,还有用于感知算法训练的数据回传。
(这一点,九章在6月30日发的《“去高精地图”跟“轻高精地图”有啥区别?落地的挑战又是啥?》一文的第七章“感知算法训练或将受到数据合格政策的影响”部分已做过详细的分析,并在此后也从其他平台发布的类似内容中得到进一步印证,在此不再赘述。)
可以想见,接下来,用真实道路数据做算法训练的难度是越来越大了——不是没法做,关键是对车端脱敏的要求太高了,甚至可能还需要跟有测绘资质的图商合作。
受这一政策冲击较少的公司,应该就是那些率先开始拥抱合成数据的公司。
三、高效生成在真实场景中很难获取的Corner Case
大家都清楚,自动驾驶系统很难彻底取代人,最关键的原因是对各种corner case的应对能力不足,而应对能力的不足又源于数据量不够。这正是合成数据大有可为的地方。
大量的corner case,在真正发生前,没有人能想得到——预期功能安全第三象限里面的“unknown,unsafe”一类,所以无法在真实道路上做模拟。这类corner case,没法通过基于人工规则的合成数据(WorldSim)来生成,也没法通过对真实世界做3D重建的技术(NeRF)来生成,但有望通过基于AIGC的合成数据来获取。
有的corner case,尽管人能想象得到“大概会怎样”,但毕竟太危险(known,unsafe),所以,也不适合在真实道路上做模拟。这种corner case,没法通过NeRF技术来生成,但可以通过WorldSim来生成。当然,也有望通过AIGC来生成。
有的corner case,算不上有多么unsafe,但在真实世界中确实很罕见。如雨、雾、雪和极端光线等极端天气跟某种极端交通流的组合。这些,也需要通过合成数据技术(同上,不包括NeRF)来生成。
(为何这一章会在多处提到了有许多corner case无法通过当下大热的NeRF技术来生成?这个问题的答案,我们将在本系列的第二篇文章中做详细的阐释。)
有许多corner case,真实数据中其实有的,但无奈真数据中corner case的密度太低,挖掘成本太高,这个时候,工程师们如果没有足够的耐心或“实在等不及”,则直接选择合成数据便是最佳策略。
有了合成数据,主机厂或自动驾驶公司便可在几小时内模拟数百万个行人(现实中,这通常需要几个月才能完成)。这些模拟可能涵盖不同照明条件、目标位置和恶劣环境下(暴雨、极寒、浓雾等)的示例。或者,可以插入随机噪声来模拟脏污的摄像头、雾水和其他视觉障碍物。
此外,真实数据由于高度受制于采集场景的限制,所以,corner case在样本的分布上也很难有效满足算法的需求。而合成数据,可以有针对性地生成分布状况更满足训练需求的corner case,这更有助于提升算法的性能。
四、“非必要,不采集”,降低数据采集、回传及存储环节的成本
许多主机厂都声称已经量产上路的自动驾驶车型每天都在回传数据,但这个所谓的“数据回传”究竟实现到什么程度、所谓的“影子模式”是否真的落地了,一直是个玄学。
之前只有为数不多的测试车的时候,数据的问题相对好办,毕竟,“回传”可以通过硬盘来解决,筛选可以在云端做,然而,在量产车上,通过硬盘来解决数据“回传”的道路走不通了,筛选出有效数据这个工作就要在车端完成。
在3月份的