2022汽车半导体生态峰会演讲实录|商汤绝影赵赫:自动驾驶通用目标感知体系的构建

发布日期:2022-11-29·

以“智链未来 本立而道生”为主题的“2022张江汽车半导体生态峰会暨全球汽车电子博览会”由《中国汽车报》社主办,张江高科、爱集微、浦东新区投资促进二中心承办,11月7日-8日在上海张江科学会堂隆重举行。

本届峰会邀请了以半导体为核心的全球智能网联汽车生态链企业高管、知名分析师与投资机构、中外行业大咖参加,瞄准新智能汽车与能源汽车技术前沿,就科创+产业+金融进行深度交流,为汽车半导体产业发展贡献智慧和力量。同时,通过趋势分享、前沿技术碰撞、投资逻辑解读以及全球汽车电子博览会,共同探讨全球巨变下的汽车半导体产业链发展,为业界充分展示汽车电子最新发展成果与趋势,打造国际化一流汽车半导体领域展示平台。

其中,在11月7日举办的“软件定义汽车专场”,上海临港绝影智能科技有限公司智能驾驶产品总监赵赫做了题为《自动驾驶通用目标感知体系的构建》的精彩演讲,以下内容为现场演讲实录:

赵赫:大家下午好,我是来自商汤绝影的赵赫,非常感谢主办方让我们有机会在这里和大家分享一下我们商汤绝影在自动驾驶领域的一些思考和体会。

上海临港绝影智能科技有限公司 智能驾驶产品总监 赵赫

今天这个主题是软件定义汽车,我们分享在感知这个方向,我们作为感知领域的研究者,关注感知对汽车带来了哪些的新的要求和挑战。

我今天分享的主题就是万物感知,自动驾驶通用目标感知体系的构建。首先我们通过一个短片了解一下什么是认知的通用目标感知。

最近有很多同行在交流,自动驾驶的感知要感知什么类别?我们也是和很多的车企有合作,我们接收到越来越多感知的需求,过去人车感知,现在要检测收费站的闸机等等,这些是自动驾驶的发展对感知提出越来越高的要求。无论是从功能的复杂度,场景覆盖度上来讲,我们自动驾驶系统是面临越来越多的挑战,面临越来越复杂的场景。

我们回答这个问题不妨回顾2018年的时候,我们当时做的数据采集和标注,所有的数据全部都是聚焦在人车,非机动车,车道线上面,我们今天做这些新功能开发的时候,这些老旧数据不能用了。面临这个问题,很多的车企、我们同行都有困扰,因为这个是巨大的浪费,一句话总结就是数据到用的时候也是恨少。作为感知的研发者来讲,我们要提早构建一个相对比较完善的自动驾驶感知的体系,可以方便我们后续的软件更迭。

我们考虑以下这么几个场景,第一个就是十字路口,我们右转遇到一个救护车,传统的自动驾驶会识别这个是汽车,因为我们并不知道这个是救护车,也不清楚救护车有特殊的路权,很有可能因为一些激进的自动驾驶的策略和救护车有碰撞。

第二,在路上碰到不同的施工区域,有的时候是路障,有的时候是标识牌,需要不一样区别的方法。现在对施工区域绕行也是高阶自动驾驶中常见的功能,对不同的施工区域只可以识别其中一种两种的话,也是不够智能的体现。

第三,在红绿灯遇到推着轮椅的行人,轮椅上坐着一个老人。这个情况下,这个车要进行准确的预测,因为现在越来越多的车企去追求智能化或者是老司机化,在路口的起步时间是大家追求的点。越激进的自动驾驶的策略,越会提早起步,这个情况下,针对弱势群体,在路口的行进的速度绝不能和普通的目标一样。

综合这三个场景来讲,我们做这种linux处理是不够的。行业就是黑天鹅发生的时候我们警醒,我们原来这个要解决,因为这个发生了生命安全的事故,我们要求供应商把这个功能更新上来。作为聚焦在感知的研发者来讲,我们要针对这些场景进行全局的规划和构建。

通用目标感知也存在难点,第一个是开极目标,第二是语义细化,第三是长尾分布。什么是开极目标,就是意味着我们的场景是无法被穷举,无论是遇到什么样的场景,明天会发生更多,以下这六个是我们实际做自动驾驶的测试过程当中切身遇到的一些案例。

