阿里巴巴机器智能团队的三年工作总结
本文转自雷锋网,如需转载请至雷锋网官网申请授权。 从 2016 年至今,阿里巴巴机器智能实验室线下智能团队开始涉足线下智能领域。探索至今,算法方面,他们提出了自主研发的模型压缩方法,新型模型结构和目标检测框架;工程方面,他们研发出一套非数据依赖的量化训练工具,并且针对不同硬件平台,研发了高效推理计算库;同时,他们也和服务器研发团队一起抽象出了一套软硬件产品化方案,以服务多样的业务形式,并在真实业务场景中实验落地。 在今天这篇文章中,阿里翎翀将从算法探索、训练工具、推理框架、产品化和业务模式等方面对此前的工作做出总结和分享,正文如下,雷锋网(公众号:雷锋网) AI 科技评论获其授权转载。 算法探索
低比特量化是模型压缩( ModelCompression)和推理加速(Inference Acceleration)中一个核心的问题,目的是将神经网络中原有的浮点型参数量化成 1-8Bits 的定点参数,从而减小模型大小和计算资源消耗。为了解决这个问题,我们提出了基于 ADMM(Alternating Direction Method ofMultipliers)的低比特量化方案。在公开数据集 ImageNet 上,我们在 Alexnet,ResNet-18,Resnet-50 等经典 CNN 网络结构上做了实验,无论是精度上还是速度上均超过了目前已知的算法。我们可以在 3-bit 上面做到几乎无损压缩。目前该方法已经被广泛应用到各种端上目标检测和图像识别的实际项目中。相关成果已经在 AAAI 2018 上发表。
量化技术可以通过简化计算单元(浮点计算单元->定点计算单元)提升推理速度。稀疏化( Pruning ) 技术则是通过对神经网络中的通路进行裁剪来减少真实计算量。我们很自然的将这两个技术融合到了一起,来获取极限的理论加速比。在剪枝过程中,我们采用了渐进式的训练方法,并结合梯度信息决定网络中路径的重要程度。在 ResNet 结构上,我们可以做到 90% 稀疏度下的近似无损压缩。 在稀疏化研究过程中,我们发现了一个问题,更细粒度的裁剪往往会获得更高的精度,但是代价是牺牲了硬件友好性,很难在实际应用中获得理论加速比。在后面的章节中,我们会通过两个角度来解决这个问题:
通过量化和稀疏技术,我们可以获得一个理论计算量足够低,所需计算单元足够简单的深度网络模型。下一个要解决的问题就是我们如何将其转换成一个真实推理延时低的算法服务。为了挑战极限的推理加速效果,我们和服务器研发团队一起,从软硬件联合设计出发解决该问题。在该项目中,我们提出了以下几个创新点,其中包括:
通过上述方案,我们只需要 0.174ms 的 latency 就可以完成 resnet-18 复杂程度的模型推理,达到业内最佳水平。该方案在对 latency 敏感的领域具有极大的优势。相关成果已经在 HotChips 30 上展出。
软硬件协同设计是一个非常好的推理解决方案,但是改方案的开发成本和硬件成本都很高。某些特定的场景对于 latency 和 accuracy 的容忍度比较高(例如人脸抓拍)。为了解决这类需求,我们提出了一种多联合复用网络(Multi-Layer Feature Federation Network, MuffNet),该结构同时具有 3 个特点:
我们提出的新型网络由于每个单元的计算比较密集,并不存在过多的碎片操作,是非常适合在通用硬件上运行的。在公开数据集 ImageNet 上,我们在 40MFLops 计算量上相比目前业内最优的 shufflenet v2 结构,准确度提升了 2%。
相比图像识别类任务,目标检测类任务的适用场景更广泛。高效的目标检测框架具有很高的研究价值。针对端上场景,我们提出了一个 LRSSD 框架(light refine single short multiboxdetector),该框架包括以下几个特点:
|