深度学习框架和加速技术探讨

上传人:bin****86 文档编号:58080170 上传时间:2018-10-26 格式:DOCX 页数:5 大小:18.26KB
返回 下载 相关 举报
深度学习框架和加速技术探讨_第1页
第1页 / 共5页
深度学习框架和加速技术探讨_第2页
第2页 / 共5页
深度学习框架和加速技术探讨_第3页
第3页 / 共5页
深度学习框架和加速技术探讨_第4页
第4页 / 共5页
深度学习框架和加速技术探讨_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《深度学习框架和加速技术探讨》由会员分享,可在线阅读,更多相关《深度学习框架和加速技术探讨(5页珍藏版)》请在金锄头文库上搜索。

1、深度学习框架和加速技术探讨深度学习框架和加速技术探讨引言XX 年 3 月,谷歌公司开发的人工智能围棋程序AlphaGo 和韩国九段围棋选手李世h 进行了五场比赛,最终 AlphaGo 以 4:1 的结果大胜对手。随后,升级版的AlphaGo,即 Master 又在网络上与中日韩选手对战,横扫中日韩围棋高手,无一败绩。最近全新升级的 AlphaGo 与世界排名第一的中国九段棋手柯洁进行对战,结果三战全胜!这使得人工智能在全球范围内引起了广泛的关注和讨论,而 AlphaGo 采用的深度学习方法,也掀起了一股深度学习的浪潮。1 深度学习简介深度学习从传统的人工神经网络发展而来。自 20 世纪80 年

2、代以来,人工神经网络得到了巨大的发展,其中以 BP算法为代表的传统人工神经网络方法的在分类、聚类方面得到了广泛应用。然而,BP 算法本身的缺陷也是明显的,容易过拟合以及只能训练有标签的数据。与传统的人工神经网络相比,深度学习网络增加了网络中的隐含层数,传统人工神经网络一般在 5 层以内,而深度学习网络至少达到 7 层及以上。随着网络规模的增加,对神经网络模型的训练和优化难度也变得困难。XX 年,Geoffrey Hinton 等人在Science上发表了文章,提出的用于深度信任网络的无监督学习算法,解决了深度学习模型优化困难的问题,拉开了深度学习的大幕。同时,计算机技术不断发展,使得计算能力大

3、大提升,也极大地促进了深度学习地发展。目前,基于深度学习的人工智能应用在各个方面,主要包括计算机视觉、自然语言处理、语音识别、信息检索等方向。2 深度学习框架深度学习的研究方式和过去传统的研究方式大不相同。在深度学习领域,已经有很多的科研机构和世界一流的院校开发了多种深度学习工具,这些学习工具或者说深度学习库在许多领域大显身手,如计算机视觉、自然语言处理、自动驾驶等。对于研究者来说,选择合适的框架来解决某一方面的问题是十分必要的。下面介绍目前流行的几种深度学习框架,并进行分析比较,以期为研究人员选择合适的框架提供参考。TensorFlow 最初是谷歌公司内部使用的深度神经网络库,属于谷歌“BR

4、AIN”项目。XX 年 11 月,谷歌正式发布这一系统并宣布开源。TensorFlow 支持多种编程语言,比如 c+和 Python,用户可以在 TensorFlow 下灵活地构建神经网络模型,并且可以方便地修改和优化模型。在TensorFlow 框架中,所有的计算任务都是基于“图”的。在图中,可以存在很多个节点,一个节点可以获得零个或者多个张量,每个张量是一个类型化的多维数组。这种特殊的数据表示形式,可以让用户高效方便地构建深层神经网络。TensorFlow 框架自带一个非常好用的工具Tensorboard,它是一款可视化工具,可以让用户直观地看到数据在神经网络中的变化,也可以看到整个网络的

5、结构。用户通过这个功能,会非常方便和直观地观察自己的神经网络模型,并且很直观地进行修改。一个 TensorFlow 程序通常可分为两个过程,一个是构造阶段,另一个是执行阶段。在构造阶段,用户通过编写程序构造出一张计算图,创建图本质上来说就是创建节点对象以及如何把它们连接起来的过程。在执行阶段,因为所有的图都是在 Session 中启动,所以第一步是创建Session 对象,第二步对变量进行初始化,然后执行节点间相应操作并更新变量值,最终保存数据。Caffe 是由 FaceBookAI 平台的首席工程师贾扬清开发,它集成了许多优秀的深度卷积模型,在图像处理方面表现优秀,在 XX 年的 Image

6、Net 挑战赛中,Caffe 获得冠军,使得它一鸣惊人。Caffe 网络结构是通过编辑文档构建的,对于初学者来说易于使用,因为不需要对具体的代码有深刻了解,便可以构建自己的网络模型,也可以对一些先进的网络模型进行分析和改进。Caffe 框架支持并行计算,配合英伟达公司的 cuda 技术,使用 GPU 加速使得计算高效。根据相关计算,Caffe 可以在单个英伟达 K40 GPU 上每天处理6000 万张图像,相当于一张图片仅用 ms!因此被广泛地部署于商业应用和实验研究。Caffe 使用的核心语言是 c+,具有跨平台的特性,便于移植,同时提供给用户 Python 和 Matlab 接口进行开发,

7、同时还提供了很多已经训练好的深度学习模型,如 LeNet-5、AlexNet 等。用户使用这些模型的时候,只需针对具体问题模型的参数或结构做一些改进,就可以快速、高效地开发出新的应用。CNTK 是由软件巨头微软公司研发的开源平台框架,最初用于处理自然语言,支持 Windows 系列平台,也支持Linux。与 Caffe 相同,CNTK 也是基于 c+架构,为用户提供的编程接口是 Python 和 c+,支持跨平台的 CPU/GPU 部署,但不支持 Arm 架构,所以不能部署在移动设备上。CNTk 使用图进行计算,这一点和 Tensorflow 相同。另外,CNTK 支持细粒度的网络层构建,用户不需要使用低层次的语言就能构建复杂的层类型。MXNet 是一款为效率和灵活性而设计的深度学习框架,由美国A 盛顿大学和卡内基梅隆大学联合开发,核心是一个动态的依赖调度,允许用户进行混合符号编程和命令式编程,最大限度地提高效率和生产力。MXNet 很容易定义数据结构,支持多 GPU 并行计算,并方便地加以扩展,为分布式系统提供了优化的数值计算模式,像 Python 和 R 语言一样,可以自动执行常见的操作。因此,在使用标准的神经网络时,只需要几行简单的代码就可以表示。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号