首次披露!阿里线下智能方案进化史

本文涉及的产品
数据安全中心,免费版
简介: AI 技术已经从互联网走向零售、汽车、银行等传统行业。受限于延时、成本、安全等多方面的限制,单一的云解决方案往往不能满足场景需求。

阿里妹导读:AI 技术已经从互联网走向零售、汽车、银行等传统行业。受限于延时、成本、安全等多方面的限制,单一的云解决方案往往不能满足场景需求。线下智能方案逐步成为了智能化过程中重要的一环,今天,我们就一起来了解这一环,希望这些内容可以让同学了解线下智能的前景和其中待解决的技术点。

前言

阿里巴巴机器智能实验室线下智能团队从16年底开始涉及线下智能领域,从算法、工程、产品化、业务落地多个方面入手,与合作伙伴们一起取得了一些小小的成绩。算法方面,我们提出了自主研发的模型压缩方法,新型模型结构和目标检测框架;工程方面,我们研发出一套非数据依赖的量化训练工具,并且针对不同硬件平台,研发了高效推理计算库;同时我们也和服务器研发团队一起抽象出了一套软硬件产品化方案,以服务多样的业务形式,并在真实业务场景中实验落地。

在后面的篇幅中,我们主要会从算法探索、训练工具、推理框架、产品化和业务模式等方面对之前的工作做一个总结和分享。

算法探索

基于 ADMM 的低比特量化

低比特量化是模型压缩( ModelCompression )和推理加速( Inference Acceleration )中一个核心的问题,目的是将神经网络中原有的浮点型参数量化成 1-8Bits 的定点参数,从而减小模型大小和计算资源消耗。为了解决这个问题,我们提出了基于 ADMM(Alternating Direction Method ofMultipliers)的低比特量化方案。在公开数据集 ImageNet 上,我们在 Alexnet,ResNet-18,Resnet-50 等经典 CNN 网络结构上做了实验,无论是精度上还是速度上均超过了目前已知的算法。我们可以在 3-bit 上面做到几乎无损压缩。目前该方法已经被广泛应用到各种端上目标检测和图像识别的实际项目中。相关成果已经在 AAAI 2018 上发表。

image


image


image

统一量化稀疏框架

量化技术可以通过简化计算单元(浮点计算单元->定点计算单元)提升推理速度。 稀疏化( Pruning ) 技术则是通过对神经网络中的通路进行裁剪来减少真实计算量。我们很自然的将这两个技术融合到了一起,来获取极限的理论加速比。在剪枝过程中,我们采用了渐进式的训练方法,并结合梯度信息决定网络中路径的重要程度。在 ResNet 结构上,我们可以做到90%稀疏度下的近似无损压缩。

image


image


image


image

在稀疏化研究过程中,我们发现了一个问题,更细粒度的裁剪往往会获得更高的精度,但是代价是牺牲了硬件友好性,很难在实际应用中获得理论加速比。在后面的章节中,我们会通过两个角度来解决这个问题:

  • 软硬件协同设计,从软硬件角度同时出发解决问题;
  • 新型轻量级网络,从软件角度设计适合更适合现有硬件的结构。

软硬件协同网络结构

通过量化和稀疏技术,我们可以获得一个理论计算量足够低,所需计算单元足够简单的深度网络模型。下一个要解决的问题就是我们如何将其转换成一个真实推理延时低的算法服务。为了挑战极限的推理加速效果,我们和服务器研发团队一起,从软硬件联合设计出发解决该问题。在该项目中,我们提出了以下几个创新点,其中包括:

  • 软硬件协同设计方面,我们针对硬件物理特性提出了异构并行分支结构,最大化并行效率。
  • 算法方面,我们利用量化、稀疏、知识蒸馏等技术,将理论计算量压缩到原始模型的18%。
  • 硬件方面,我们通过算子填充技术解决稀疏计算带来的带宽问题,利用算子重排技术平衡PE负载。

通过上述方案,我们只需要 0.174ms 的 latency 就可以完成 resnet-18 复杂程度的模型推理,达到业内最佳水平。该方案在对 latency 敏感的领域具有极大的优势。相关成果已经在 HotChips 30 上展出。

image


image


image


image

新型轻量级网络

软硬件协同设计是一个非常好的推理解决方案,但是改方案的开发成本和硬件成本都很高。某些特定的场景对于 latency 和 accuracy 的容忍度比较高(例如人脸抓拍)。为了解决这类需求,我们提出了一种多联合复用网络 (Multi-Layer Feature Federation Network, MuffNet) ,该结构同时具有3个特点:

  • 稀疏的拓扑结构,同时更容易获取高频响应;
  • 密集的计算节点,保证硬件友好性;
  • 针对低成本硬件充分优化,小计算量下精度提升更明显;

