首页>参考读物>计算机科学与技术>人工智能

TensorFlow机器学习实战指南(原书第2版)
作者 : [美] 尼克·麦克卢尔(Nick McClure) 著
译者 : 李飞 刘凯 卢建华 李静 赵秀丽 译
出版日期 : 2019-07-12
ISBN : 978-7-111-63126-2
定价 : 89.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 296
开本 : 16
原书名 : TensorFlow Machine Learning Cookbook, Second Edition
原出版社: Packt Publishing Ltd.
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书由资深数据科学家撰写,从实战角度系统讲解TensorFlow基本概念及各种应用实践。真实的应用场景和数据,丰富的代码实例,详尽的操作步骤,带领读者由浅入深系统掌握TensorFlow机器学习算法及其实现。

本书第1章和第2章介绍了关于TensorFlow使用的基础知识,后续章节则针对一些典型算法和典型应用场景进行了实现,并配有较详细的程序说明,可读性非常强。读者如果能对其中代码进行复现,则必定会对TensorFlow的使用了如指掌。

图书特色

资深数据科学家撰写,从实战角度系统讲解TensorFlow基本概念及各种应用实践
真实的应用场景和数据,丰富的代码实例,详尽的操作步骤,为你深度实践TensorFlow提供翔实指导

图书前言

2015年11月,Google公司开源TensorFlow,随后不久TensorFlow成为GitHub上最受欢迎的机器学习库。TensorFlow创建计算图、自动求导和定制化的方式使得其能够很好地解决许多不同的机器学习算法问题。
本书介绍了许多机器学习算法,将其应用到真实场景和数据中,并解释产生的结果。
本书的主要内容
第1章介绍TensorFlow的基本概念,包括张量、变量和占位符;同时展示了在TensorFlow中如何使用矩阵和各种数学运算。本章末尾讲述如何访问本书所需的数据源。
第2章介绍如何在计算图中连接第1章介绍的所有算法组件,创建一个简单的分类器。接着,介绍计算图、损失函数、反向传播和训练模型。
第3章重点讨论使用TensorFlow实现各种线性回归算法,比如,戴明回归、lasso回归、岭回归、弹性网络回归和逻辑回归,也展示了如何在TensorFlow计算图中实现每种回归算法。
第4章介绍支持向量机(SVM)算法,展示如何在TensorFlow中实现线性SVM算法、非线性SVM算法和多分类SVM算法。
第5章展示如何使用数值度量、文本度量和归一化距离函数实现最近邻域法。我们使用最近邻域法进行地址间的记录匹配和MNIST数据库中手写数字的分类。
第6章讲述如何使用TensorFlow实现神经网络算法,包括操作门和激励函数的概念。随后展示一个简单的神经网络并讨论如何建立不同类型的神经网络层。本章末尾通过神经网络算法教TensorFlow玩井字棋游戏。
第7章阐述借助TensorFlow实现的各种文本处理算法。我们展示如何实现文本的“词袋”和TF-IDF算法。然后介绍CBOW和skip-gram模型的神经网络文本表示方式,并对于Word2Vec和Doc2Vec用这些方法来做预测,例如预测一个文本消息是否为垃圾信息。
第8章扩展神经网络算法,说明如何借助卷积神经网络(CNN)算法在图像上应用神经网络算法。我们展示如何构建一个简单的CNN进行MNIST数字识别,并扩展到CIFAR-10任务中的彩色图片,也阐述了如何针对自定义任务扩展之前训练的图像识别模型。本章末尾详细解释TensorFlow实现的图像风格和Deep-Dream算法。
第9章解释在TensorFlow中如何实现循环神经网络(RNN)算法,展示如何进行垃圾邮件预测和在莎士比亚文本样本集上扩展RNN模型生成文本。接着训练Seq2Seq模型实现德语-英语的翻译。本章末尾展示如何用孪生RNN模型进行地址记录匹配。
第10章介绍TensorFlow产品级用例和开发提示,同时介绍如何利用多处理设备(比如,GPU)和在多个设备上实现分布式TensorFlow。
第11章展示TensorFlow如何实现k-means算法、遗传算法和求解常微分方程(ODE),还介绍了Tensorboard的各种用法和如何查看计算图指标。
阅读本书前的准备
书中的章节都会使用TensorFlow,其官网为https://www.tensorflow.org/,它是基于Python 3(https://www.python.org/downloads/)编写的。大部分章节需要访问从网络中下载的数据集。
本书的目标读者
本书主要是为了帮助那些想要同时了解TensorFlow和主流机器学习算法应用策略的业余爱好者。程序员和机器学习发烧友。阅读本书,首先要有基本的数学知识和Python编程技巧。本书的主要目的在于介绍TensorFlow和提供基于TensorFlow的各种机器学习算法优秀案例,不涉及数学、机器学习以及Python编程的具体问题。更为恰当的描述是,本书是对这三个方面的宏观介绍。鉴于这一原因,读者可能会觉得本书中有的内容过于简单,有的过于烦琐。如果读者具有坚实的机器学习基础,通常会觉得书中的TensorFlow代码对自己帮助较大;如果读者善于编写Python程序,那么可能会对书中的代码注释感兴趣。如果读者想要深入研究某些特定领域,可以从许多章节末尾的“延伸学习”部分所提供的参考文献和资源中了解更多信息。
模块说明
在本书中,你会频繁看到开始、动手做、工作原理、延伸学习和参考这几个模块。
为了系统地学习相关技术,下面简单解释一下:
开始
该节告诉读者该技术的内容,描述如何准备软件或者前期的准备工作。
动手做
具体的操作步骤。
工作原理
详细解释前一节发生了什么。
延伸学习
附加资源,以供读者延伸学习。
参考
提供有用的链接和有帮助的资源信息。
下载示例代码
读者可登录华章网站(www.hzbook.com)下载本书示例代码文件。