第一是石块,碾压过去,发生了颠簸,我们要对这个石块辨别。

第二是三角线绳,这个把路边围起来了,有可能绕行无法很好的识别。

第三是苫布,路上有一个苫布,这种布没有什么作用,可以被碾压过去的,但是当时我们的车辆识别这个为一个不可行驶的区域,做了绕行,也不是很智能。

第四是塑料袋,空中飞舞的塑料袋在车的面前,被激光雷达认为是一个目标,会出现这些临时的噪点,这个情况停车制动,也是不人性化的体验。

还有狗和飞鸟,我们遇到过的,像新疆、欧洲的一些国家,在路上碰到马等等动物的情况也是很大的情况。

我们这些平时不太关注的目标,都会影响我们的驾驶体验。这些驾驶体验不是我们现在直接关注,还是刚刚这一句话,因为这些问题发生了危险,或者是其他人做到我们没有做到的时候会成为一个重要的加分项。除了这些以外,还有很多,这个是难以被穷举的开级目标。

还有一个目标的类别也是逐渐的细化,像我们刚刚讲到的救护车,还有消防车,警车等等。校车,现在很多的国家对校车有相关的法律法规,我们中国也是在相关的法规。我们校车停的时候,门会打开,有一个标识牌,我们开车遇到会减速或者是停车。这个自动驾驶开启的状态下,没有判断这个是一个特权车联,做了加速绕行,可能会被扣分罚款。

第三个难点,就是目标的形态呈现长尾分布,我们说到即便是相同的校车,警车,不同的国家,不同的地区,外观也是不一样。意味着我们很难通过一次的数据采集和标注解决所有的数据积累的问题。

所以说这个就是我们做通用目标感知的三个难点。

我们从以下三个纬度来提出了解决这个问题的一些方向。首先就是数据的纬度。刚刚有讲到一句话,数据用时方恨少,我们廖总提到软件定义汽车数据即资产,什么样的数据是资产?我们之前遇到了很多的数据采集回来,存放在本地,本地的空间不够,上云等等,这些数据在客户的手里,没有利用起来。我们要用起来,就是定义通用目标感知在接下来的五年、十年内可以做什么事情,我们在这个软件架构上做一个清晰的设计。商汤绝影结合我们去年发布的超大模型的知识图谱,结合一些自动驾驶的标签体系,构建了面向自动驾驶的标签体系,这个标签体系有3千多个标签,横跨四个领域。这个标签体系的作用有几个,一个就是定义我们的软件架构,每一个新出现的类别都是在这个软件架构里面,都能够简单的被加入,或者是删减。所有的可以预见的感知的目标,都可以在软件里面被定义。

第二是定义标注的体系,我们拿这个四个大的领域来举例,第四是路上其他的障碍路,这个就是只对路上的障碍路标注,在人行道的上的障碍物不会被标注,这个做软件的提早定义是很重要。

我们遇到一个新的场景的时候,我们可以通过是搜索它的关健词,迅速的找到标签体系的附节点,从而加入这个标签体系。有了这个标签体系以后,我们要有大量的数据,训练我们的通用目标价值的模型。

我们首先通过一套通用过滤器,来对数据进行初筛,这个规则包括了一些基本的点云缺失,过爆,光线情况比较差等等这些条件,把一些质量较差的数据进行过滤。有了这些数据以后,我们再通过特定的目标筛选的规则,把数据细筛,这部分的规则我们讲到数据闭环和回流包括两个方面,第一个就是像驾驶员临时踩刹车,我们记录前后5秒的情况。

我们今天讲的就是第二点,也就是根据特定的规则进行数据的筛选。比如说我们可以通过特定的光照条件,天气条件,包含目标类别的条件进行细筛,把我们要的数据筛选出来。这个是我们一些筛选的样例,我们通过一个月左右的时间,筛选到了3亿帧的高质量数据,涵盖100多个细分数据集,3千多个目标的类别。这个是我们通过外包,自己采集积累的数据库,这个问题就是早期的数据的来源不同,标注的规范不一样,所以我们说的数据筛选主要就是针对我们今天要开发的新功能,对旧的数据进行一次的筛选。

同时这个数据集也加入在智慧城市里面,安防摄像头,包括电线杆上面的一些摄像头里面一些数据。

