中星微夺冠国际人工智能算法竞赛,目标检测一步法精度速度双赢
新智元推荐
来源:Pascal2
【新智元导读】日前,中星微把实际安防项目经验应用到PASCAL VOC数据集,并成功在一步法(one-stage)算法中取得了第一名的好成绩。中星微人工智能芯片技术公司董事长兼总经理张韵东表示:“中星微首次将安防监控应用经验与国际算法竞赛数据集相结合,使得嵌入式前端设备也能达到与云端智能相媲美的效果,取得了可喜可贺的成绩,但这只是一个的开始,相信未来会带来更多更精彩的内容。”
目标检测是机器视觉中一个最重要和最早研究领域之一,也是一切机器视觉任务基础,因此在目标检测算法方面,国际巨头公司和科研机构纷纷进入这个领域,是兵家必争之地,竞争非常激烈,也是目前在实际场景应用最成功的领域,包括安防监控、自动驾驶等多个领域。
日前,中星微把实际安防项目经验应用到PASCAL VOC数据集,并成功在一步法(one-stage)算法中取得了第一名的好成绩,获得87.2% mAP精度,超越了大部分两步法(two-stage)的算法,也证明了一步法(one-stage)可以做到精度和速度双赢。
什么是目标检测?
目标检测就是判断给一副图像上是否存在感兴趣的物体,如果存在,就给出所有感兴趣物体的类别和位置(What and Where)。PASCAL VOC是由利兹大学、苏黎世联邦理工学院、爱丁堡大学、微软、牛津大学等组织的一个视觉识别竞赛,包含了物体分类、目标检测、图像分割等任务,对计算机视觉的发展具有深远而巨大的影响。其中,目标检测任务囊括了车、人、猫、狗等20类常见目标,训练样本较少、场景变化多端,非常具有挑战性。
图二
图三
两步法检测法和一步法检测法
目前主流的目标检测算法主要是基于深度学习模型,其可以分成两大类:
1)两步法(two-stage)检测算法,其将检测问题划分为两个阶段,首先产生候选区域(region proposals),然后对候选区域分类(一般还需要对位置精修),这类算法的典型代表是基于region proposal的R-CNN系算法,如R-CNN,Fast R-CNN,Faster R-CNN等;
2)一步法(one-stage)检测算法,其不需要region proposal阶段,直接产生物体的类别概率和位置坐标值,比较典型的算法如YOLO和SSD。目标检测模型的主要性能指标是检测准确度和速度,对于准确度,目标检测要考虑物体的定位准确性,而不单单是分类准确度。
一般情况下,两步法(two-stage)算法在准确度上有优势,而一步法(one-stage)算法在速度上有优势。但在工业界应用中,一定要考虑速度和精度的平衡,特别是前端智能应用中,受到计算资源的限制,一般都会选择一步法(one-stage)的算法,基础网络尽量选择轻量级的网络,比如MobileNet等。
中星微2016年6月成功研发了神经网络处理器NPU(Neural-network Processing Unit),此NPU集成到星光智能一号VC0758芯片中,成为中国首款嵌入式神经网络处理器SOC芯片,针对前端智能的应用,中星微一直致力于研发可部署到端上的轻量级深度学习算法。
经过几年的研发积累,把实际安防项目经验应用到PASCAL VOC数据集,并成功在一步法(one-stage)算法中取得了第一名的好成绩。中星微VIM_SSD网络,基于SSD深度学习目标检测算法的架构,融合多种机制和策略,并对网络进行了大量的优化。基础网络采用VGG16,并未使用ResNet-101, ResNet-152等更复杂的网络,保证精度的情况下速度更快;同时整个网络为全卷积网络,可以自如调节检测目标的分辨率和使用场景,更容易在实际系统中部署。
下表是目前PASCAL VOC竞赛前十名,可以看出,下面算法中大部分应用了更复杂的基础网络ResNet-101和ResNet-152,并使用了两步法。
图四
制约前端智能发展的限制条件
中星微人工智能芯片技术公司研发副总艾国表示:“最近几年,随着深度学习方法的复兴和快速发展,算法方面取得了巨大的进展和突破,但前端智能的发展较为落后,其主要原因受限于前端的计算资源,因此搭载轻量级深度神经网络是前端智能发展必由之路,中星微一直致力于研发能够和NPU紧密结合的轻量级深度神经网络,和可快速编译、移植和部署的嵌入式智能应用方案。”
机制和策略
VIM_SSD采用了如下主要的机制和策略:1)使用FPN,融合多层特征。2)使用inception结构,提供多种感受野。3)使用SE结构,增强有用特征,抑制无用特征。4)加入基于框的语义监督,增强提取到特征的语义信息。
图五
FPN是指将深层特征经过放大,融合到低层特征中,以增强低层特征的语义信息。我们在这个基础上,将融合后的特征做了一些处理,以使其适应检测任务。我们观察到网络的anchor box并不全是1:1的,还可以有1:2,1:3,2:1,3:1,但是已有网络的卷积核都是MxM。我们引入inception+SE结构,一方面在其中加入1x3,3x1的卷积核,使其能够更好地提取非正方形的特征,另一方面引入SE模块,让网络为每种长宽比的目标自动选择相应的特征。
语义分割方面,在很多文章中已经有证明,它对目标检测是有促进作用的。但是由于数据标注难度大,在实际项目部署过程中比较困难,所以我们采用基于框的语义信息,对网络语义特征提取进行监督。
VIM_SSD作者之一杨敏表示:“我们从2016年开始研究轻量级深度神经网络,并在多个实际项目中使用和部署,这次主要是想把项目积累的经验和方法在公开数据集上做一次尝试,也是对过去工作一次阶段性总结。”
中星微人工智能芯片技术公司董事长兼总经理张韵东表示:“中星微首次将安防监控应用经验与国际算法竞赛数据集相结合,使得嵌入式前端设备也能达到与云端智能相媲美的效果,取得了可喜可贺的成绩,但这只是一个的开始,相信未来会带来更多更精彩的内容。”
数据来源:
http://host.robots.ox.ac.uk:8080/leaderboard/displaylb.php?cls=mean&challengeid=11&compid=4&submid=17258
【加入社群】
新智元 AI 技术 + 产业社群招募中,欢迎对 AI 技术 + 产业落地感兴趣的同学,加小助手微信号: aiera2015_3 入群;通过审核后我们将邀请进群,加入社群后务必修改群备注(姓名 - 公司 - 职位;专业群审核较严,敬请谅解)。