嵌入式AI 双周简报 (2017-09-19)
业界新闻
- 苹果A11芯片深度解析:CPU+GPU+AI火力全开 | Techweb
简评:苹果A11仿生芯片内部的CPU、GPU、性能控制器、神经网络单元、ISP等这些都是苹果自己设计。那么,关于苹果这枚“智能过人”的 A11 芯片,其亮点有哪些?对未来的重要影响又在哪里呢? - 详解苹果Face ID,将让深度摄像头成主流 | 雷锋网
简评:都在说苹果iPhone X的刘海设计丑到爆,但就在这一小块区域集成了多达八个组件,Touch ID的消失,迎来的新的身份认证方式:Face ID。 - 英特尔推出Myriad™ X芯片:将人工智能引入边缘计算 | 机器之心
简评:英特尔收购了人工智能和计算机视觉芯片制造商 Movidius 这家初创公司(大华,大疆也都在用他家芯片)距今已有近一年的时间,收购完成后,该公司已经将其Myriad2处理器塞进了无人机、相机和u盘。今天,推出的 Myriad™ X 是全球第一个配备专用神经网络计算引擎的片上系统芯片,能够以惊人的低功耗和高性能将人工智能引入边缘计算。 - 百度云智峰会发布XPU和ABC一体机,深度对话张亚勤尹世明 | 新智元
简评:“ABC 三位一体”成为本次峰会的关键词。百度云认为云计算正在从量变走向质变,ABC(AI、BigData、Cloud Computing)融合成为行业主流。会上百度云做了如下发布:XPU(云计算加速芯片);ABC 一体机、ABC-STACK(技术栈)、FPGA/GPU云服务器等代表ABC技术融合的新产品和服务框架。同时,百度云正式推出了“ABCInspire”技术标识。 - AI芯片争夺战:谷歌TPU率队,颠覆3350亿美元的半导体行业 | 新智元
简评:人工智能系统的加速正在从根本上重塑着每年创造了3350亿美元的半导体行业。计算机开始认识一切,从花草到人脸,从文本到声音,以及学会开车。统治了计算机行业近半个世纪的摩尔定律正在受到挑战,计算性能的提升不再依赖于晶体管数量的增长,还有专用负载芯片产业的蓬勃。英特尔面临着英伟达、微软、苹果、谷歌等巨头以及CEVA、Eyeriss、寒武纪、华为等 AI 芯片新玩家不同方向的围攻。
论文
- [1709.02043] The Mating Rituals of Deep Neural Networks: Learning Compact Feature Representations through Sexual Evolutionary Synthesis
简评:进化深度智能是近来提出的一种继承多代从而获取更高效模型架构的一种方法。受自然界启发,作者提出一种进化综合的合成策略,不是网络间的无性合成,而是通过结合两个双亲网络,合成更多样、概括性地子孙网络,从而产生更加紧凑的特征表达。 - [1709.01041] Domain-adaptive deep network compression
简评:在大数据集上训练,小数据数据集上fine-tuning是有好处的。然而,fine-tuning后的模型对新领域的小数据集而言,这个模型太大了!作者的工作就是压缩迁移学习后的大模型。作者关注基于低秩矩阵分解的压缩算法。现有的方法大都关注网络权重,忽略了网络激活值的统计特性。作者发现迁移学习后,网络激活值有大的漂移,压缩时有必要将其作为一项考量,将权重压缩视为一个秩约束回归问题(解析解)来压缩权重。作者提出的方法(Domain Adaptive Low Rank)将目标数据集领域纳入考虑,可以更优地移除权重中的冗余。VGG19的fc6层相比单纯使用截断SVD达到超过4倍的压缩,在忽略不计的准确率损失下,整体参数达到5~20%的压缩。 - [1709.01427] Stochastic Gradient Descent: Going As Fast As Possible But Not Faster
简评:本文关注学习率的调整对网络训练的加速。传统使用随机梯度下降都会有梯度平稳下降的阶段,但该过程可能会被梯度爆炸打断。一种解决方案是逐渐减缓学习率。作者基于两个统计测试来控制SGD学习率,第一个旨在快速学习的方法将归一化梯度向量的动量与随机单位向量的动量进行比较,从而适度地增加或减少学习率;第二个是改变点检测测试,旨在检测灾难性学习情况,触发则将学习率即刻减半。加速和减慢学习速度的两个能力使得所提出的方法(称为SALeRA)尽可能快地学习,但不会更快。 - [1709.02755] Training RNNs as Fast as CNNs
简评:由于RNN的复杂特性导致其难以并行化。例如,h_(t)的前向计算依赖h_(t-1)前的所有计算,这是并行化该问题的主要瓶颈。作者提出了一种替代RNN的实现,故意简化状态计算并展现更多的并行性。提出的复现单元的运行速度与卷积层一样快,比cuDNN优化的LSTM快5-10倍。作者展示了该方法在包括分类,问答,语言建模,翻译和语音识别应用中的有效性,此外给出PyTorch和CNTK的开源实现! - [1709.02260] Embedded Binarized Neural Networks [code]
简评:嵌入式设备上的内存资源很有限,作者研究在嵌入式设备上二值化神经网络(BNN)推理过程中的内存占用最小化,除了存储网络权重外,还需要存储网络在前向计算过程中的结果,作者在保留原始BNN结构的同时,对推理计算重新排序,对整个网络只实用一个临时的单精度浮点数。所有来自一层的中间结果都保存为二值形式,所需内存占用相比使用浮点仅为其32分之1,在有限内存(10sKB)的设备上推理低于50ms。代码开源! - [1709.01921] Distributed Deep Neural Networks over the Cloud, the Edge and End Devices
简评:作者在分布式计算层次上提出分布式深层神经网络(DDNN),结合云,边缘终端设备的计算。在云中进行网络推理的同时,DDNN还允许使用边缘终端设备对神经网络较浅的部分进行快速局部推理。当由可扩展的分布式计算层次结构支持时,DDNN可以在神经网络的规模和范围上进行扩展。由于其分布式特性,DDNN也具有传感器融合,系统容错和数据隐私的特效。在实现DDNN时,将DNN的部分映射到分布式计算层次结构。通过联合训练这些部分,减少设备通信和资源使用。最终系统具有内置的自动传感器融合和容错支持,利用传感器的地理多样性来提高对象识别精度并降低通信成本。实验中,与传统的云端处理传感器原始数据的方法相比,DDNN在本地终端上处理大多数传感器数据的同时实现高精度,并能将通信成本降低20倍以上。 - [1609.09671] Caffeinated FPGAs: FPGA Framework For Convolutional Neural Networks
简评:不少框架都支持CPU和GPU但不支持FPGA,这项工作中作者将Caffe修改为支持FPGA的版本,可利用CNN模型在FPGA上实现图像分类,基于FPGA的特性必要时也可以对其重新编程,此外还有主机与设备之间无缝的内存事务(memory transactions)、易用的测试例子、创建流水线层的能力。验证过程中,作者在Xilinx SDAccel上实现了一个FPGA版本的Winograd卷积,FPGA层可以与主机处理器的其它层一起运行,并成功运行了AlexNet、GoogleNet、VGG等网络。在3x3卷积的基准性能可以达到50GFLOPS。 - [1709.04060] Streamlined Deployment for Quantized Neural Networks
简评:作者提出使用量化神经网络(QNN)满足内存和速度需求。但大多数指令集架构(ISA)不支持对高度量化的数据类型进行操作,作者将该过程简化,并将所有QNN推理操作转化为整数。之后,作者提供基于一次处理一位位置(位序列)的技术,以显示如何使用常规的按位操作来部署QNN。在移动端CPU上跑量化过后的AlexNet比的8位优化的基准快3.5倍。 - [1709.04731] Binary-decomposed DCNN for accelerating computation and compressing model without retraining
简评:深度卷积神经网络(DCNN)推理需要大量的内存来保存模型参数和中间计算结果,所以为了要让网络能泡在移动端设备上,必须压缩模型内存占用和加速计算。作者提出二进制分解DCNN(Binary-decomposed DCNN),而且无需对网络进行重新训练。二进制计算可使用XOR、AND等逻辑运算符快速实现。在AlexNet跑ImageNet分类中,速度提高1.79倍,模型压缩达80%,准确率降低1.20%。而使用VGG-16,速度提高2.07倍,模型压缩达81%,误差增加2.16%。
开源项目
- dlib C++ Library Release notes | dlib.net [demo]
简评:新版dlib发布:深度学习多类别检测器,帧数可达到98fps,又增加相比68点人脸检测模型小10倍的5点人脸模型,速度更快等。 - Introduction to the Numba library | kratzert [译文]
简评:在计算能力为王的时代,具有高性能计算的库正在被广泛大家应用于处理大数据。例如:Numpy,本文介绍了一个新的Python库——Numba, 在计算性能方面,它比Numpy表现的更好。 - europilot: A toolkit for controlling Euro Truck Simulator 2 with python to develop self-driving algorithms.
简评:Euro Truck Simulator 2自驾模拟开发环境工具集。
博文
- 内存带宽与计算能力,谁才是决定深度学习执行性能的关键? | 机器之心
简评:随着深度学习的不断发展,计算能力得到了深度学习社区越来越多的注意。任何深度学习模型,归根到底都是需要跑在设备上的,而模型对设备性能的要求越低,则能得到越多的运用——千万不能让硬件成为模型普及的瓶颈! - DIY Prisma app with CoreML | Prisma Labs Blog
简评:WWDC2017带给我们苹果对机器学习的实际应用,CoreML框架也使得在iOS设备上部署机器模型变得更容易。在Prisma实验室,我们热爱AI,尤其是移动端AI,我们在一年前曾实现的神经网络推理框架所采用的方法,与苹果发布的非常类似。本文将会使用开源模型和CoreML框架实现一个风格化迁移APP。 - NVIDIA Researchers Release Trailblazing Deep Learning-Based Framework for Autonomous Drone Navigation | NVIDIA Developer News Center
简评:NVIDIA的自主移动机器人团队今天发布了一个框架使开发人员能够创建自主无人机,可以在复杂环境、没有GPS地图以及具体标识的地方导航。基于NVIDIA Jetson TX1/TX2嵌入式AI超级计算机,借助深度学习和计算机视觉实现。 - 解读加实战:爆款论文 SRU 在对话生成上的效果 | 程序媛的日常
简评:最近有一篇爆款论文席卷了国内外社交网络,提出了可以用 CNN 的训练时间来训练“RNN”的循环神经网络结构。这篇论文就是《Training RNNs as Fast as CNNs》 by Lei Tao, Yu Zhang (ASAPP & MIT). 在读论文的同时,我们组的 JC 同学直接上手实战了一下论文作者提供的代码,并初步在对话生成的任务上得到了一定的实验结果。今天小 S 就和 JC 同学一起分享一下我们对这篇论文的解读和实战结果。
Editor: 张先轶、袁帅
本作品采用知识共享署名-相同方式共享 2.0 通用许可协议进行许可。