《深度学习:主流框架和编程实战》

举报
华章计算机 发表于 2019/06/04 20:03:39 2019/06/04
【摘要】 本书摘自《深度学习:主流框架和编程实战》——作者是赵涓涓、强彦。

智能系统与技术丛书

深度学习:主流框架和编程实战


赵涓涓 强 彦 主编

深度学习 立.jpg



PREFACE

前  言

自20世纪80年代以来,机器学习已经在算法、理论和应用等方面取得了巨大成功,广泛应用于产业界与学术界。简单来说,机器学习就是通过算法使得机器能从大量历史数据中学习规律,从而对新的样本完成智能识别或对未来做预测。深度学习是一种机器学习方法,在一些最新的研究领域和新的应用背景下,可用数据量的激增、计算能力的增强以及计算成本的降低为深度学习的快速发展铺平了道路,同时也为深度学习在各大领域的应用提供了支撑。自AlphaGo被提出并成功击败职业围棋手后,“深度学习”这一概念快速进入人们的视野并在业界引起了轰动,其因强大的特征提取能力以及灵活性在国内外各大企业中掀起一阵狂潮,在语音识别、图像识别和图像处理领域取得的成果尤为突出。

本书是以实践案例为主的深度学习框架结合编程实战的综合性著作,将带领读者逐步掌握深度学习需要的数据处理、调整参数、运行实例和二次编码,不仅帮助读者理解理论知识,而且能够使读者熟练掌握各种深度学习框架下的编程控制。本书配有大量的实践案例,既便于课堂教学,又便于学生自学。此外本书还配有同步PPT课件和程序源码,可供教师进行实验课程辅导。

本书介绍了四种深度学习框架(TensorFlow、Caffe、Torch、MXNet)的运行原理,配合实例介绍了框架的详细安装、程序设计、调参和二次接口的详细编程过程,引领读者完整搭建深度学习框架,相信本书能够从实战的角度帮助读者快速掌握和提高深度学习编程的技能。

全书内容可分为绪论、四大框架、迁移学习和并行计算/交叉验证四大部分,共7章。

第1章讨论深度学习与机器学习的关系、深度学习与统计学的关系、深度学习框架、深度学习中涉及的优化方法以及对深度学习的展望五个方面的内容,从理论上对深度学习进行全面深刻的剖析,旨在为后续学习提供理论铺垫与指导。

第2章对TensorFlow深度学习框架进行详细介绍,主要包括TensorFlow运作原理、模型构建、框架安装,并进一步介绍了TensorFlow框架下具体网络的图像分类编程实现以及详细代码的解读。

第3章从理论与实战两方面对Caffe深度学习框架的发展、结构以及具体的搭建过程进行详细介绍,并在Caffe深度学习框架下构建全卷积神经网络(Fully Convolutional Network,FCN),用该网络进行图像语义分割的实战编程,对该案例程序代码进行详细解读。

第4章介绍Torch深度学习框架的基础知识,同时介绍Torch深度学习框架中使用的Lua语言;按照Torch框架的安装过程,以一个具体的目标检测实例为出发点,详细介绍Torch的类和包的用法以及构建神经网络的全过程,最后介绍Faster R-CNN的方法和实例。

第5章对MXNet框架进行详细介绍,包括MXNet的基本概念和特点、MXNet的安装过程等,利用自然语言处理的实例来进一步展示MXNet在深度学习方面的应用实战。

第6章介绍迁移学习发展、迁移学习的类型与模型,并以实际案例对迁移学习的过程进行详细介绍与分析。

第7章在深度学习的背景下分别对并行计算和交叉验证这两种方法进行详细介绍。

本书既可作为大学本科、研究生相关专业教材,也适用于各种人工智能、机器学习的培训与认证体系,同时可供广大深度学习开发人员参考。

本书由多人合作完成,其中,第1章由太原理工大学强彦编写,第2章由太原理工大学赵涓涓编写,第3章由太原理工大学王华编写,第4章由太原理工大学肖小娇编写,第5章由晋中学院董云云编写,第6章由太原理工大学马瑞青编写,第7章由大同大学傅文博编写,全书由强彦审阅。

