关于深度学习的框架、特征和挑战

在嵌入式系统上的深度学习

随着人工智能 (AI) 几乎延伸至我们生活的方方面面,主要挑战之一是将这种智能应用到小型、低功耗设备上。这需要嵌入式平台,能够处理高性能和极低功率的极深度神经式网络 (NN)。然而,这仍不足够。机器学习开发商需要一个快速和自动化方式,在这些嵌入式平台上转换、优化和执行预先训练好的网络。

在这一系列发布的内容中,我们将回顾当前框架以及它们对嵌入式系统构成的挑战,并演示处理这些挑战的解决方案。这些发布的内容会指导你在几分钟之内完成这个任务,而不是耗时数月进行手动发布和优化。

深度学习框架、特征和挑战

至今,深度学习的主要限制及其在实际生活中的应用一直局限于计算马力、功率限制和算法质量。这些前端所取得的巨大进步使其在许多不同领域取得杰出成就,例如图像分类、演说以及自然语言处理等。

列举图像分类的具体示例,过去五年,我们可看到 ImageNet 数据库显著提升四倍。深度学习技术于 2012 年达到 16% 的五大错误率,现在低于 5%,超出人为表现!如需了解更多有关神经网络和深度学习框架的介绍性信息,您可阅读近期关于这个话题的最新博客。

深度学习技术近年来取得显著成效(资料来源:Nervana)

神经网络的挑战

将这些成就转至移动、手持设备显然是这个技术的下一个进化步骤。然而,这样做会面临相当多的挑战。首先,有许多相互竞争的框架。其中有两个领先和最知名的框架分别为 UC Berkeley 开发的 Caffe 以及谷歌近期发布的 TensorFlow。除此之外,还有许多其他框架,例如微软公司的计算网络工具包 (CNTK)、Torch、Chainer 等。

除了众多框架外,神经网络包括各种类型的层面,例如卷积、归一化、池化及其他。进一步障碍是大批网络拓扑。至今,神经网络都遵循一个单拓扑。由于网络内部网络拓扑的出现,目前的情况更为复杂。例如,GoogLeNet 包括9个接收层,创造极为丰富和复杂的拓扑。

额外并发影响包括支持可变大小的感兴趣区域 (ROI)。虽然以研究为导向的网络(例如 AlexNet)在固定大小的 ROI 上运行,但优化合适的解决方案需要更灵活的商业网络。

领先的深度学习框架

我们来详细了解下Caffe 和 TensorFlow这两个领先的框架。通过比较这两个框架来阐明各自的优势和劣势。

成熟度

Caffe 推出时间较长。自 2014 年夏天推出,它可从一个支持各种图像分类任务的预训练神经网络模型大数据库(即 Model Zoo)中受益匪浅。与之相比,TensorFlow 则在近期于 2015 年 11 月首次推出。

适用性

Caffe 用于图像分类,但并非针对其他深度学习的应用,例如文本或声音。相反的,TensorFlow 除了图像分类外,能够解决一般的应用。

建模能力

循环神经网络 (RNN) 是保留先前状态实现持久性的网络,与人类思维过程类似。从这个层面来看,Caffe 不是非常灵活,因为其原有架构需要定义每个新层面类型的前向、后向和梯度更新。TensorFlow 利用向量运算方法的符号图,指明新网络相当简易。

架构

TensorFlow 拥有一个包含多个前端和执行平台的清理器、模块化结构。

领先的神经网络层

卷积神经网络 (CNN) 是神经网络的特殊例子。CNN 包括一个或多个卷积层,通常带有子采样层,在标准神经网络中后面跟着一个或多个完全连接层。在 CNN 中,用于特征提取的卷积层重量以及用于分类的完全连接层可在训练过程中确定。CNN 中的总层数可能从许多层到大约 24 层不等,例如 AlexNet,而如为 SegNet,则最多为 90 层。

我们根据与客户和合伙人合作期间遇到的多个网络,编辑了许多领先层列表。

卷积

标准化

池化(平均和最大)

完全连接

激活(ReLU、参数 ReLU、TanH、Sigmoid)

去卷积

串联

上采样

Argmax

Softmax

由于 NN 不断发展,这个列表可能也会更改和转换。一个可行的嵌入式解决方案无法承担每次在深度学习算法进步时而变得过时的代价。避免这个情况的关键是具备随之发展进化的灵活性并处理新层。这种类型的灵活性通过 CEVA 在上个 CES大会上 运用所有 24 层运行实时 Alexnet 期间提出的 CEVA-XM4 视觉 DSP 处理器展现。

深度学习拓扑结构

如果我们查看网络,例如 AlexNet 或不同的 VGG 网络,它们具备相同的单拓扑,即线性网络。在这个拓扑中,每个神经元点都有一个单端输入和单端输出。