我们提出的新型网络由于每个单元的计算比较密集,并不存在过多的碎片操作,是非常适合在通用硬件上运行的。在公开数据集 ImageNet 上,我们在 40MFLops 计算量上相比目前业内最优的 shufflenetv2 结构,准确度绝对提升了2%。

image


image


image


image

端上目标检测框架

相比图像识别类任务,目标检测类任务的适用场景更广泛。高效的目标检测框架具有很高的研究价值。针对端上场景,我们提出了一个 LRSSD 框架( light refine single short multiboxdetector ), 该框架包括以下几个特点:

  • 简化 SSD HEAD,采用共享预测层 设计特征融合模块;
  • 融合不同尺度下信息 级联形式的 bbox 回归;
  • 对检测模型做全量化处理。

image


image


image

如上表所示,相同 backbone 网络的情况下,我们提出的 LRSSD 在减少 SSD HEAD 计算量的同时,mAP 可以稳定提升3%-4% 。从另一个角度来看,在保证检测精度不变的情况下,我们的方法可以将模型复杂度减少到原来的50%左右。如果再考虑到量化带来的速度加成,在相同精度下,相比原有全精度模型,我们可以获得总共约2-3倍的真实速度提升。

小结

上文给出了我们近2年内在线下智能—模型压缩领域所做的一些技术积累。归纳起来如下:

  • 量化方面:我们可以做到 3-bit 量化几乎无损压缩!
  • 稀疏方面:对于传统网络结构,我们可以做到90%稀疏度下的几乎无损压缩!
  • 软硬件协同设计方面:我们联合服务器研发团队,达到0.174ms/张的resnet18 极限推理速度,目前已知业内最佳效果!
  • 轻量级网络设计方面:我们在 40MFlops 计算量下,相对目前业内最好结构,在 ImageNet 数据集上绝对提升2%!
  • 端上目标检测方面,我们在保证精度不变的情况下,速度提升约2-3倍!

在技术探索的同时,我们也在积极的将上述技术应用到实际的业务中。在这一过程中我们发现了下列几个问题:

  • 易用性: 业务场景往往需要快速的迭代能力和灵活方便的部署能力,因此非标准化的方案很难被广泛应用。
  • 理论速度 vs 真实速度: 除了算法和硬件以外,真实的模型推理速度是需要一个高效的工程实现作为支撑的。
  • 集成化 :线下智能需要同时考验团队在硬件和软件方面两方面的实力,这对业务而言往往太过沉重。

在本文后半部分,我们首先会针对上述的几个问题介绍我们已经做过的尝试和沉淀出的解决方案。最后,我们列出了一些实例,展示如何在具体的业务场景中应用线下智能技术,希望可以给各位同学一个更直观的认识。

训练工具

在实际业务推广过程中,我们遇到的第一个问题是易用性问题:

  • 不同业务往往使用的深度学习库多种多样,例如 Caffe, Tensorflow, Mxnet 等等;
  • 不同业务使用的基础技术差异比较大,有分类识别、检测、分割、语音等等;
  • 不同业务的数据安全级别差异比较大,有些可以公开,有些则需要完全物理隔离;

为了让更多的场景都可以用上我们的服务,获得 AI 的红利,我们提出了一套标准化的量化训练工具。

image

如上图所示,首先,我们的工具输入支持多种模型格式( TensorFlow,Caffe,Mxnet 等)。其次,我们提供了两种不同的模型量化方法,一种是支持不同任务(分类,检测,分割等)的数据依赖型压缩方法( Data Dependent Compression ) , 适用于对数据安全要求不是很高,希望追求精度最大化的业务;另一种是数据非依赖压缩方法( Data Independent Compression ),适用于对数据安全要求高,或者业务逻辑不是特别复杂的场景。

最后,在量化工作完成后,我们的工具会自动完成推理图的优化和模型加密,生成可以实际部署的模型文件。配合对应的推理加速库即可在端上运行。从易用性和数据安全性角度出发,我们推荐使用数据非依赖性的压缩方法。

目前,该套工具作为MNN推荐的量化工具广泛应用在阿里集团内多个线下业务场景中。

推理框架

实际中遇到的第二个问题就是真实推理速度问题,毕竟光有易用性是不够的,实打实的业务效果才是业务最想要的。这里我们使用阿里集团其他的兄弟团队提供的推理框架:

  • ARM 架构: 我们采用淘系技术团队研发的 MNN 作为推理框架;
  • GPU 架构: 我们采用机器智能技术团队研发的 falcon_conv 卷积库作为推理框架;
  • FPGA 架构:我们采用服务器研发团队研发的推理框架。

