打造合规数据闭环,加速自动驾驶技术研发
1. 自动驾驶数据闭环业务场景分析
今天演讲的第一部分,我想跟大家聊一下自动驾驶数据闭环的业务场景分析。
自动驾驶的技术研发一般会分为如下流程:首先我们会采集到相关数据,然后经过一系列的运转、包括数据传输、输入入库以及后续的数据处理后,再分为两个环。一个环是上面这一层,主要涉及感知场景下的数据处理、模型训练、以及算法层的一些研发。同样还有下面一条环,主要涉及仿真场景下的场景挖掘、场景转换、以及仿真测试等研发工作。
刚才是从整体业务视角来看研发流程,现在我们换一个角度,从具体技术步骤来看一下研发闭环。
同样还是两个环。一个是中间这层小环,数据产生之后,经过数据管理平台,包括一些仿真测试、仿真云、再到车端部署,实现仿真的场景。另一个是外面的大环,我们主要做一些数据管理的工作,经过标注、加工、模型训练、以及最后的车端部署,来实现这样一个大环。
今天我跟大家的演讲主题,主要是想交流如何去构建这样两个自动驾驶的数据闭环链路。
将刚才的数据闭环链路拆解到架构层来看,可以把自动驾驶的数据研发分为如下五层:从最底下的基础设施,到中间的 PaaS 工具链,再到上面的一些 AI 运营服务。
关于如何围绕着工具链构建数据服务,基本集中在 1 和 2 这两个圈里面。
2. 百度智能云数据运营服务方案介绍
· 道路数据采集服务
首先我们会比较关注的数据从哪来、或者数据获取源头这样的问题。一般来说,自动驾驶相关数据来自两个方面:一个是量产车,一个是采集车。无论是哪种方式,数据都是需要通过最原始的车端数据来获取。
企业在最开始做这种自动驾驶的数据采集的时候会面临如下几个问题:
车辆如何去改装;
道路采集涉及到的测绘资质合规问题如何解决;
数据采集成功后,如何去做数据的质量把控,以及怎么去处理这些数据。
百度智能云会提供包含车辆改装、道路采集、以及数据的合规处理清洗等一系列服务。
首先是车辆改装部分,百度智能云会在车端实现针对车端传感器、车端工控机、以及车端不同传感器之间的数据标定、包括运动补偿等一系列服务,以确保采集车能够采集到更真实、更有效的一些道路场景数据。
其次,采集车在真正上路去做合规采集的流程,包括了从最开始的需求引入、到中间的车辆改装、再到后面的实际道路的外业采集、再到合规处理,以及最后如何去加工处理数据,交付给咱们的需求方/企业等关键节点。
· 数据合规服务
讲完路采之后,我们还需要关注数据合规。自从 2022 年 830 新规之后,无论是量产车、采集车还是测试车,自动驾驶相关的道路数据采集都属于测绘成果数据。
针对测绘成果数据,如果想做后续的数据使用、数据加工,那么数据合规的环节就必不可少。百度智能云提供的数据合规服务包含这么几块:
首先帮助我们的客户围绕数据的获取、加工、闭环、使用去设计一个合规的方案;
其次关于合规环境,离线的话可能是合规室,在线的话可能是合规云,再往后就是一些我们的合规托管监管运营;
最后就是涉及到测绘数据脱密脱敏的合规处理。这个环节对于企业来说,最难的部分往往是合规资质。这是一个很高的入门门槛,合规需要长期的业务积累的。百度智能云对此有很多经验和方法,包括百度自有的一些合规相关的处理技术。
合规方案概括起来分为两部分:从流程制度上去保证合规;
提供一站式的服务,包含编译室环境、数据处理以及数据应用在内的整个从数据来源到数据监管存储,再到后面的数据使用的一站式数据合规服务。
左下角这里举了一个例子。企业和我们合作的时候,如果想要更方便、更便捷地去使用这些数据,我们会提供贴身的合规环境、合规监管,去确保企业在合规的前提下能够更方便地去使用这些数据。
· 数据标注服务
讲完数据获取的来源以及合规之后,再跟大家探讨下关于数据标注的问题。
当获取了大量的道路数据,一辆采集车可能一天能够采集五六个小时的数据,那么这就对应着几百公里、大概几十万帧的数据。这些数据在变成算法模型能够去使用的样本数据前,离不开的一环就是数据标注服务。
企业想要一个自动驾驶的技术趋于成熟,需要的里程往往是几十万、上百万公里,这些数据需要去加工的样本级是非常巨大的。这个时候企业一般会有两种方式来实现:
自己建一个数据加工标注团队;
去找外面的外采服务、或找一些供应商、服务商去做这个事。
企业自建的时候往往会面临团队规模庞大,管理成本高,以及最终投入的成本太过巨大等问题。所以百度智能云将标注数据服务、标注项目管理,还有标注人力资源这三块组合起来去向企业提供贴身的对于数据做加工,生成样本级的服务。
对于一般的企业来说,将标注服务外包给外面的第三方做的时候会关注三个点:效率够不够高;
第三方公司做的质量能不能得到保证;
相关数据提供给第三方公司之后,数据本身够不够安全。
围绕这三个环节,百度智能云提供了如下的服务和保障:
首先针对数据标注的效率问题,百度智能云面向企业提供标注服务已经做了七八年。这个过程中,我们不断优化自己的工具和项目流程,确保能够更高效地完成数据的标注。但更核心的环节还是人,因为我们都知道并发量够不够大,人员规模够不够多,是解决效率问题的核心因素。因此百度智能云和各地的政府构建了很多标注基地,在标注基地内有上万个常驻的标注员,能够响应大规模并发数据的标注。
其次针对数据标注的质量问题,我们在标注过程中引入了很多的智能化工具。在标注前,我们会用算法先做一遍预标注,这样可以大大提高标注员单帧标注的效率;在标注过程中,我们引入了很多智能算法去帮助、辅助我们的标注员。比如说做区域分割的时候,会借鉴类似于 photoshop 的贴边的算法,帮助我们去画一个大致的边。我们可以用算法做更好的贴合,提升标注效率;而在标注之后,我们也引入了自动化的质检算法,去提升质检的效率,这也是比较核心的,是保障数据质量的一环。
除此之外,在保障质量的环节中,我们会引入对规则的深入理解。由于长期做标注服务,所以会经历很多客户的不同规则,我们在规则阶段去向客户提供更好的一些建议。其次我们会有多轮人工审核的质检,最后会引入自动化的一些算法,去提升质检效率。
最后针对数据标注的安全问题,百度智能云提供了多种安全保障机制,包括公有的、私有的标注平台,VPN、VDI 多种专线模式,以及在标注基地内引入的多种管理措施,包括对标注员的作业的环境、作业工具,安全培训等等。
通过层层的安全机制来保护企业提供的标注数据,百度智能云能够足够的安全、足够的有效地去防止数据泄露或者核心资产的流失。
· 数据管理运营服务
接下来的环节就是数据运营。当数据量级大到几十万帧、几百万帧、上千万帧的时候,数据在管理环节也会面临很多的挑战。百度智能云提供的数据管理运营主要包含如下三类:第一类是提供数据项目的运营管理服务。主要负责全流程项目管理,提供采集数据管理、数据集建设、数据标注对接等服务。
第二类是提供数据的挖掘服务。针对海量需要待标记的数据,我们提供了一系列的挖掘工具,能挖掘 19 个大类、70 多个小类。包含车道线、交通识别信号灯、以及不同的障碍物类别等等,帮助企业能够挖掘出更有效的数据,进而更精准的标注数据。一方面节约成本,另外一方面能够在标注前就对数据做好一些分类,提高标注效率。
第三类是提供数据质量的运营服务。我们引入了百度内部一些有效的智能算法,去帮助企业将已经标注完的样本集,再做更精一轮的质量筛选和质量验证。
· 模型训练服务
最后就是模型训练。这个部分今天主要分享的是企业在模型训练、或者模型调优环节,百度智能云能够从数据运营的角度去提供哪些服务支持。这块主要会分以下两种:
第一,我们会在模型训练的环节帮客户去构建数据集,因为我们知道什么样的数据对于模型训练更有效。所以我们会在前期帮助客户去规划哪些数据需要去做标注,标注什么样的类别,它的分布是什么样的。
第二,针对标注完的数据,百度智能云会根据已有的庞大评测样本集来帮助企业去评测它的模型,以及去发掘当前模型 bad case、或者存在的不足。这个时候我们会针对客户的不足,去补充足够的训练集,帮助企业去提升它的模型指标以及模型的调优。
· 仿真场景库建设服务
前面讲的其实更多的都是感知环节,同样在仿真环节我们也会提供仿真场景库的制作服务。前面我举例提到,我们一辆采集车一天采集大概几百公里的数据,这样一年下来可能会采几十万、甚至上百万公里的数据。我们将这些里程数据全部标注完成,再用于模型的训练和评估测试,成本会非常高。在模型训练完成后的整车测试验证环节,如果依然采用实车验证的话,投入的时间和资源成本更是难以计量。
这时,如果我们能够把历史采集的上百万公里数据,构建成仿真场景库里的一系列的仿真场景。这样,当一个新的模型训练完成之后,只需要在我们的场景库里面去跑一遍,也就相当于我们的模型有了百万公里的“经验”。所以中间场景库的转化工作就显得尤为重要。
因此,在我们数据运营服务里面提供了场景库的转化服务。针对客户的采集车每天采集的数据,我们首先会做数据场景的挖掘,中间包含我们的算法挖掘以及人工挖掘的过程。将这些数据挖掘出来之后,我们会通过我们 Log-to-World 转换工具,把它变成在仿真场景库里能够高精度使用的 opendrive 格式文件,帮助企业去做仿真测试。
3. 自动驾驶工具链平台
上面提到的大多是我们在做数据运营服务时能够提供的服务。同样在做运营服务的时候,我们也会使用到一系列的工具去支撑这样的服务。
下面这个环节我想跟大家分享的是百度智能云自动驾驶工具链,而这套工具链既是支撑我们去提供上面这些运营服务,同样也是企业后面想要自建相关能力的时候,也会去依赖的一些工具。
· 四大工具平台一览
这里主要会包含着我们的数据管理平台、标注平台、感知模型训练平台、以及仿真云平台。这是支撑我们上面一系列自动驾驶运营服务所依赖的四大工具平台。
首先我们来看一下这几个平台大概的业务流转过程。第一个就是数据管理环节,我们都知道无论是原始数据,还是我们标注完的数据,还是我们后面要用来做训练、做仿真、做评测的数据,它都需要做统一的统筹管理。这个时候数据管理中台就能够起到打通各个模块之间数据的作用,数据本身在管理中台里也会通过分层的方式来存储。
其次是标注平台,标注平台更多的是提供支撑标注的服务。百度智能云提供的智能标注平台会有两种模式,一种是公有云的模式,第二种是本地部署的模式,让企业可以在自己本地去部署一套标注平台来去保障数据的安全和可控。我们也会提供一些项目管理、以及智能化的辅助工具。
再往后就是训练评测平台,这个平台更多是针对模型的开发环节去提供模型的训练、对接底层资源调度、以及提供模型评测、模型管理相关的服务。
最后一个是仿真测试平台,这个平台主要会提供场景库、仿真测试,以及指标的评估服务。
· 数据管理平台
首先我们来看数据管理平台,数据管理中台我们在上面提到,它更多的是为了串联数据采集、数据标注、模型训练、模型评测、以及模型仿真这几个环节。
为了串联这么几个环节,我们需要数据平台在中间做流程的打通。因此数据管理平台会包含如下几个模块,首先就是原始数据的存储,其次就是针对原始数据到后面的数据所涉及到的数据挖掘、数据处理、数据标注等工具。这些能力我们会全部以工具的形式集成在数据管理平台里边,去帮助企业能够快速对数据做挖掘与后续的处理。
其次就是数据的可视化。我们都知道自动驾驶的场景数据不像传统的一些单帧的图像、或者是单帧的语音、图片、文本。自动驾驶的场景更多是一个集成的数据包。这个包里面可能既会有图像、又会有点云、还会有一些车端的数据、甚至还会有一些毫米波等其他特殊的数据格式,这个时候数据可视化就显得尤为重要。
最后将这些数据全部做统一的管理可视化之后,我们还需要以工作流的方式来快速的将数据以数据流的形式打通至各个子平台。主要会涉及到几个点:
第一是数据清洗。采集车每天面临的环境也是特别复杂的。所以我们会每天在将采集车的原始数据入库之前,首先会对数据进行清洗、筛选,去把里面一些噪点、或者是一些数据失真、内容丢失的部分做一轮过滤。
其次是数据处理,数据处理环节我们更多的是把这种原始的数据包的形式,处理成人工肉眼比较方便去可视的图像、点云,去做一个统一的结构可视化。
最后就是数据挖掘,我们会用算法去对原始的数据进行挖掘。一种是静态的这种场景,比如把图片里面的元素挖掘出来,比如车道线、交通信号灯,甚至看到了路边洒水车这种特殊障碍物。此外,我们还会去做一些仿真场景的挖掘,比如说闯红灯、交通并道、或者超车这样的行为,我们会挖掘这种具体的场景,方便后面去做场景库的转化。
· 智能标注平台
讲完数据管理平台,接下来我们来看一下智能标注平台。智能标注平台核心分为两个部分,一个是项目管理。在面向大规模的数据做后续的标注加工的时候,我们会引入项目组的管理人员、供应商的人员等,这个模块可以帮助我们对不同的角色、不同的环节去做高效的项目管理。
另外一个是标注工具管理。这个部分主要会包含 2D 标注工具、3D 标注工具,甚至一些我们在车辆的座舱、或者是其他环节会用到的一些语音标注、文本标注等。我们同样会引入 AI 预标注、AI 辅助标注、甚至 AI 质检,AI 数据管理等 AI 能力,这些能力我们会集成在标注平台内一并向企业提供。
· 感知训练平台
下面我大概介绍百度智能云的感知训练平台。
这个平台我们目前会支持多种建模方式以及开发框架,包括目前市面上主流的 TensorFlow、PyTorch、以及百度的 PaddlePaddle,这是我们都能够支持的一些开发框架。
同样我们在训练环节会有一些模型加速,以及模型终端部署的这样一个能力。可以参考公众号今年 1 月 5 日发布的文章。
· 感知评测平台
针对感知评测平台,百度智能云会将一直以来积累的项目经验、评测方法、评测指标集成在这样一个平台里面,帮助企业去评测它已有模型的一些 bad case。通过这种可视化的报告,去发掘企业当前模型的问题,同时帮助企业去针对性地补充数据,做一些模型的迭代。
· 仿真平台
我们的仿真平台包括顶层的云平台、中间的仿真引擎、底层分布式仿真测试模块,以及从原始数据到仿真场景的转化工具。这一部分内容公众号后续会发布详细的介绍文章,请大家关注。
以上就是我今天想跟大家做的一些分享,谢谢大家!
----------------END----------------
请关注微信公众号“百度智能云技术站”
版权声明: 本文为 InfoQ 作者【百度开发者中心】的原创文章。
原文链接:【http://xie.infoq.cn/article/b50b30bbb2193ef51dbfea4aa】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论