TensorFlow进阶指南:基础、算法与应用
  • 推荐1
  • 收藏5
  • 浏览2.2K

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

黄鸿波 (作者)  孙学瑛 (责任编辑)

  • 丛  书:博文视点AI系列
  • 书  号:978-7-121-34565-4
  • 页  数:372
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:孙学瑛
电子书 ¥69.00
购买电子书
纸质版 ¥99.00
本书是由人工智能一线从业专家根据自己日常工作的体会与经验总结而成的,在对TensorFlow的基础知识、环境搭建、神经网络、常用技术的详细讲解当中穿插了自己实战的经验与教训。更与众不同的是,本书详细地解析了使用TensorFlow进行深度学习领域中常用模型的搭建、调参和部署整个流程,以及数据集的使用方法,能够帮助您快速理解和掌握TensorFlow相关技术,最后还用实战项目帮助您快速地学会TensorFlow开发,并使用TensorFlow技术来解决实际问题。
本书代码主要是在1.6版本的基础上进行开发的,同时兼容1.2~1.10的版本,并已得到验证。本书主要面向对TensorFlow、深度学习、人工智能具有强烈兴趣且希望尽快入门的相关从业人员、高校相关专业的教育工作者和在校学生,以及正在从事深度学习工作且希望深入的数据科学家、软件工程师、大数据平台工程师、项目管理者等。
TensorFlow实践经验之作,人工智能技术基础读本,轻松搞懂GAN\CNN\RNN等各式神经网络,真正完成AI从想法到产品的全过程
黄鸿波,珠海金山办公软件有限公司(WPS)人工智能领域专家,高级算法工程师,拥有多年软件开发经验。曾在格力电器股份有限公司大数据中心担任人工智能领域专家,且在多家公司担任过高级工程师,技术经理,技术总监等职务。曾带领团队开发过基于人脸识别技术的智能支付系统、推荐系统、知识图谱、智能问答系统等。擅长数据挖掘、机器学习、移动开发等专业领域,并拥有丰富的实战经验。
自从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相关内容的帮助和支持。
除此之外,本书还参考了网上的一些图例和部分代码,由于大多无法找到其出处,所以无法一一列举,在此表示感谢。
最后还要感谢所有在本书编写过程中给予我支持和帮助的人们,正是你们的帮助才使本书得以面世。
读者服务
轻松注册成为博文视点社区用户(www.broadview.com.cn),扫码直达本书页面。
下载资源:本书如提供示例代码及资源文件,均可在 下载资源 处下载。
提交勘误:您对书中内容的修改意见可在 提交勘误 处提交,若被采纳,将获赠博文视点社区积分(在您购买电子书时,积分可用来抵扣相应金额)。
交流互动:在页面下方 读者评论 处留下您的疑问或观点,与我们和其他读者一同学习交流。
页面入口:http://www.broadview.com.cn/34565

目录

第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

读者评论

  • http://www.broadview.com.cn/book/120 建议一起参考这篇书中的代码

    zzzzzz发表于 2019/6/5 10:15:28
  • 代码量有点少

    zzzzzz发表于 2019/6/5 10:10:12
  • 书中的代码错误太多,作者肯定没有运行代码,书的页面入口显示“网页不存在”。

    jiahuichen发表于 2019/5/13 1:24:44
    • 您好,请问是在哪个页面入口提示网页不存在。

      黄鸿波发表于 2019/5/13 9:36:42
    • @黄鸿波 您好,不好意思,之前看的下载资源没有,后来登陆上来看有了

      jiahuichen发表于 2019/6/12 0:18:23
    • 另外还想问下作者,提供的代码是不是不全呢,代码只到第九章,第十章开始的代码没有吧

      jiahuichen发表于 2019/6/12 0:19:23
  • 书还可以,但是hello world后面的第一个例子MNIST就通不过,里面错误很多,有些可以修掉,但有的就没办法了。比如:

    train_step = tf.train_GradientDescentOptimizer(0.01).minimize(cross_entropy)

    这个应该是:

    train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)

    程序中sess没有定义,应该增加:sess = tf.Session()

    我所能找到的都修完,程序仍然报错:

    tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value Variable_1

    发现是没有调用sess.run(init)。我怀疑,作者是不是故意弄了很多错误,以便读者在debug过程中学习?

    我都没有动力提交勘误了。读到现在发现很多个,前面有lim h’(x),下面的变量是n,应该是x。

    编辑有没有审阅啊???

    xrfang发表于 2019/4/9 11:19:18
    • 赞一个,认真运行过书中的代码,认真debug。

      jiahuichen发表于 2019/5/13 1:33:23
    • 您好,确实有一些代码问题,这个代码问题在附件的代码包中已经修改。

      黄鸿波发表于 2019/5/13 9:37:20
  • 代码在哪里下载

    Sherry_Liu发表于 2019/1/17 20:56:52