上架指导

计算机\人工智能

封底文字

TensorFlow是开源机器学习库。本书将教你如何使用TensorFlow进行复杂数据计算,让你对数据有更深刻的理解。书中循序渐进地讲解了TensorFlow的变量、矩阵和各种数据源等基本概念,深度剖析线性回归、支持向量机、最近邻域、神经网络和自然语言处理等算法,并结合丰富的实例详细讲解情感分析、回归分析、聚类分析、神经网络和深度学习实战等应用。此外,本书还给出了TensorFlow产品级应用的最佳实践和扩展用法,可以帮助你由浅入深地掌握机器学习核心思维,构建起立体完备的机器学习概念体系。


通过阅读本书,你将:
熟悉TensorFlow模块中的基本组件
掌握TensorFlow的线性回归技术
学习SVM算法及其实践
使用神经网络优化模型预测
将NLP和情感分析应用到你的数据中
通过实践掌握CNN和RNN
使用梯度提升随机森林算法进行预测
学习TensorFlow产品化

作者简介

[美] 尼克·麦克卢尔(Nick McClure) 著:尼克·麦克卢尔(Nick McClure),资深数据科学家,目前就职于美国西雅图PayScale公司,曾经在Zillow 公司和Caesar''s Entertainment公司工作,获得蒙大拿大学和圣本尼迪克学院与圣约翰大学的应用数学专业学位。
他热衷于数据分析、机器学习和人工智能。Nick 有时会把想法写成博客(http://fromdata.org/)或者发推特(@nfmcclure)。

译者序

经过了几年的发展,TensorFlow已经成为最受欢迎的开源机器学习框架之一,活跃的社区也加速了它的普及程度。它快速、灵活并能够大规模部署于工业生产环境,让每个开发者和研究者都能够方便地使用人工智能来解决多种多样的问题;并且它由谷歌开发、维护,有力地保障了其持续性支持与开发。
原著第1版颇受欢迎,第2版在第1版的基础之上做了一些微调,并在第10章与第11章增加了部分内容,进一步完善了本书的体系。第1版翻译水平颇高,为第2版的翻译打下了良好的基础。
本书第1章和第2章介绍了关于TensorFlow使用的基础知识,后续章节则针对一些典型算法和典型应用场景进行了实现,并配有较详细的程序说明,可读性非常强。读者如果能对其中代码进行复现,则必定会对TensorFlow的使用了如指掌。
本书翻译工作由海军航空大学和鲁东大学的机器学习研究者共同完成。其中第1~5章由刘凯博士完成,第6章由赵秀丽副教授完成,第7章由卢建华教授完成,第8~11章由李飞博士完成,鲁东大学的李静老师对全书进行了翻译风格上的统一和纠错。特别感谢刘锦涛博士对本书翻译工作的关心与支持,感谢第1版译者曾益强老师打下的基础。
由于译者水平有限,错误和不妥之处在所难免,衷心希望各位读者批评指正。

2019年3月
译者

图书目录

译者序
审校者简介
前言
第1章 TensorFlow基础 1
1.1 简介 1
1.2 TensorFlow如何工作 1
1.2.1 开始 1
1.2.2 动手做 2
1.2.3 工作原理 3
1.2.4 参考 3
1.3 声明变量和张量 4
1.3.1 开始 4
1.3.2 动手做 4
1.3.3 工作原理 6
1.3.4 延伸学习 6
1.4 使用占位符和变量 6
1.4.1 开始 6
1.4.2 动手做 6
1.4.3 工作原理 7
1.4.4 延伸学习 7
1.5 操作(计算)矩阵 8
1.5.1 开始 8
1.5.2 动手做 8
1.5.3 工作原理 10
1.6 声明操作 10
1.6.1 开始 10
1.6.2 动手做 10
1.6.3 工作原理 12
1.6.4 延伸学习 12
1.7 实现激励函数 12
1.7.1 开始 12
1.7.2 动手做 12
1.7.3 工作原理 14
1.7.4 延伸学习 14
1.8 读取数据源 14
1.8.1 开始 15
1.8.2 动手做 15
1.8.3 工作原理 18
1.8.4 参考 18
1.9 其他资源 19
1.9.1 开始 19
1.9.2 动手做 19
第2章 TensorFlow进阶 20
2.1 简介 20
2.2 计算图中的操作 20
2.2.1 开始 20
2.2.2 动手做 21
2.2.3 工作原理 21
2.3 TensorFlow的嵌入Layer 21
2.3.1 开始 21
2.3.2 动手做 22
2.3.3 工作原理 22
2.3.4 延伸学习 22
2.4 TensorFlow的多层Layer 23
2.4.1 开始 23
2.4.2 动手做 23
2.4.3 工作原理 24
2.5 TensorFlow实现损失函数 24
2.5.1 开始 25
2.5.2 动手做 26
2.5.3 工作原理 28
2.5.4 延伸学习 28
2.6 TensorFlow实现反向传播 29
2.6.1 开始 29
2.6.2 动手做 30
2.6.3 工作原理 33
2.6.4 延伸学习 33
2.6.5 参考 33
2.7 TensorFlow实现批量训练和随机训练 34
2.7.1 开始 34
2.7.2 动手做 34
2.7.3 工作原理 35
2.7.4 延伸学习 36
2.8 TensorFlow实现创建分类器 36
2.8.1 开始 36
2.8.2 动手做 37
2.8.3 工作原理 38
2.8.4 延伸学习 39
2.8.5 参考 39
2.9 TensorFlow实现模型评估 39
2.9.1 开始 39
2.9.2 动手做 40
2.9.3 工作原理 43
第3章 基于TensorFlow的线性回归 44
3.1 简介 44
3.2 用TensorFlow求逆矩阵 44
3.2.1 开始 45
3.2.2 动手做 45
3.2.3 工作原理 46
3.3 用TensorFlow实现矩阵分解 46
3.3.1 开始 46
3.3.2 动手做 46
3.3.3 工作原理 47
3.4 用TensorFlow实现线性回归算法 47
3.4.1 开始 48
3.4.2 动手做 48
3.4.3 工作原理 50
3.5 理解线性回归中的损失函数 51
3.5.1 开始 51
3.5.2 动手做 51
3.5.3 工作原理 52
3.5.4 延伸学习 53
3.6 用TensorFlow实现戴明回归算法 53
3.6.1 开始 54
3.6.2 动手做 54
3.6.3 工作原理 55
3.7 用TensorFlow实现lasso回归和岭回归算法 56
3.7.1 开始 56
3.7.2 动手做 56
3.7.3 工作原理 58
3.7.4 延伸学习 58
3.8 用TensorFlow实现弹性网络回归算法 58
3.8.1 开始 58
3.8.2 动手做 58
3.8.3 工作原理 60
3.9 用TensorFlow实现逻辑回归算法 60
3.9.1 开始 60
3.9.2 动手做 61
3.9.3 工作原理 63
第4章 基于TensorFlow的支持向量机 65
4.1 简介 65
4.2 线性支持向量机的使用 67
4.2.1 开始 67
4.2.2 动手做 67
4.2.3 工作原理 70
4.3 弱化为线性回归 71
4.3.1 开始 71
4.3.2 动手做 72
4.3.3 工作原理 74
4.4 TensorFlow上核函数的使用 75
4.4.1 开始 75
4.4.2 动手做 76
4.4.3 工作原理 80
4.4.4 延伸学习 80
4.5 用TensorFlow实现非线性支持向量机 80
4.5.1 开始 80
4.5.2 动手做 80
4.5.3 工作原理 83
4.6 用TensorFlow实现多类支持向量机 83
4.6.1 开始 83
4.6.2 动手做 84
4.6.3 工作原理 87
第5章 最近邻域法 88
5.1 简介 88
5.2 最近邻域法的使用 89
5.2.1 开始 89
5.2.2 动手做 89
5.2.3 工作原理 92
5.2.4 延伸学习 92
5.3 如何度量文本距离 92
5.3.1 开始 93
5.3.2 动手做 93
5.3.3 工作原理 95
5.3.4 延伸学习 95
5.4 用TensorFlow实现混合距离计算 95
5.4.1 开始 96
5.4.2 动手做 96
5.4.3 工作原理 98
5.4.4 延伸学习 98
5.5 用TensorFlow实现地址匹配 99
5.5.1 开始 99
5.5.2 动手做 99
5.5.3 工作原理 101
5.6 用TensorFlow实现图像识别 102
5.6.1 开始 102
5.6.2 动手做 102
5.6.3 工作原理 104
5.6.4 延伸学习 105
第6章 神经网络算法 106
6.1 简介 106
6.2 用TensorFlow实现门函数 107
6.2.1 开始 107
6.2.2 动手做 108
6.2.3 工作原理 110
6.3 使用门函数和激励函数 110
6.3.1 开始 111
6.3.2 动手做 111
6.3.3 工作原理 113
6.3.4 延伸学习 113
6.4 用TensorFlow实现单层神经网络 114
6.4.1 开始 114
6.4.2 动手做 114
6.4.3 工作原理 116
6.4.4 延伸学习 117
6.5 用TensorFlow实现神经网络常见层 117
6.5.1 开始 117
6.5.2 动手做 117
6.5.3 工作原理 122
6.6 用TensorFlow实现多层神经网络 123
6.6.1 开始 123
6.6.2 动手做 123
6.6.3 工作原理 127
6.7 线性预测模型的优化 128
6.7.1 开始 128
6.7.2 动手做 128
6.7.3 工作原理 131
6.8 用TensorFlow基于神经网络实现井字棋 132
6.8.1 开始 133
6.8.2 动手做 134
6.8.3 工作原理 139
第7章 自然语言处理 140
7.1 简介 140
7.2 词袋的使用 141
7.2.1 开始 141
7.2.2 动手做 142
7.2.3 工作原理 146
7.2.4 延伸学习 146
7.3 用TensorFlow实现TF-IDF算法 146
7.3.1 开始 146
7.3.2 动手做 147
7.3.3 工作原理 150
7.3.4 延伸学习 151
7.4 用TensorFlow实现skip-gram模型 151
7.4.1 开始 151
7.4.2 动手做 152
7.4.3 工作原理 158
7.4.4 延伸学习 158
7.5 用TensorFlow实现CBOW词嵌入模型 158
7.5.1 开始 158
7.5.2 动手做 159
7.5.3 工作原理 163
7.5.4 延伸学习 163
7.6 使用TensorFlow的Word2Vec预测 163
7.6.1 开始 163
7.6.2 动手做 163
7.6.3 工作原理 168
7.6.4 延伸学习 168
7.7 用TensorFlow实现基于Doc2Vec的情感分析 168
7.7.1 开始 168
7.7.2 动手做 169
7.7.3 工作原理 175
第8章 卷积神经网络 176
8.1 简介 176
8.2 用TensorFlow实现简单的CNN 177
8.2.1 开始 177
8.2.2 动手做 177
8.2.3 工作原理 182
8.2.4 延伸学习 182
8.2.5 参考 183
8.3 用TensorFlow实现进阶的CNN 183
8.3.1 开始 183
8.3.2 动手做 183
8.3.3 工作原理 189
8.3.4 参考 190
8.4 再训练已有的CNN模型 190
8.4.1 开始 190
8.4.2 动手做 191
8.4.3 工作原理 193
8.4.4 参考 193
8.5 用TensorFlow实现图像风格迁移 193
8.5.1 开始 194
8.5.2 动手做 194
8.5.3 工作原理 199
8.5.4 参考 199
8.6 用TensorFlow实现DeepDream 199
8.6.1 开始 199
8.6.2 动手做 199
8.6.3 延伸学习 204
8.6.4 参考 204
第9章 循环神经网络 205
9.1 简介 205
9.2 用TensorFlow实现RNN模型进行垃圾邮件预测 206
9.2.1 开始 206
9.2.2 动手做 206
9.2.3 工作原理 211
9.2.4 延伸学习 211
9.3 用TensorFlow实现LSTM模型 211
9.3.1 开始 211
9.3.2 动手做 212
9.3.3 工作原理 218
9.3.4 延伸学习 218
9.4 TensorFlow堆叠多层LSTM 219
9.4.1 开始 219
9.4.2 动手做 219
9.4.3 工作原理 221
9.5 用TensorFlow实现Seq2Seq翻译模型 221
9.5.1 开始 221
9.5.2 动手做 222
9.5.3 工作原理 232
9.5.4 延伸学习 232
9.6 TensorFlow训练孪生RNN度量相似度 232
9.6.1 开始 232
9.6.2 动手做 233
9.6.3 延伸学习 238
第10章 TensorFlow产品化 239
10.1 简介 239
10.2 TensorFlow的单元测试 239
10.2.1 开始 239
10.2.2 工作原理 244
10.3 TensorFlow的多设备使用 244
10.3.1 开始 244
10.3.2 动手做 245
10.3.3 工作原理 246
10.3.4 延伸学习 246
10.4 分布式TensorFlow实践 246
10.4.1 开始 247
10.4.2 动手做 247
10.4.3 工作原理 248
10.5 TensorFlow产品化开发提示 248
10.5.1 开始 248
10.5.2 动手做 248
10.5.3 工作原理 250
10.6 TensorFlow产品化的实例 250
10.6.1 开始 250
10.6.2 动手做 250
10.6.3 工作原理 253
10.7 TensorFlow服务部署 253
10.7.1 开始 253
10.7.2 动手做 253
10.7.3 工作原理 256
10.7.4 延伸学习 257
第11章 TensorFlow的进阶应用 258
11.1 简介 258
11.2 TensorFlow可视化:Tensorboard 258
11.2.1 开始 258
11.2.2 动手做 259
11.2.3 延伸学习 261
11.3 用TensorFlow实现遗传算法 263
11.3.1 开始 263
11.3.2 动手做 264
11.3.3 工作原理 266
11.3.4 延伸学习 266
11.4 用TensorFlow实现k-means聚类算法 267
11.4.1 开始 267
11.4.2 动手做 267
11.4.3 延伸学习 270
11.5 用TensorFlow求解常微分方程组 270
11.5.1 开始 271
11.5.2 动手做 271
11.5.3 工作原理 272
11.5.4 参考 272
11.6 用TensorFlow实现随机森林算法 273
11.6.1 开始 273
11.6.2 动手做 273
11.6.3 工作原理 276
11.6.4 参考 276
11.7 将Keras作为TensorFlow API使用 277
11.7.1 开始 277
11.7.2 动手做 277
11.7.3 工作原理 280
11.7.4 参考 281

教学资源推荐
作者: [意]迪诺·埃斯波西托(Dino Esposito) 弗朗西斯科·埃斯波西托(Francesco Esposito) 著
作者: [美]马修 T.梅森(Matthew T. Mason)著
作者: 赵宏 主编于刚 吴美学 张浩然 屈芳瑜 王鹏 参编
作者: 黄翰 郝志峰 著
参考读物推荐
作者: 索信达控股 邵平 杨健颖 苏思达 等 著
作者: 吴茂贵 郁明敏 杨本法 李涛 张粤磊 著