MNN

MNN 是一个轻量级的深度学习端侧推理引擎,核心解决深度神经网络模型在端侧推理运行问题,涵盖深度神经网络模型的优化、转换和推理。目前,MNN已经在手淘、手猫、优酷、聚划算、UC、飞猪、千牛等 20 多个 App 中使用。选用常见的深度神经网络模型 MobileNet V2 和 SqueezeNet V1.1 作为测试样本:Android 方面,以小米6为例,MNN 在 CPU 和 GPU 上领先业界至少30%;iOS 方面,以iPhone 7为例,MNN 在 CPU 和 GPU 上领先业界至少15%。

image

FPGA

FPGA 上的推理框架由服务器研发团队完成。ResNet18 网络的推理时间只需要0.174ms,目前已知业内最佳性能。在边缘计算产品 alibabaedge 上,基于硬件实现的高效算子,推理速度为边缘 GPU 的两倍。在后面,我们会结合产品形态整体的介绍这一方案。

GPU

falcon_conv 是机器智能技术团队开发的一款由 CUDA C++编写,在 Nvidia GPU 上运行的低精度卷积库,它接受2份低精度( INT8 )张量作为输入,将卷积结果以float/int32 数据输出,同时支持卷积后一些常规操作( scale,batchnorm,relu… )的合并。我们在单张 Tesla P4 GPU 上,对 falcon_conv 的性能与 Nvidia 官方计算库Cudnn v7.1 做了比较,如图所示。几乎所有情况 falcon_conv 都优于 Cudnn ,个别用例有高至5倍的提升,用例选自 RESNET 和 VGG 中耗时较多的卷积参数。

image

image

产品化

在业务支持过程中我们遇到的第三个问题是集成化,产品化问题。除了手机类场景外,其他线下业务均需要额外的硬件平台作为支撑。在早先时候,我们更多的是依赖第三方提供的硬件设备,这时候成本,稳定性,可扩展性 成为制约线下项目拓展的几个主要问题。为了解决这些问题,我们根据以往的项目经验,对硬件设备进行归纳,沉淀出两类比较通用的线下产品化方案:智能盒子和一体化相机。每类产品均包含不同型号,以适应不同需求的场景。

image

智能盒子

我们提供的第一个方案为智能盒子方案。我们可以简单的把智能盒子当作一个适合于中小型场景的边缘服务器。盒子本身提供了多种接口,可以外接 usb/ip 相机,语音模块等传感器。直接本地部署,数据安全性高。我们针对业务特点提供了高低两个版本的智能盒子。其中,高端版本采用阿里巴巴自研的边缘计算产品 Alibaba Edge 。除了完善的硬件设计和高效的推理框架,该盒子还包含完善的编译器支持,具有非常好的易用性。 低端版本则为纯 ARM 的盒子。下面表格给出这两种盒子在性能,成本和适用场景的一个对比。

image

在这里我们着重介绍一下阿里巴巴自研的边缘计算产品 Alibaba Edge,该产品除了具有高达 3TGFlops 的AI计算能力外,相对边缘 GPU 方案有大幅的价格优势,同时具有云端一体化部署功能,产品平台化,可快速上线,支持大规模运维。

image

image

image

在下面的表格中,我们对比了 LRSSD300+MobileNetV2 的不同硬件设备上的运行时间,希望可以给大家一个更直观的认识。

image

一体化相机

我们提供的另一个集成方案为一体化相机。一体化相机特别适合云+端的部署模式:线下做相对比较简单的处理功能,云端则深度处理线下传回的信息。达到节约带宽,降低云成本的作用。同时,一体化相机具有方便部署,批量化生产后成本优势高的特点。目前一体化相机已经作为一个重要的载体形式被应用到我们所承接的对集团外合作项目中。

image

业务合作

在过去的2年间,我们尝试过多种不同的业务模式。在这里我们会列出主要几个不同形式的实例。

菜鸟未来园区

在菜鸟未来园区项目中,我们主要负责基础视觉类算法的输出,由菜鸟智慧园区团队同学负责业务算法和工程服务研发工作。经过半年的共同努力,我们先后完成了离岗睡岗检测,消防通道异常检测,车位占用检测,行人越界检测,入口计数检测等多个功能。

image


image

在项目合作的过程中,我们发现计算单元成本高是制约算法大范围推广的一个主要原因。为了解决这个问题,我们联合了服务器研发团队,开发出一版定制化软硬件解决方案:该方案的硬件平台为我们在上文中提到的边缘计算产品 Alibaba Edge,同时配备特别定制的高效模型结构和自研的快速检测算法。新版方案在检测精度几乎无损的情况下,推理速度提升了4-5倍,成本相比边缘 GPU 方案下降了1/2。