本书在撰写过程中得到了赵鹏飞、罗嘉滢、肖宁、高慧明、吴保荣等项目组成员和业内专家的大力支持和协助,在此一并表示衷心的感谢!

由于作者水平有限,不当之处在所难免,恳请读者及同仁赐教指正。






CONTENTS

目  录

前言

第1章 绪论  1

1.1 机器学习与深度学习  1

1.1.1 机器学习与深度学习的关系  2

1.1.2 传统机器学习与深度学习的对比  3

1.2 统计学与深度学习  5

1.2.1 统计学与深度学习的关系  5

1.2.2 基于统计的深度学习技术  6

1.3 本书涉及的深度学习框架  8

1.4 优化深度学习的方法  8

1.5 深度学习展望  9

第2章 TensorFlow深度学习框架构建方法与图像分类的实现  12

2.1 TensorFlow概述  12

2.1.1 TensorFlow的特点  13

2.1.2 TensorFlow中的模型  14

2.2 TensorFlow框架安装  16

2.2.1 基于Anaconda的安装  16

2.2.2 测试TensorFlow  19

2.3 基于TensorFlow框架的图像分类实现(ResNet-34)  20

2.3.1 应用背景  20

2.3.2 ResNet  21

2.3.3 ResNet程序实现  24

2.3.4 详细代码解析(1)  27

2.3.4 详细代码解析(2)  27

2.3.4 详细代码解析(3)  27

2.3.5 实验结果及分析  51

第3章 Caffe深度学习框架搭建与图像语义分割的实现  56

3.1 Caffe概述  56

3.1.1 Caffe的特点  56

3.1.2 Caffe框架结构  57

3.2 Caffe框架安装与调试  59

3.3 基于Caffe框架的图像分割实现(FCN)  64

3.3.1 用Caffe构建卷积神经网络  64

3.3.2 FCN-8s网络简介  69

3.3.3 详细代码解读  85

3.3.4 实验结果与结论  98

第4章 Torch深度学习框架搭建与目标检测的实现  100

4.1 Torch概述  100

4.1.1 Torch的特点  100

4.1.2 Lua语言  102

4.2 Torch框架安装  104

4.3 基于Torch框架的目标检测实现(Faster R-CNN)  113

4.3.1 Torch的类和包的基本用法  113

4.3.2 用Torch构建神经网络  116

4.3.3 Faster R-CNN介绍  119

4.3.4 Faster R-CNN实例  127

4.3.5 实验结果分析  161

第5章 MXNet深度学习框架构建与自然语言处理的实现  164

5.1 MXNet概述  164

5.1.1 MXNet基础知识  164

5.1.2 编程接口  166

5.1.3 系统实现  169

5.1.4 MXNet的关键特性  171

5.2 MXNet框架安装  172

5.3 基于MXNet框架的自然语言处理实现(LSTM)  179

5.3.1 自然语言处理应用背景  179

5.3.2 RNN及LSTM网络  180

5.3.3 Bucketing及不同长度的序列训练  183

5.3.4 详细代码实现  185

5.3.5 实验过程及实验结果分析  191

第6章 迁移学习  195

6.1 迁移学习发展概述  195

6.2 迁移学习的类型与模型  196

6.2.1 冻结源模型与微调源模型  197

6.2.2 神经网络迁移学习模型与分类器迁移学习模型  197

6.3 迁移学习方法实例指导  199

6.3.1 迁移学习应用示例  199

6.3.2 实验结论  202

第7章 并行计算与交叉验证  203

7.1 并行计算  203

7.1.1 数据并行框架  204

7.1.2 模型并行框架  205

7.1.3 数据并行与模型并行的混合架构  205

7.2 交叉验证  207

7.2.1 留出法  207

7.2.2 K折交叉验证  208

7.2.3 留一交叉验证  209

参考文献  211


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。