资源名称:面向机器智能的TensorFlow实践
内容简介:
本书是一本*佳的TensorFlow入门指南。几位作者都来自研发一线,他们用自己的宝贵经验,结合众多高质量的代码,生动讲解TensorFlow的底层原理,并从实践角度介绍如何将两种常见模型——深度卷积网络、循环神经网络应用到图像理解和自然语言处理的典型任务中。此外,还介绍了在模型部署和编程中可用的诸多实用技巧。
全书分为四部分,共9章。第一部分(第1~2章)讨论TensorFlow的设计模式以及选择TensorFlow作为深度学习库的优势和面临的挑战,并给出详细的安装指南。第二部分(第3~4章)深入介绍TensorFlow API的基础知识和机器学习基础。第三部分(第5~6章)探讨如何用TensorFlow实现高级深度模型,涉及卷积神经网络(或CNN)模型和循环神经网络(或RNN)模型。第四部分(第7~8章)探讨TensorFlow API中*新推出的特性,包括如何准备用于部署的模型、一些有用的编程模式等。第9章给出一些进一步了解TensorFlow的学习资源。
作者简介:
山姆·亚伯拉罕:数据科学家、工程师,富有经验的TensorFlow贡献者。
丹尼亚尔·哈夫纳:谷歌软件工程师
埃里克·厄威特:高级软件工程师
阿里尔·斯卡尔皮内里:团队负责人,高级Java开发者
段菲,清华大学信号与信息处理专业博士,前三星电子中国研究院高级研究员,现为英特尔中国研究院高级研究员。研究方向是深度学习、计算机视觉、数据可视化。参与翻译过《机器学习》《机器学习实践:测试驱动的开发方法》《DirectX103D游戏编程深度探索》等多本图书。
资源目录:
译者序
前言
第一部分 开启TensorFlow之旅
第1章 引言2
1.1 无处不在的数据2
1.2 深度学习2
1.3 TensorFlow:一个现代的机器学习库3
1.4 TensorFlow:技术概要3
1.5 何为TensorFlow4
1.5.1 解读来自官网的单句描述4
1.5.2 单句描述未体现的内容6
1.6 何时使用TensorFlow7
1.7 TensorFlow的优势8
1.8 使用TensorFlow所面临的挑战9
1.9 高歌猛进9
第2章 安装TensorFlow10
2.1 选择安装环境10
2.2 Jupyter Notebook与matplotlib12
2.3 创建Virtualenv环境12
2.4 TensorFlow的简易安装13
2.5 源码构建及安装实例:在64位Ubuntu Linux上安装GPU版TensorFlow14
2.5.1 安装依赖库14
2.5.2 安装Bazel15
2.5.3 安装CUDA软件(仅限NVIDIA GPU)16
2.5.4 从源码构建和安装TensorFlow18
2.6 安装Jupyter Notebook20
2.7 安装matplotlib20
2.8 测试TensorFlow、Jupyter Notebook及matplotlib21
2.9 本章小结23
第二部分 TensorFlow与机器学习基础
第3章 TensorFlow基础26
3.1 数据流图简介26
3.1.1 数据流图基础26
3.1.2 节点的依赖关系29
3.2 在TensorFlow中定义数据流图33
3.2.1 构建第一个TensorFlow数据流图33
3.2.2 张量思维39
3.2.3 张量的形状43
3.2.4 TensorFlow的Operation44
3.2.5 TensorFlow的Graph对象46
3.2.6 TensorFlow Session48
3.2.7 利用占位节点添加输入52
3.2.8 Variable对象53
3.3 通过名称作用域组织数据流图56
3.4 练习:综合运用各种组件61
3.4.1 构建数据流图63
3.4.2 运行数据流图66
3.5 本章小结71
第4章 机器学习基础72
4.1 有监督学习简介72
4.2 保存训练检查点74
4.3 线性回归76
4.4 对数几率回归78
4.5 softmax分类83
4.6 多层神经网络85
4.7 梯度下降法与误差反向传播算法88
第三部分 用TensorFlow实现更高级的深度模型
第5章 目标识别与分类96
5.1 卷积神经网络97
5.2 卷积100
5.2.1 输入和卷积核100
5.2.2 跨度102
5.2.3 边界填充104
5.2.4 数据格式104
5.2.5 深入探讨卷积核105
5.3 常见层107
5.3.1 卷积层108
5.3.2 激活函数108
5.3.3 池化层111
5.3.4 归一化113
5.3.5 高级层114
5.4 图像与TensorFlow116
5.4.1 加载图像116
5.4.2 图像格式117
5.4.3 图像操作121
5.4.4 颜色127
5.5 CNN的实现129
5.5.1 Stanford Dogs数据集129
5.5.2 将图像转为TFRecord文件130
5.5.3 加载图像133
5.5.4 模型134
5.5.5 训练136
5.5.6 用TensorBoard调试滤波器137
5.6 本章小结139
第6章 循环神经网络与自然语言处理140
6.1 循环神经网络简介140
6.1.1 时序的世界140
6.1.2 近似任意程序141
6.1.3 随时间反向传播142
6.1.4 序列的编码和解码143
6.1.5 实现第一个循环神经网络145
6.1.6 梯度消失与梯度爆炸145
6.1.7 长短时记忆网络147
6.1.8 RNN结构的变种148
6.2 词向量嵌入149
6.2.1 准备维基百科语料库151
6.2.2 模型结构155
6.2.3 噪声对比分类器156
6.2.4 训练模型156
6.3 序列分类157
6.3.1 Imdb影评数据集158
6.3.2 使用词向量嵌入159
6.3.3 序列标注模型159
6.3.4 来自最后相关活性值的softmax层161
6.3.5 梯度裁剪162
6.3.6 训练模型163
6.4 序列标注164
6.4.1 OCR数据集164
6.4.2 时间步之间共享的soft-max层166
6.4.3 训练模型169
6.4.4 双向RNN171
6.5 预测编码174
6.5.1 字符级语言建模174
6.5.2 ArXiv摘要API175
6.5.3 数据预处理177
6.5.4 预测编码模型178
6.5.5 训练模型182
6.5.6 生成相似序列185
6.6 本章小结188
第四部分 其他提示、技术与特性
第7章 产品环境中模型的部署190
7.1 搭建TensorFlow服务开发环境190
7.1.1 Docker镜像190
7.1.2 Bazel工作区191
7.2 导出训练好的模型192
7.3 定义服务器接口195
7.4 实现推断服务器197
7.5 客户端应用201
7.6 产品准备203
7.7 本章小结203
第8章 辅助函数、代码结构和类204
8.1 确保目录结构存在204
8.2 下载函数204
8.3 磁盘缓存修饰器205
8.4 属性字典206
8.5 惰性属性修饰器207
8.6 覆盖数据流图修饰器209
第9章 结语:其他资源212
资源截图: