TensorFlow进阶指南:基础、算法与应用pdf下载pdf下载

TensorFlow进阶指南:基础、算法与应用百度网盘pdf下载

作者:
简介:本篇主要提供TensorFlow进阶指南:基础、算法与应用pdf下载
出版社:电子工业出版社
出版时间:2018-11
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

编辑推荐

适读人群 :本书主要面向对TensorFlow、深度学习、人工智能具有强烈兴趣且希望尽快入门的相关从业人员、高校相关专业的教育工作者和在校学生,以及正在从事深度学习工作且希望深入的数据科学家、软件工程师、大数据平台工程师、项目管理者等。

1.拒绝艰涩难懂——本书是作者在用自己的话讲解TensorFlow,中国人都能轻松读懂,特别适合零基础读者,没有不懂,只有更懂。

2.拒绝臃肿拖沓——本书真正来自于作者一线从业经验与体会,只讲有用的,不含偏门的。

3.拒绝断章取义——本书囊括了TensorFlow用于实际工作的全流程,使读者能真正实现从想法到产品,只有流畅,没有断崖。

4.拒绝含混支吾——本书对TensorFlow每一个环节的讲解,都是作者运用自己多年一线从业功力推敲与解构的,没有模糊不清,只有恍然大悟。


内容简介

《TensorFlow进阶指南:基础、算法与应用》是由人工智能一线从业专家根据自己日常工作的体会与经验总结而成的,在对TensorFlow的基础知识、环境搭建、神经网络、常用技术的详细讲解当中穿插了自己实战的经验与教训。更与众不同的是,《TensorFlow进阶指南:基础、算法与应用》详细地解析了使用TensorFlow进行深度学习领域中常用模型的搭建、调参和部署整个流程,以及数据集的使用方法,能够帮助您快速理解和掌握TensorFlow相关技术,最后还用实战项目帮助您快速地学会TensorFlow开发,并使用TensorFlow技术来解决实际问题。

《TensorFlow进阶指南:基础、算法与应用》代码主要是在1.6版本的基础上进行开发的,同时兼容1.2~1.10的版本,并已得到验证。《TensorFlow进阶指南:基础、算法与应用》主要面向对TensorFlow、深度学习、人工智能具有强烈兴趣且希望尽快入门的相关从业人员、高校相关专业的教育工作者和在校学生,以及正在从事深度学习工作且希望深入的数据科学家、软件工程师、大数据平台工程师、项目管理者等。

作者简介

黄鸿波,珠海金山办公软件有限公司(WPS)人工智能领域专家,高级算法工程师,拥有多年软件开发经验。曾在格力电器股份有限公司大数据中心担任人工智能领域专家,且在多家公司担任过高级工程师,技术经理,技术总监等职务。曾带领团队开发过基于人脸识别技术的智能支付系统、推荐系统、知识图谱、智能问答系统等。擅长数据挖掘、机器学习、移动开发等专业领域,并拥有丰富的实战经验。

精彩书评

  本书将深度学习的理论与实践高度结合。作者以其多年的研发经验,为深度学习开发工程师们提供了一套全面系统的学习教材与实践案例。本书由浅入深地介绍了TensorFlow在各种模型和场景下的使用方案,同时也对深度学习整体框架和各种常用模型作了详细阐述。书中配有大量的实战案例,以简单生动的语言将各种算法和结构讲解出来。对于在这个领域工作的工程师、老师、学生,这是一本难得的好书。
  ——孙伟
  北京航空航天大学软件学院创始院长,教授
  北京软件行业协会 执行会长
  美国佛罗里达州立大学计算机学院终身教授

  人工智能时代的来临对于每个程序员来说都是机遇,也是挑战。这就好比在机械革命来临之时,一个农夫是选择继续埋头耕种,还是努力去学会制造耕地的机器一样。Tensorflow等一大批优秀的开源框架,给了每个程序员几乎平等的学习机会,让我们能够具备更高的生产能力,那我们还等什么?本书有一些有趣的应用方法、一些浅显生动的例子,相信能够给你带来一定的入门提示或者思维灵感。
  ——高扬

  珠海金山办公软件人工智能组专家
  市面上关于TensorFlow机器学习的书很多,本书作者的可贵之处在于深谙机器学习的精髓,却可以用简单朴实的语言将原本艰涩难懂的框架、模型等进行了生动的解构,配合作者多年一线实战案例,使得整本书兼顾到了不同阶段学习者的诉求。这份诚意应当点赞!
  ——马志国
  中科院计算机所博士、金山软件人工智能组算法经理

  从2016年人工智能的开始火爆到2017年的满地开花,人工智能领域已经给了这个社会太多太多的机会和机遇,无论是计算机专业毕业的同学还是数学专业毕业的同学都纷纷投入其中。《TensorFlow进阶指南》这本书给了开发者一个非常好的入口,从基础到实战、从理论到算法,再配合简洁生动的文字,使得这本书的可读性非常高,相信一定能给开发者们带来不一样的阅读体验。
  ——周志明
  人工智能领域专家、《深入理解Java虚拟机》作者

  认识鸿波多年,他一直走在技术开发的前线,在人工智能这个领域已经有了快10年的积累,他的书也正如他的技术积累一样,朴实、睿智,书中通过简单的语言来解释较为复杂的原理,并使用TensorFlow将其实现,为TensorFlow初学者提供了非常好的技术思路,读后受益匪浅。
  ——俞天翔
  高级工程师

  本书以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