刚刚提到了数据的筛选,是怎么做的?我们如何在一批广泛的数据集筛选我们要的数据?这个不得不提到我们的解决问题的第二个纬度就是算法。深度学习这个纬度,从经历30多年的发展,现在进入了超大模型的时代,去年1月OPENAI发布了两个超大模型,参数量达到百亿级别。之后各大的厂家在这个方向发布了自己的最新成果。商汤绝影同样发布了超大模型体系。

超大模型这个概念可能对很多人来讲是在学术界一些领域词汇,超大模型有什么作用?简单的说是三点,超大模型可以通过无监督学习的方法来学习图像的底层特征。我们可以将这些底层的特征当成监督的信号给车上的小模型进行训练。

第二,超大模型对数据的敏感度比较低,同样一批数据就是几百张图,用超大模型可以比较多的了解到这个数据的特征。

通过超大模型的训练,再去做迁移学习,知识蒸馏等等方式,这个比直接训练小模型的效率高。

结合一二,无监督学习的底层的特征,知识蒸馏等等我们可以把现有一些难以突破的知识边界进一步的提升,这个是我们解决一些场景稀缺样本的主要方式;

在去年,特斯拉公布了自己的成果。特斯拉在发布的BV是走的就是超大模型的路线,今年也是提到了这个模型的标注使用1万多块GPU,也是用超大模型的路线。非激光雷达的领域,走超大模型是一个行业的共识。

超大模型的训练是怎么做 ?很多人认为堆砌一个足够深的神经网络是不是超大模型?不是。超大模型是一个体系化的技术,主要是包含几个方面。要构建一个数据系统,超大模型分为通用和专用。通用的超大模型输入输出有几千个类别,那么要有一个标注的管理。同时我们的超大模型的训练会用不同的GPU,用到GPU的卡的数量也不一样。我们车端部署的小模型,用的SOC的型号不一样,一般是用网络结构搜索的方式,用模型搜集一个适合当前SOC的模型网络的架构。训练的时候也有一些技巧,超大模型是参数量达到百亿级别,很难通过几块GPU训练,通常需要几百、几千块训练很长的时间。这个过程当中,我们通常会做分布式训练,比如把神经网络不同层,不同参数放在不同的GPU集群做训练。在IT方面也要避免一两块GPU的失效导致训练的中断。我们超大模型训练出来了以后,在云端、服务器做推演,部署到车端要做量化,需要迁移一些小模型,我们要构建一个评测的基准和工具链,更好的量化超大模型迁移到端上的精度损失。

以商汤绝影发布的超大模型为例,我们去年超大模型用到的训练数据达到100亿,这个百亿的单位是视频和文本。参数量达到百亿的级别,训练这个超大模型,我们用512块A100显卡,训练60天时间,引入了10种监督信号,训练超过300亿参数的超大模型,这个需要的GPU资源就更多了。

超大模型的训练出来以后,主要的作用有这么几个,第一个就是自动标注,这里我们会把通用超大模型和专用超大模型的结果进行整合,通过这个模块来生产出可以超过或者是符合我们标准的自动标注的结果。以车辆的这个类别为例,我们在自动标注的结果远远超过人工标注的精度的结果,就像刚刚提到的稀缺类似,例如检测一只猫,这个是样本量少,很难通过超大模型的自动标注超过人工标注的结果。随着数据记量的积累,我觉得可以解决。人车的典型目标上,精度实现超越以后,我们在标注上的工作量会显著的降低,效率会提升。我们过去十年,我们标注300万张有车的图片,自动标注上线以后在一周里面能力可以标注1千万张,这个效率的提升达到几百倍。

刚刚讲到自动标注还有一点,就是现在特斯拉的技术方案也是被大家认可和探讨的,特斯拉也是讲到了一些新的方案,他们用到1万多块GPU做增值的生成,也是用超大模型。原因就是特斯拉一直坚持不用激光雷达,用相机要有超过激光雷达的结果,就要用足够深的网络结构。所以说这一条技术路线,在国内,包括小鹏,包括毫末智行纷纷走了这一条路,是否使用激光雷达?还是值得探讨的。