下载资源

电子书版本

  • Epub

推荐用户

同系列书

  • 深度学习之美:AI时代的数据处理与最佳实践

    张玉宏 (作者)

    深度学习是人工智能的前沿技术。本书深入浅出地介绍了深度学习的相关理论和实践,全书共分16章,采用理论和实践双主线写作方式。第1章给出深度学习的大图。第2章和第3...

    ¥79.00
  • 强化学习精要:核心算法与TensorFlow实现

    冯超 (作者)

    本书从学习强化学习必备的基础知识讲起(基础数学知识+神经网络+TensorFlow),过度到强化学习关注的经典算法,最后讲解一些前沿的强化学习方法。...

    ¥50.00
  • 深度学习之PyTorch实战计算机视觉

    唐进民 (作者)

    计算机视觉、自然语言处理和语音识别是目前深度学习领域很热门的三大应用方向,本书旨在帮助零基础或基础较为薄弱的读者入门深度学习,达到能够独立使用深度学习知识处理计...

    ¥49.00
  • TensorFlow进阶指南:基础、算法与应用

    黄鸿波 (作者)

    本书是由人工智能一线从业专家根据自己日常工作的体会与经验总结而成的,在对TensorFlow的基础知识、环境搭建、神经网络、常用技术的详细讲解当中穿插了自己实战...

    ¥69.00

相关图书

实用推荐系统

Kim Falk (作者) 李源 朱罡罡 温睿 (译者)

要构建一个实用的“智能”推荐系统,不仅需要有好的算法,还需要了解接收推荐的用户。本书分为两部分,第一部分侧重于基础架构,主要介绍推荐系统的工作原理,展示如何创建...

¥119.00

集成学习:基础与算法

Zhi-Hua Zhou (作者) 李楠 (译者)

集成学习方法是一类先进的机器学习方法,这类方法训练多个学习器并将它们结合起来解决一个问题,在实践中获得了巨大成功。<br>全书分为三部分。第一部分主要介绍集成学...

¥89.00

深度学习核心技术与实践

邓澍军 (作者)

本书主要介绍深度学习的核心算法,以及在计算机视觉、语音识别、自然语言处理中的相关应用。本书的作者们都是业界第一线的深度学习从业者,所以书中所写内容和业界联系紧密...

¥79.00

Java微服务实战

赵计刚 (作者)

本书分为三部分:基础框架篇(1~6章)、服务框架篇(7~10章)、监控部署篇(11~13章),由浅入深来讲解微服务的相关技术。基础框架篇从微服务架构的基本概念与...

¥39.00

深度学习入门之PyTorch

廖星宇 (作者)

深度学习如今已经成为了科技领域最炙手可热的技术,在本书中,我们将帮助你入门深度学习的领域。本书将从人工智能的介绍入手,了解机器学习和深度学习的基础理论,并学习如...

¥49.00

套路!机器学习:北美数据科学家的私房课

林荟 (作者)

数据科学家目前是北美最热门的职业之一,平均年薪突破10万美元。但数据科学并不是一个低门槛的行业,除了对数学、统计、计算机等相关领域的技术要求以外,还要相关应用领...

¥68.00