前言/序言

自从2016年初谷歌的AlphaGo战胜了世界围棋冠军李世石,人工智能和机器学习领域就变得异常火爆。其实早在半个世纪以前,人工智能领域的相关概念就已经被提出,经过了这半个世纪的不断发展,人工智能以及深度学习相关领域已经在工业界和学术界发生了颠覆性的改变。2017年2月11日,谷歌公司正式发布TensorFlow 1.0版本,由此开始,一段新的热潮被掀起。到目前为止,谷歌公司的TensorFlow版本已经更新至1.10版本,本书代码主要是在1.6版本的基础上进行开发的,同时兼容1.2~1.10的版本,并已经过验证,读者可以放心使用。

关于本书的使用

本书主要面向对TensorFlow具有强烈兴趣且希望尽快入门的读者,以及正在从事TensorFlow方面的工作且希望深入的读者。

本书一共有14章的内容,分为四个部分:

TensorFlow基础部分(第1章到第3章)

主要讲解了TensorFlow的基础知识(包括张量、运行图、Session等部分)、环境的搭建方法(包括Windows、Linux版本的环境搭建,以及Java版本的环境搭建)等。

TensorFlow神经网络基础和各种模型部分(第4章到第6章)

从基础的神经元开始,逐步讲解单层神经网络、多层神经网络、卷积神经网络、循环神经网络等,在每个神经网络中还讲解其附带的各种数据集、模型和变体,比如BP神经网络、AlexNet模型、LSTM等。通过这些内容,读者可以对神经网络等知识有初步认识,并能把握其整体脉络。

TensorFlow的常用技术(第7章到第9章)

主要讲解TensorFlow对于数据集的制作和处理,以及在TensorBoard的模式下可视化观察模型的各种参数变化,并讲解了支持向量机的概念。之所以把支持向量机放在这个部分,是因为支持向量机目前在深度学习领域是非常常用的,比如目标检测和分类任务。通过学习这一部分的内容,读者可以对TensorFlow在实际应用过程中的常用技术有一定的了解。

TensorFlow的实际应用(第10章到第14章)

主要讲解如何使用TensorFlow在实际生活中解决问题,并讲解TensorFlow打包发布的各种方法,以及在GPU环境下如何使用TensorFlow。另外,在这一部分,我们也讲到目标检测,读者可以将其思路用于实际工业生产领域当中。

初学TensorFlow的读者阅读本书时需要具有一定的Python基础,并建议从第1章开始,如果您有GPU版本的服务器或主机,则可以选择先看第13章,而不必阅读第2章;另外本书中含有一部分公式的推导,例如第6章循环神经网络会讲解关于BP神经网络的推导过程,这需要您有一定的数学基础,但是如果您看不懂数学推导也不会耽误对后面章节的理解和学习;如果您从事图像处理相关的工作和研究,可以着重看第5章卷积神经网络和第8章TensoFlow中的数据操作,通过这两章内容,我们可以建立自己的数据集,并将数据集应用到自己的模型中。如果您想了解各个公开数据集的相关信息,以及如何使用公开的数据模型,可以参考第5章卷积神经网络。

针对已经从事TensorFlow相关工作的读者,本书中含有大量的实例,以及作者在实际开发过程中的心得体会,并且循序渐进地讲解了公式推导部分,在讲解知识点的时候会推荐知识点,例如讲解RNN,同时会讲解为什么会使用RNN,RNN是由什么样的神经网络算法(BP神经网络)演变而来的,又在其中加入了什么样的内容(时序处理),以及这些算法的推导原理等。通过对一个网络的深入研究,能够使您在使用相关模型时了解其本质。

致谢

本书的顺利出版离不开大家对我的帮助。

在这里,首先我要感谢电子工业出版社博文视点的孙学瑛老师对我的信任及支持,正是由于孙老师的支持,才能有此书的顺利出版。其次我要感谢我的家人在我写书的这近一年时间内给我的支持和理解,尤其是我的妻子,在怀有身孕的情况下还帮助我分担了一些家庭中的琐事,使得我的写作能够顺利完成。

另外,还要感谢华中科技大学的胡中旭博士对本书关于神经网络及强化学习部分给出的建议和支持;感谢南京大学黄继鹏对于RNN部分写诗机器人的支持;感谢格力电器大数据中心的刘艳国帮助我实现了Android相关章节代码的调试工作;感谢韦家弘同学对于RNN相关内容的帮助和支持。

除此之外,本书还参考了网上的一些图例和部分代码,由于大多无法找到其出处,所以无法一一列举,在此表示感谢。

最后还要感谢所有在本书编写过程中给予我支持和帮助的人们,正是你们的帮助才使本书得以面世。