有了自动标注的结果以后,我们要把超大模型转换为在车端可以生产,可以实际部署的小模型。刚刚提到了通过网络结构搜索,我们搜出车端适合的架构,通过知识蒸馏和迁移学习的方式,把超大模型学到的特征给小模型做监督,最终生产实际的小模型。我们有一个案例,我们在猫狗检测的类别上,一个十亿参数的超大模型可以达到95%左右的准确率,我们将这个超大模型进行知识蒸馏和迁移学习,生产了一个只有200万参数的小模型,这精度达到了88%左右,这个也是超大模型在车端生产模型的一个绝佳的优势。

最后我们也提到了过去的数据和现在的数据差别太大,我们很多车企可能自己采集了一些数据,今天我们要把数据里面的车辆细分为救护车,警车、消防车,大车小车等等,我们引入了一个层级互斥图的概念,把不同列车作为端点,类别之间的联线表明是可以共存或者是互斥的关系。通过这个机制,我们可以把所有不同批次的数据混在一起进行训练,使附节点和子节点的精度不受影响。

最后我们提到解决问题的一个纬度就是算力的纬度,超大模型要上百上千上万GPU,我们去年在上海临港建成人工智能的超算中心,现在的算力是3.74,这个算力大约比特斯拉大2倍左右。我们也是在行业里面唯一一个作为算法公司自建和拥有超算中心的团队和企业。

刚刚讲的是很多理论层面的东西,我们展示一个实际的案例。我们今年上半年发现清障车,检测率很低,发生了很多的漏检和误检,导致了下游的某些系统出现了误判。我们过去没有针对清障车做过标注,这些都是属于车这个类别。我们为了提升这个清障车的检测的精度,我们要快速的积累和挖掘大量的清障车的数据。我们通过超大模型的其中一个模型做了一个冷启动的搜索,这个是开源的模型,这个作用就是实现以文字搜图,我们使用自动驾驶的数据进行分析,实现以文字搜图和以图搜图。我们从以往的数据集里面,通过这个快速的在一天里面搜到几十万张有清障车图,我们用这些图训练了一个小模型,把这个模型部署到车上,这个模型检测到的清障车传到后台,然后更新模型,形成闭环。

我们在三天的时间里面,通过这个闭环,生产获取了180多万个清障车的图片,同时其他的类别也是,包括小狗等等,在一天、几天的时间里面,在路上采集和挖掘到了几十万,几百万的图片。我们知道过去可能我们要采集这些类别的话,要派车队采集,可能一采集要几个月,现在通过这个数据闭环几天时间可以做到。

这个过程闭环走通了以后,我们回顾一下主要三个难点,一个是数据的闭环第一次回环是否是正向,我们第一次的数据挖掘要挖掘出50%以上的正确的案例,这样的话,这个闭环可以形成,否则我们人工质检的成本比做这个工作的工作量大很多。

第二是要和车企打通数据的通路,我们要从域控把这个发到Tbox,Tbox通过5G的信号传到云端,这个数据通路要和车企、Tbox供应商一起定义。

最后一个问题就是法律法规的问题,数据的所有权,测绘的资质,这个是我们现在还没有澄清的问题。

作为感知的从业者,我们优先目标就是把第一个闭环技术这个环节打通,我们之后才可以有像特斯拉这样做数据回流的能力。

今天讲的内容都是感知数据闭环相关,我们也有做决策闭环、规划闭环,全栈的能力。最后分享一下我们的一些看法,我们认为自动驾驶的迭代能力取决于三个要素,场景数据,数据获取效率,数据利用效率的平方。毋庸置疑,场景数据是车企有最多的数据。数据的获取效率,就是我们提取面临一个场景的时候我们用三天的时间把这些数据采集回来发布一个新功能,还是用三个月,抑或是三年,这里的话,是否部署这一套数据闭环,可能就会造成具体速度的差异。

同时这个数据闭环又依赖一个超大模型的设计能力,算力的能力,在这里我们认为数据的利用效率是有两个系数。这个是我分享的内容,最后我希望我们相关的法律法规政策可以尽快的落地,同时车企能够支持我们这些做感知的供应商或者是数据闭环供应商,可以把链路打通,尽快的规避这些数据所有权以及A车企的数据是否可以服务于B车企的问题,这个是一个现实的问题,我们打通了这个链路以后,目前其实在推广上还是面临很多的困难。

更大的困难,不是在原理上,更多就是规则、你的我的这些问题上。我们希望能够和我们的同行一起把这个数据利用起来,用到我们的量产车上,实现对国际上一流企业的超车,谢谢大家。

(注:以上速记内容未经本人确认)