更复杂的拓扑包括每级多层。在此情况下,可在处于相同级的多个神经元之间分配工作,然后与其他神经元结合。这种网络可以 GoogLeNet 为例。拥有多个输入多个输出拓扑的网络产生更多复杂性。

深度学习拓扑(资料来源:CEVA)

正如我们在上图第 (c) 种情况看到,相同的神经元可同时接收和发送多个输入和输出。这些类型的网络可通过 GoogLeNet、SegNet 和 ResNet 例证。

除了这些拓扑,还有完全卷积网络,这是关于单像素问题的快速、端对端模型。完全卷积网络可接收任意大小的输入,并通过有效推理和学习产生相应大小的输出。这更适合于 ROI 根据对象大小动态变化的商业应用程序。

嵌入式神经网络的挑战

预训练网络之后的下一个巨大挑战是在嵌入式系统中实施,这可是一个极具挑战性的任务!障碍可分为两个部分:

1、宽频限制以及嵌入式系统的计算能力。

NN 需要大量数据,利用 DDR 在各层之间进行传输。如为卷积和完全连接数据重量来自 DDR,数据传输极其庞大。在这些情况下,也要使用浮点精度。在许多情况下,相同网络用于处理多个 ROI。虽然大型、高功耗电机器可执行这些任务,但嵌入式平台制定了严格的限制条件。为实现成本效益、低功率及最小规模,嵌入式解决方案使用少量数据,限制内存大小,通常以整数精度运行,这与浮点截然相反。

2、竭力为嵌入式平台移植和优化 NN。

向嵌入式平台移植预训练 NN 的任务相当耗时,需要有关目标平台的编程知识和经验。在完成初步发布后,还必须为特定平台进行优化,以实现快速和有效性能。

这些挑战如果处理不当,将构成重大威胁。一方面,必须要克服硬件限制条件,以在嵌入式平台上执行 NN。另一方面,必须要克服挑战的第二部分,以便快速达成解决方案,因为上市时间是关键。还原至硬件解决方案以加速上市时间也不是一个明智选择,因为它无法提供灵活性,并将快速成为发展进化神经网络领域中的障碍。

免责声明:本文系网络转载,版权归原作者所有。如涉及版权,请联系删除!

原文发布于微信公众号 - 智能算法(AI_Algorithm)

原文发表时间:2016-10-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

第四范式陈雨强:万字深析工业界机器学习最新黑科技

转载自 第四范式公众号 近日,全球最顶级大数据会议Strata Data Conference在京召开。Strata大会被《福布斯》杂志誉为“大数据运动的里程碑...

40690
来自专栏人工智能

2017年深度学习领域阅读量最高的11篇文章

来源:Analytics Vidhya 智能观 编译 【智能观】本文是国外知名技术网站Analytics Vidhya总结的11篇深度学习领域最佳文章,如果你还...

25180
来自专栏人工智能头条

深度学习在推荐领域的应用

18040
来自专栏Duncan's Blog

社交网络中抽取有代表性的用户

将用户以各个属性构建向量,以向量之间的距离来定义人物之间的代表性. 以Twitter社交拓扑为例,当A用户关注了B用户,将会有A指向B的一条有向边,

15320
来自专栏AI科技评论

深度 | BAIR论文:通过“元学习”和“一次性学习”算法,让机器人快速掌握新技能

AI科技评论按:近日伯克利大学人工智能实验室(BAIR)Sergey Levine团队在Arxiv上发布了一篇名为《One-Shot Visual Imitat...

407100
来自专栏美图数据技术团队

干货 | 基于用户行为的视频聚类方案

在个性化推荐系统中,通常是由挖掘物品属性来理解用户兴趣,从而构建推荐模型。从用户行为去理解物品属性往往做得比较简单,通常只是一些简单的标签统计。为了深入到用户行...

42040
来自专栏大数据挖掘DT机器学习

你还在用“人工特征工程+线性模型”?

作者:李沐M 11年的时候我加入百度,在凤巢使用机器学习来做广告点击预测。当时非常惊讶于过去两年内训练数据如此疯狂的增长。大家都在热情的谈特征,每次新特征的...

39080
来自专栏专知

这可能是最简单易懂的机器学习入门(小白必读)

【导读】本文用浅显易懂的语言精准概括了机器学习的相关知识,内容全面,总结到位,剖析了机器学习的what,who,when, where, how,以及why等相...

21530
来自专栏PPV课数据科学社区

【学习】关于推荐系统中的特征工程

在多数数据和机器学习的blog里,特征工程 Feature Engineering 都很少被提到。做模型的或者搞Kaggle比赛的人认为这些搞featu...

54680
来自专栏Hadoop数据仓库

MADlib——基于SQL的数据挖掘解决方案(1)——数据挖掘入门

一、什么是数据挖掘         数据挖掘(Data Mining),也叫数据开采、数据采掘等,是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,...

25870

扫码关注云+社区

领取腾讯云代金券