1.拒绝艰涩难懂——本书是作者在用自己的话讲解TensorFlow,中国人都能轻松读懂,特别适合零基础读者,没有不懂,只有更懂。
2.拒绝臃肿拖沓——本书真正来自于作者一线从业经验与体会,只讲有用的,不含偏门的。
3.拒绝断章取义——本书囊括了TensorFlow用于实际工作的全流程,使读者能真正实现从想法到产品,只有流畅,没有断崖。
4.拒绝含混支吾——本书对TensorFlow每一个环节的讲解,都是作者运用自己多年一线从业功力推敲与解构的,没有模糊不清,只有恍然大悟。
《TensorFlow进阶指南:基础、算法与应用》是由人工智能一线从业专家根据自己日常工作的体会与经验总结而成的,在对TensorFlow的基础知识、环境搭建、神经网络、常用技术的详细讲解当中穿插了自己实战的经验与教训。更与众不同的是,《TensorFlow进阶指南:基础、算法与应用》详细地解析了使用TensorFlow进行深度学习领域中常用模型的搭建、调参和部署整个流程,以及数据集的使用方法,能够帮助您快速理解和掌握TensorFlow相关技术,最后还用实战项目帮助您快速地学会TensorFlow开发,并使用TensorFlow技术来解决实际问题。
《TensorFlow进阶指南:基础、算法与应用》代码主要是在1.6版本的基础上进行开发的,同时兼容1.2~1.10的版本,并已得到验证。《TensorFlow进阶指南:基础、算法与应用》主要面向对TensorFlow、深度学习、人工智能具有强烈兴趣且希望尽快入门的相关从业人员、高校相关专业的教育工作者和在校学生,以及正在从事深度学习工作且希望深入的数据科学家、软件工程师、大数据平台工程师、项目管理者等。
第1章 人工智能与深度学习 1
1.1 人工智能与机器学习 1
1.2 无处不在的深度学习 6
1.3 如何入门深度学习 7
1.4 主流深度学习框架介绍 13
第2章 搭建TensorFlow环境 15
2.1 基于pip安装 15
2.1.1 基于Windows环境安装TensorFlow 15
2.1.2 基于Linux环境安装TensorFlow 22
2.2 基于Java安装TensorFlow 24
2.3 安装TensorFlow的常用依赖模块 27
2.4 Hello TensorFlow 30
2.4.1 MNIST数据集 30
2.4.2 编写训练程序 32
2.5 小结 35
第3章 TensorFlow基础 36
3.1 TensorFlow的系统架构 36
3.1.1 Client 37
3.1.2 Distributed Master 38
3.1.3 Worker Service 39
3.1.4 Kernel Implements 39
3.2 TensorFlow的数据结构——张量 39
3.2.1 什么是张量 39
3.2.2 张量的阶 40
3.2.3 张量的形状 40
3.2.4 数据类型 41
3.3 TensorFlow的计算模型——图 42
3.3.1 计算图基础 42
3.3.2 计算图的组成 43
3.3.3 计算图的使用 45
3.3.4 小结 48
3.4 TensorFlow中的会话——Session 48
第4章 TensorFlow中常用的激活函数与神经网络 50
4.1 激活函数的概念 50
4.2 常用的激活函数 51
4.2.1 Sigmoid函数 51
4.2.2 Tanh函数 53
4.2.3 ReLU函数 55
4.2.4 Softplus函数 57
4.2.5 Softmax函数 58
4.2.6 小结 59
4.3 损失函数的概念 60
4.4 损失函数的分类 63
4.5 常用的损失函数 65
4.5.1 0-1损失函数 65
4.5.2 Log损失函数 66
4.5.3 Hinge损失函数 69
4.5.4 指数损失 70
4.5.5 感知机损失 70
4.5.6 平方(均方)损失函数 71
4.5.7 绝对值损失函数 71
4.5.8 自定义损失函数 71
4.6 正则项 72
4.6.1 L0范数和L1范数 72
4.6.2 L2范数 73
4.6.3 核范数 74
4.7 规则化参数 76
4.8 易混淆的概念 76
4.9 神经网络的优化方法 77
4.9.1 梯度下降算法 77
4.9.2 随机梯度下降算法 79
4.9.3 其他的优化算法 80
4.9.4 小结 84
4.10 生成式对抗网络(GAN) 84
4.10.1 CGAN 96
4.10.2 DCGAN 97
4.10.3 WGAN 98
4.10.4 LSGAN 99
4.10.5 BEGAN 100
第5章 卷积神经网络 102
5.1 神经网络简介 102
5.1.1 神经元与神经网络 102
5.1.2 感知器(单层神经网络)与多层感知器 104
5.2 图像识别问题 108
5.3 常用的图像库介绍 111
5.4 卷积神经网络简介 114
5.4.1 CNN的基本原理与卷积核 115
5.4.2 池化 116
5.4.3 再探ReLU 118
5.5 CNN模型 119
5.5.1 LeNet-5模型 119
5.5.2 AlexNet模型 123
5.5.3 Inception模型 130
5.6 用CNN实现MNIST训练 147
第6章 循环神经网络 152
6.1 初识循环神经网络 152
6.1.1 前馈神经网络 153
6.1.2 神经网络中的时序信息 159
6.2 详解循环神经网络 160
6.3 RNN的变种——双向RNN 163
6.4 One-Hot Encoding 166
6.5 词向量和word2vec 167
6.5.1 CBOW模型 168
6.5.2 Skip-Gram模型 169
6.6 梯度消失问题和梯度爆炸问题 170
6.6.1 梯度下降 171
6.6.2 解决梯度消失和梯度爆炸问题的方法 173
6.7 RNN的变种——LSTM 180
6.8 写诗机器人 190
第7章 TensorFlow的可视化 197
7.1 TensorBoard简介 197
7.2 生成和使用TensorBoard 201
7.3 TensorBoard的面板展示 209
7.4 小结 224
第8章 TensorFlow中的数据操作 225
8.1 制作TFRecords数据集 225
8.2 Dataset API介绍 231
8.3 TensorFlow中的队列 234
第9章 支持向量机(SVM) 241
9.1 什么是支持向量机 241
9.2 计算最优超平面 243
9.3 TensorFlow实现线性SVM 244
9.4 非线性SVM介绍 248
9.5 使用TensorFlow实现非线性SVM分类器 251
第10章 TensorFlow结合Flask发布MNIST模型 259
10.1 Flask框架介绍 259
10.2 训练MNIST模型 260
10.3 小结 276
第11章 TensorFlow模型的发布与部署 277
11.1 TensorFlow Serving的前导知识 277
11.2 TensorFlow Serving 模型打包 281
11.3 TensorFlow Serving模型的部署和调用 285
第12章 TensorFlow Lite牛刀小试 286
12.1 什么是TensorFlow Lite 286
12.2 如何使用TensorFlow Lite模型 288
12.3 TensorFlow Lite与Android结合实现图像识别 291
第13章 TensorFlow GPU 297
13.1 什么是GPU 297
13.2 GPU的选择 298
13.3 搭建TensorFlow GPU 300
13.3.1 在Windows上搭建TensorFlow GPU 300
13.3.2 在Linux上搭建TensorFlow GPU 308
13.4 使用TensorFlow GPU进行训练 312
第14章 TensorFlow与目标检测 318
14.1 传统目标检测方法 318
14.2 RCNN介绍 320
14.3 Fast-RCNN 322
14.4 Faster-RCNN 326
14.5 YOLO 329
附录A TensorFlow历代版本更新内容 355
A.1 TensorFlow 1.3版本更新内容 355
A.2 TensorFlow 1.4版本更新内容 356
A.3 TensorFlow 1.5版本更新内容 357
A.4 TensorFlow 1.6版本更新内容 357
A.5 TensorFlow 1.7版本更新内容 358
A.6 TensorFlow 1.8版本更新内容 358
A.7 TensorFlow 1.9版本更新内容 359
温馨提示:请使用宁波大学园区图书馆的读者帐号和密码进行登录
本书将深度学习的理论与实践高度结合。作者以其多年的研发经验,为深度学习开发工程师们提供了一套全面系统的学习教材与实践案例。本书由浅入深地介绍了TensorFlow在各种模型和场景下的使用方案,同时也对深度学习整体框架和各种常用模型作了详细阐述。书中配有大量的实战案例,以简单生动的语言将各种算法和结构讲解出来。对于在这个领域工作的工程师、老师、学生,这是一本难得的好书。
——孙伟
北京航空航天大学软件学院创始院长,教授
北京软件行业协会 执行会长
美国佛罗里达州立大学计算机学院终身教授
人工智能时代的来临对于每个程序员来说都是机遇,也是挑战。这就好比在机械革命来临之时,一个农夫是选择继续埋头耕种,还是努力去学会制造耕地的机器一样。Tensorflow等一大批优秀的开源框架,给了每个程序员几乎平等的学习机会,让我们能够具备更高的生产能力,那我们还等什么?本书有一些有趣的应用方法、一些浅显生动的例子,相信能够给你带来一定的入门提示或者思维灵感。
——高扬
珠海金山办公软件人工智能组专家
市面上关于TensorFlow机器学习的书很多,本书作者的可贵之处在于深谙机器学习的精髓,却可以用简单朴实的语言将原本艰涩难懂的框架、模型等进行了生动的解构,配合作者多年一线实战案例,使得整本书兼顾到了不同阶段学习者的诉求。这份诚意应当点赞!
——马志国
中科院计算机所博士、金山软件人工智能组算法经理
从2016年人工智能的开始火爆到2017年的满地开花,人工智能领域已经给了这个社会太多太多的机会和机遇,无论是计算机专业毕业的同学还是数学专业毕业的同学都纷纷投入其中。《TensorFlow进阶指南》这本书给了开发者一个非常好的入口,从基础到实战、从理论到算法,再配合简洁生动的文字,使得这本书的可读性非常高,相信一定能给开发者们带来不一样的阅读体验。
——周志明
人工智能领域专家、《深入理解Java虚拟机》作者
认识鸿波多年,他一直走在技术开发的前线,在人工智能这个领域已经有了快10年的积累,他的书也正如他的技术积累一样,朴实、睿智,书中通过简单的语言来解释较为复杂的原理,并使用TensorFlow将其实现,为TensorFlow初学者提供了非常好的技术思路,读后受益匪浅。
——俞天翔
高级工程师
本书以TensorFlow机器学习框架为核心主题,深入浅出地介绍了深度学习相关的理论基础、算法实现与落地应用,并以深度学习的实践应用为导向,通过目标检测、自然语言处理等实践案例,以源代码循序渐进地向读者展示技术关键点与实战经验。对于入门TensorFlow和深度学习的研发人员是一本不可多得的好书。
——陈启明
美国微软公司 高级工程师
这是一个好的时代,这是一个坏的时代;
这是一个智慧的年代,这是一个愚蠢的年代;
这是一个信仰的时期,这是一个怀疑的时期;
这是一个光明的季节,这是一个黑暗的季节;
这是希望之春,这是失望之冬;
人们面前应有尽有,人们面前一无所有;
人们正踏上天堂之路,人们正走向地狱之门。
这是英国著名作家查尔斯·狄更斯在《双城记》中的名句,除了后一句以外,形容现在这个时代再合适不过了。电子技术、计算机技术、互联网技术、大数据技术、人工智能技术,这些技术的发展与进步是一股不可阻挡的历史洪流,而我们都是洪流中的小舟。
乐观与悲观,兴起与沉沦,都在人们的一念之间。任何一种技术的革命都伴随着一代人的分化与沉浮。
但我相信,所有不愿辜负时代的智者和勇者都会以积极的方式面对大潮的到来,因为迄今为止没有任何一个时期会比现在这如井喷一般繁荣绚烂的新技术所带来的人工智能新纪元还令人神往。
抓住它,就是抓住航船的舵柄;抓住它,就是抓住未来的航标。
让我们乘着这时代的大潮,一起破浪远航吧!
——姚冬
金山软件集团副总裁