模型压缩加速

我们协助阿里集团不同业务同学完成对已有算法模型的量化瘦身与加速工作。例如:手机端 OCR 识别、手机端物体检测、手淘实人认证和刷脸登录/验证、菜鸟自提柜、阿里体育赛事刷脸入场、神州鹰人脸识别云相册等。

总结与展望

经过近两年的努力,机器智能技术实验室线下智能团队深耕线下智能领域。算法方面:我们在低比特量化、稀疏化、软硬件协同设计、轻量级网络设计、端上目标检测等多个方面取得了一定的积累,多项指标达到了业内最佳水平。工程方面:我们积累出了一套 高灵活性,高数据安全性 的训练工具 ; 并在合伙伙伴的帮助下,在ARM,FPGA,GPU 等多个平台下达到了业内最佳的推理性能。产品化方面:我们与合作伙伴一起,研发出适合于不同业务场景的智能盒子与一体化相机。最后,我们很幸运可以在集团内外多个不同形式的业务场景内打磨我们的技术。

原文发布时间为:2019-05-21
本文作者: 翎翀
本文来自云栖社区合作伙伴“ 阿里技术”,了解相关信息可以关注“阿里技术”。

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
6月前
|
安全 算法 大数据
报名进行中|阿里数纳斯·2024企业内外数据流通交流会——数纳斯跨域商业增长引擎全新发布
随着大数据时代的到来,企业内部以及企业之间的数据流通已成为企业运营和发展的重要支撑。然而,对于集团型企业而言,数据内外流通面临着独特的挑战和困难。为解决这些问题,阿里巴巴数据技术及产品部将于2024年1月10日举办数纳斯 | 2024企业内外数据流通交流会,聚焦集团型企业数据流通难题,共话数据流通解决方案。
2022阿里云技术年报:基础产品篇
2022 年,阿里云基础产品通过了一系列权威评估和奖项认证,进行了 CIPU 重大架构升级,发布了一系列创新产品,并始终走在开源贡献的前列,为创造客户价值而奋勇向前。
2022阿里云技术年报:基础产品篇
|
安全 API 开发工具
深度分析国内APP推广渠道和方法
深度分析国内APP推广渠道和方法
294 0
深度分析国内APP推广渠道和方法
|
机器学习/深度学习 人工智能 算法
一场世界杯集中报道,看信息流内容差异化如何升级
7月15日,全民为之狂欢了一个月的世界杯终于落下了帷幕。
一场世界杯集中报道,看信息流内容差异化如何升级
|
新零售 小程序 开发者
友盟+《小程序用户增长白皮书》:线下或是小程序重要的增长点
友盟+近日发布了《小程序用户增长白皮书》,白皮书总结了友盟+在小程序统计分析和精细化运营方面的方法论、解决方案和成功案例,以下为白皮书的部分内容: 移动互联网已经进入存量市场,移动设备数、用户数、用户时长都处于存量市场竞争。2020年新应用上线做到腰部以上活跃度的难度已经非常大,用户整体呈下降态势。
友盟+《小程序用户增长白皮书》:线下或是小程序重要的增长点
|
机器学习/深度学习 监控 前端开发
阿大:“我们将在 D2 首次对外披露阿里前端在安全生产建设上的思考和成果”
如果你的前端团队已经具备一定规模,并且正在高质量研发和高效业务迭代之间矛盾苦恼,那么我相信在这个安全生产专题一定能让你有所收获。
阿大:“我们将在 D2 首次对外披露阿里前端在安全生产建设上的思考和成果”
|
程序员
【CodeLab 科技创新营】首次线上直播!独家揭秘支付宝技术人才选择标准
【CodeLab 科技创新营】首次线上直播!独家揭秘支付宝技术人才选择标准
【CodeLab 科技创新营】首次线上直播!独家揭秘支付宝技术人才选择标准
|
机器学习/深度学习 安全 双11
“刺激的”2017双11 阿里安全工程师首度揭秘智能风控平台MTEE3
“太刺激了,太刺激了!如果那个48%真出问题,整个安全部的双11就可能是3.25!”
6357 0
|
机器学习/深度学习 前端开发 安全
【云周刊】第140期:阿里人打车不给钱?内部自研神器“欢行”首次曝光
阿里人打车不给钱?内部自研神器“欢行”首次曝光,无处可藏:人脸识别时代生活报告,机器学习的入门“秘籍” ,【云吞铺子】使用访问控制,保护你的云上资产...更多精彩技术资讯,尽在云周刊!
8057 0
下一篇
无影云桌面