有了深度学习神经网络,自动驾驶不是梦?
扫描二维码
随时随地手机看文章
先进辅助驾驶系统(ADAS)可满足汽车驾驶人及乘客对道路安全及出行体验的更高要求。 诸如车道偏离警告、自动剎车及停车辅助等系统,已广泛应用于当前的车型,甚至是功能更为强大的车道保持、塞车辅助及自适应巡航控制等系统的配套使用,也让全自动驾驶车辆逐渐成为现实。
目前很多ADAS系统是以机器视觉作为核心。 传统上,机器视觉是以信号处理技术来检测识别物体,但汽车制造业一直在寻求让响应速度更快、识别准确度更高的方法。 对于正热衷于进一步提高拓展 ADAS功能的汽车制造业而言,深度学习神经网络开辟了令人兴奋的研究途径。
以知名品牌为首的汽车制造业正在此技术上进行投资,并向高科技企业及学术界看齐。 在中国,百度一直在此技术上保持领先。 百度计划在2019年将全自动汽车投入商用,并加大全自动汽车的批量生产力度,使其在2021年可广泛投入使用。
神经网络轻量化 满足嵌入式应用需求
汽车制造业及技术领军者之间的密切合作是嵌入式系统神经网络发展的催化剂。 这类神经网络需要满足汽车应用环境对系统大小、成本及功耗的要求。
卷积式神经网络(CNN)的应用可分为三个阶段:训练、转化及执行。 要想获得一个高性价比、适合多种车辆使用的CNN,必须在每阶段使用最为有利的系统。
在训练阶段,目前业界大多是采用脱机的方式进行。 基于CPU的系统、图形处理器(GPU)或现场可编程门阵列(FPGA)具有强大的运算能力,且使用的是设计人员熟悉的开发环境,是用来训练CNN的最理想的系统平台。
在训练阶段,开发商利用诸如Caffe等框架,对CNN进行训练及优化。 参考图像数据库则用来确定神经网络的最佳权重。 训练结束后,开发商可采用传统方法,在CPU、GPU或FPGA上生成网络及原型,尤其是执行浮点运算,以确保最高的精确度。
对车载环境来说,使用CPU、GPU或FPGA来执行CNN有一些明显的缺点。 这种实作方法的运算效率还有改进空间,成本偏高也使其无法在大量量产的系统中使用。
CEVA已经推出了另一种解决方案。 这种解决方案可降低浮点运算的工作负荷,并在汽车应用可接受的功耗水平上实现实时处理。 全自动驾驶对于运算性能有非常严格的要求,开发商必须想出一套能改善某些关键功能的策略,才能让CNN在汽车领域被广泛运用。
CEVA提出的策略是利用被称为CDNN的框架,对现有的网络生成策略进行改进。 透过CDNN框架,在高功耗浮点计算平台(利用诸如Caffe的传统网络生成器)上开发的受训网络结构和权重,可以被转化为基于定点运算,结构紧凑的订制网络模型。
经过这层转换后的网络模型,可以在经过优化的成像和视觉DSP芯片上运行。 由于功耗需求大幅降低,使得CNN网络模型可以应用在嵌入式平台上。 图1是轻量化嵌入式神经网络的生成过程。 与原本的CNN相比,这种技术可将高性能神经网络移植到功率预算较低的车用环境,而且图像识别的精确度降低不到1%。
图1 CDNN将通过传统方法生成的网络权重转化为一个定点网络。
一个由低功耗嵌入式平台运行,输入大小为224×224、卷积过滤器分别为11×11、5×5及3×3的24层卷积神经网络,其性能表现几乎是一个在典型的GPU/CPU综合处理引擎上运行的类似CNN的三倍,但其所需的内存带宽只是后者的五分之一,且功耗大幅降低。
次世代深度学习神经网络百家争鸣
汽车制造业进入神经网络领域所习得的经验不断推动技术的发展,并因此开发出了更先进的网络架构及更复杂的拓扑,如每级多层拓扑、多入/多出及全卷积网络。 新推出的重要网络类型不仅可用来识别物体,也可用来识别场景,从而支持汽车应用(如自动驾驶功能)所需的图像分割。
技术公司是这些新一代网络和架构发展的核心。 CNN网络生成器功能的改良,也为新的网络架构和拓扑提供必要的支持,如SegNet及GoogLeNet与ResNet等其它网络结构以及高级网络层(图2)。 此外,一键启用也让预训网络转换成优化的实时网络执行更为便捷。 为确保能支持常用的网络生成器,CDNN框架与Caffe和TensorFlow(Google的机器学习软件库)都有合作。
图2 网络生成器的发展为新网络层及更深的架构提供了支持。
由于最新推出的嵌入式处理平台在可扩展性及灵活性上都有了很大改进,因此嵌入式CNN也可以从处理平台的进步中同步进化。 由于深度学习领域的发展越来越多样化,因此开发者必须采用一个极为灵活的架构来发展CNN,不仅要满足当今处理需求,也必须具备因应未来演变的能力。
神经网络即将进驻量产车款 视觉处理为首波应用
第一批神经网络应用将专注于视觉处理,以支持诸如自动行人、交通信号或道路特征识别等功能。 由于这些系统的性能不断改进,例如处理越来越大的来自高分辨率相机的数据集,因此神经网络也有望在未来的汽车中发挥更大的作用。 这些作用将包括承担系统中其它复杂的信号处理任务,例如雷达模块及语音识别系统。
某些车厂将在201∼2020年款的新车中搭载使用神经网络的自动驾驶系统,未来车厂对同时兼具安全性及可靠性的系统需求会越来越大。 中国政府计划在2021∼2025年推出自动驾驶车辆。 要让此类系统具备可让客户使用的条件,汽车制造商必须同时确保其符合相关的安全标准,如ISO 26262功能安全性。 这需要硬件、软件及系统的综合发展。
由于这些系统变得越来越复杂,因此确保系统可靠安全且能满足处理需求也成为汽车制造商所面临的越来越大的挑战。
机器学习神经网络将沿一条挑战高效处理性能的发展道路继续阔步前进。 先进的神经网络架构已经显现出优于人类的识别精确性。 用于生成网络的最新框架,如 CDNN2,正在推动轻量化、低功耗嵌入式神经网络的发展。 这种神经网络将使先进辅助驾驶系统具有较高的精确性与实时处理能力。
深度学习神经网络在量产车辆上的首次使用将限于基本的视觉识别系统,但最终会在未来为自动化程度越来越高的车辆提供支持,帮助其应对众多的复杂信号处理挑战。