“看来新鲜事物还是得有个过程,真不是闹着玩的。”
山东车主祁先生所说的 “新鲜事物”,正是他的爱车——特斯拉 Model S 100D。
据大众报业 · 齐鲁壹点报道,5 月 25 日,山东高速交警接到报警,祁先生的特斯拉轿车,与路面提示牌发生碰撞。
他说当时正在使用自动驾驶辅助模式,面对前方障碍物,车辆并未做出提醒。事后联系售后客服,得到的答复却是:“即使开启自动驾驶(辅助)模式,驾驶员也要全神贯注,不能完全相信该模式。”
图 | 祁先生的特斯拉出现轻微事故
无独有偶,6 月 1 日,台湾一辆特斯拉 Model 3 撞向货车,给本已发生侧翻的货车带来二次事故,两辆车均受到不同程度损伤。
图 | 撞向货车的特斯拉
据当事特斯拉司机黄某回忆称,当时他正在使用自动驾驶辅助功能,时速 110 公里左右,当看到侧翻货车、并进行刹车时,已经无济于事。
图 | 撞向货车后的特斯拉
近年来,车主在使用该功能时,已经引发多起事故。2016 年,美国海军海豹突击队前队员乔舒亚 · 布朗(Joshua Brown)的 Model S,因使用该模式撞上一辆卡车,最终不幸丧生。
图 | 乔舒亚 · 布朗生前照片
让人唏嘘的是,出事之前他曾在 YouTube 发布过自动驾驶如何避免撞车的视频,该视频还被特斯拉 CEO 马斯克转发。他去世之后,特斯拉开始为汽车配备更多相机和传感器,以避免汽车存在盲区。
此前,为节省传感器成本,特斯拉的自动驾驶功能、甚至更高级别的全自动驾驶套件(FSD),都依赖同一套视觉方案——即以摄像头为主、毫米波雷达为辅的方案。由于成本原因,特斯拉并未启用成本高昂的激光雷达传感器。这导致其在障碍物识别上,不够令人满意。
当前,特斯拉在中国越来越受欢迎。据中国汽车流通协会汽车市场研究分会数据显示,2020 年二季度该公司在中国市场交付汽车辆数,占全球销量 30% 以上,中国也成为特斯拉继美国之外的第二大市场。
此外,其他汽车公司也开始提供自动驾驶辅助系统。但是,美国汽车协会(AAA)近日的一份新报告,再次证明了这些系统的局限性。他们测试了宝马、起亚和斯巴鲁的汽车,结果显示没有车辆能完全避免撞上假车。
图 | 在加利福尼亚州的 AAA 测试跑道上,一辆测试车与一辆假车相撞(来源:Ars Technica)
AAA 报告的合著者格雷格 · 布兰农(Greg Brannon)认为,这种系统的基本挑战是需要保持警觉性,因为虽然汽车可以长时间自动驾驶,但是人类很难长时间保持注意力。
而自动驾驶汽车只有更好地理解周围环境、更精确地识别障碍物,才能让大家放心地驾驶。在这之中,3D 深度学习扮演着重要角色。
在自动驾驶领域,3D 深度学习和激光雷达传感器密不可分。激光雷达传感器可以采集到大量室外 3D 点云,而高效理解这些点云数据是自动驾驶的基础。
目前,研究人员往往采用基于栅格化的方法和直接处理点云的方法,来进行 3D 物体的场景理解。
其中,基于栅格化的方法,在高分辨率下面临着巨量计算和访存开销;而直接处理点云的方法,则受限于不规则内存访问。故此,一直以来两种方法均不高效。
图 | 激光雷达传感器采集室外 3D 点云示意图
基于此,2019 年末,麻省理工学院(下称 MIT)联合上海交通大学发表论文《用于高效 3D 深度学习的 Point-Voxel CNN》(Point-Voxel CNN for Efficient 3D Deep Learning),并提出新型点云处理框架 PVCNN(Point-Voxel CNN),将前文所述的两种办法进行了结合。
据了解,PVCNN 可以快速高效地进行 3D 深度学习,与此同时还能避免稀疏性带来的巨大不规则内存访问。这篇论文最终被人工智能顶会 NeurIPS 2019 接收为 Spotlight 论文。
图 | PVCNN 和传统方法在 3D 物体部件分割任务上的对比
MIT 又有 3D 深度学习新成果
DeepTech 于近日联系到负责上述研究的韩松,他是 MIT 电气工程与计算机科学系的助理教授,也是 MIT 韩松实验室的负责人。近年来,其专注于研究深度学习计算,并于 2019 年上榜《麻省理工科技评论》全球 “35 岁以下科技创新 35 人”(TR35)榜单。
时隔不到一年,该实验室基于 2019 年的论文成果,又研究出新成果。
2020 年 8 月下旬,该实验室的新论文《搜索由稀疏点云 - 栅格卷积构成的高效 3D 架构》(Searching Efficient 3D Architectures with Sparse Point-Voxel Convolution),将发表在计算机视觉三大会议之一的 ECCV 2020。
该论文的两位共同第一作者,是 MIT 在读博士生唐昊天和刘志健。他们告诉DeepTech,此次研究主要涉及到四大概念:SPVConv、SPVCNN、3D-NAS 和 SPVNAS。
其中,由 SPVConv 构成的神经网络架构,被称为 SPVCNN;用来自动调整 SPVCNN 架构参数的神经网络框架叫 3D-NAS;用 3D-NAS 对 SPVCNN 模型进行优化后,可以得出 SPVNAS 模型。
两位第一作者告诉 DeepTech,本次研究是业界最早在 3D 计算机视觉领域,进行神经网络结构自动搜索的工作之一,并且在极具挑战的室外场景雷达点云语义分割任务上,完胜该领域此前的设计,在自动驾驶的权威评测榜单 SemanticKITTI 上,SPVNAS 位列单帧 3D 场景语义分割榜单榜首。
具体来说,SPVConv 是一个高效且轻量的 3D 模块,其克服了此前 PVConv 难以高效处理极大规模室外场景的痛点。
由 SPVConv 构成的 SPVCNN 大幅提升了此前该领域内最先进的稀疏卷积方法 MinkowskiNet 在识别小物体上的能力,与此同时整体准确率也得到明显提高。
本次研究还通过 3D-NAS,自动优化 SPVCNN 的网络结构,得到 SPVNAS 模型,从而大幅提高 SPVCNN 的计算效率以及在实际硬件上的延时。
基于 3D 点云技术的神经网络结构搜索
如何有效理解 3D 场景、并准确地驾驶,是自动驾驶汽车最需要实现的能力之一。由于传统的 CPU 和 GPU,只适合处理稠密计算,而 3D 点云又比较稀疏,故此一直以来 3D 点云识别技术,都难以高效部署在通用硬件上。
具体来说,之前的 3D 点云识别模型,往往要在高分辨率场景下进行大幅下采样。这通常是为了适应有限的计算资源,或者使模型获得足够大的感受野(Receptive Field)。
这种牺牲高分辨率的操作,固然可以提升模型效率,但往往会导致自动驾驶汽车无法识别小型实例,如行人或自行车等。
如下图左侧所示,小物体在低分辨率下仅有不到 10 个点,在这种分辨率下很难进行有效建模,因此会给自动驾驶汽车带来安全隐患。
图 | 小物体在低分辨率下仅有不到 10 个点
为解决这一痛点,韩松实验室提出由 SPVConv 构成的神经网络架构 SPVCNN,其可以在较低计算量下实现高准确率。
据悉,SPVConv 的设计灵感来源于人类驾驶员。人类驾驶员在驾驶汽车时,首先会关注到视野中的大物体,如路面、建筑等,但他们也会关注到小物体,如行人和非机动车等。
图 | SPVConv 示意图
基于此,SPVConv 利用稀疏卷积分支,来建模整体场景和大物体,并用一个专用化点云分支,来建模场景中的细节,这样就可以让自动驾驶汽车拥有 “像人类一样的眼睛”。
图 | SPVConv中的点云分支,可以将注意力集中在行人和非机动车
据了解,SPVConv 中的点云分支,采用完全稠密的矩阵相乘来做计算,CPU 和 GPU 处理起来非常友好。由于该分支分辨率可以无限放大,因此可以很精细地分割出小物体。
尽管可以取得很高的准确率,由 SPVConv 构成的、手动设计的 SPVCNN 在目前主流旗舰显卡 GTX1080Ti GPU 上,只能以大约 3FPS(画面每秒传输帧数)运行,这离雷达数据的 10FPS 采集频率相去甚远,根本无法满足自动驾驶的要求。
所以,该实验室沿用神经网络架构搜索的传统,提出 3D 神经网络结构搜索 3D-NAS,来自动优化 SPVCNN 网络的结构参数,所得的模型名为 SPVNAS。SPVNAS 可以在各种计算资源限制下,获得更优秀的识别准确率。
基于此,该实验室又用 3D-NAS 对 SPVCNN 模型进行优化,最终得出名为 SPVNAS 的模型,SPVNAS 可以在各种计算资源限制下,获得更优秀的识别准确率。
图 | 3D-NAS 可用于自动优化由 SPVConv 构成的 SPVCNN 模型
相比 MinkowskiNet,SPVNAS 的计算量和参数量,比前者降低近 8 倍;在 GTX 1080Ti 实测速度上,SPVNAS 的速度超出前者近 3 倍,达到接近雷达采集频率的9 FPS。
在分割相应物体准确度的标准 IoU(Intersection over Union)上,SPVNAS 在小物体上实现了最高达 25% 的 IoU 改进,并且其可以更好地分割马路边界。
图 | SPVNAS 和 MinkowskiNet 的对比 ①
图 | SPVNAS 和 MinkowskiNet 的对比 ②
韩松实验室告诉 DeepTech,本次研究的代码等细节,将会放在 MIT 的 网站上。而被 ECCV 2020 接收的论文已经可以在预印本平台 看到。
这项工作已获得麻省理工学院- IBM 沃森人工智能实验室、赛灵思、ON Semi、三星以及 AWS 的支持。该实验室也希望借助该研究,激励更多人研究高效深度学习,从而促进自动驾驶更快落地。