主编推荐语
TensorFlow是谷歌公司开发的深度学习框架,也是目前深度学习的主流框架之一。
内容简介
TensorFlow是谷歌公司开发的深度学习框架,也是目前深度学习的主流框架之一。本书从深度学习的基础讲起,深入TensorFlow框架原理、模型构建、源代码分析和网络实现等各个方面。全书分为基础篇、实战篇和提高篇三部分:
基础篇讲解人工智能的入门知识,深度学习的方法,TensorFlow的基础原理、系统架构、设计理念、编程模型、常用API、批标准化、模型的存储与加载、队列与线程,实现一个自定义操作,并进行TensorFlow源代码解析,介绍卷积神经网络(CNN)和循环神经网络(RNN)的演化发展及其TensorFlow实现、TensorFlow的高级框架等知识。
实战篇讲解如何用TensorFlow写一个神经网络程序并介绍TensorFlow实现各种网络(CNN、RNN和自编码网络等)并对MNIST数据集进行训练,讲解TensorFlow在人脸识别、自然语言处理、图像和语音的结合、生成式对抗网络等方面的应用。
提高篇讲解TensorFlow的分布式原理、架构、模式、API,还会介绍TensorFlow-XLA、TensorFlow-Debugger、TensorFlow和Kubernetes结合、TensorFlowOnSpark、TensorFlow移动端应用,以及TensorFlow-Serving、TensorFlow-Fold和TensorFlow计算加速等其他特性。最后,附录中列出一些可供参考的公开数据集,并结合作者的项目经验介绍项目管理的一些建议。
目录
- 版权信息
- 内容提要
- 序
- 前言
- 第一篇 基础篇
- 第1章 人工智能概述
- 1.1 什么是人工智能
- 1.2 什么是深度学习
- 1.3 深度学习的入门方法
- 1.4 什么是TensorFlow
- 1.5 为什么要学TensorFlow
- 1.5.1 TensorFlow的特性
- 1.5.2 使用TensorFlow的公司
- 1.5.3 TensorFlow的发展
- 1.6 机器学习的相关赛事
- 1.6.1 ImageNet的ILSVRC
- 1.6.2 Kaggle
- 1.6.3 天池大数据竞赛
- 1.7 国内的人工智能公司
- 1.8 小结
- 第2章 TensorFlow环境的准备
- 2.1 下载TensorFlow 1.1.0
- 2.2 基于pip的安装
- 2.2.1 Mac OS环境准备
- 2.2.2 Ubuntu/Linux环境准备
- 2.2.3 Windows环境准备
- 2.3 基于Java的安装
- 2.4 从源代码安装
- 2.5 依赖的其他模块
- 2.5.1 numpy
- 2.5.2 matplotlib
- 2.5.3 jupyter
- 2.5.4 scikit-image
- 2.5.5 librosa
- 2.5.6 nltk
- 2.5.7 keras
- 2.5.8 tflearn
- 2.6 小结
- 第3章 可视化TensorFlow
- 3.1 PlayGround
- 3.1.1 数据
- 3.1.2 特征
- 3.1.3 隐藏层
- 3.1.4 输出
- 3.2 TensorBoard
- 3.2.1 SCALARS面板
- 3.2.2 IMAGES面板
- 3.2.3 AUDIO面板
- 3.2.4 GRAPHS面板
- 3.2.5 DISTRIBUTIONS面板
- 3.2.6 HISTOGRAMS面板
- 3.2.7 EMBEDDINGS面板
- 3.3 可视化的例子
- 3.3.1 降维分析
- 3.3.2 嵌入投影仪
- 3.4 小结
- 第4章 TensorFlow基础知识
- 4.1 系统架构
- 4.2 设计理念
- 4.3 编程模型
- 4.3.1 边
- 4.3.2 节点
- 4.3.3 其他概念
- 4.4 常用API
- 4.4.1 图、操作和张量
- 4.4.2 可视化
- 4.5 变量作用域
- 4.5.1 variable_scope示例
- 4.5.2 name_scope示例
- 4.6 批标准化
- 4.6.1 方法
- 4.6.2 优点
- 4.6.3 示例
- 4.7 神经元函数及优化方法
- 4.7.1 激活函数
- 4.7.2 卷积函数
- 4.7.3 池化函数
- 4.7.4 分类函数
- 4.7.5 优化方法
- 4.8 模型的存储与加载
- 4.8.1 模型的存储与加载
- 4.8.2 图的存储与加载
- 4.9 队列和线程
- 4.9.1 队列
- 4.9.2 队列管理器
- 4.9.3 线程和协调器
- 4.10 加载数据
- 4.10.1 预加载数据
- 4.10.2 填充数据
- 4.10.3 从文件读取数据
- 4.11 实现一个自定义操作
- 4.11.1 步骤
- 4.11.2 最佳实践
- 4.12 小结
- 第5章 TensorFlow源代码解析
- 5.1 TensorFlow的目录结构
- 5.1.1 contirb
- 5.1.2 core
- 5.1.3 examples
- 5.1.4 g3doc
- 5.1.5 python
- 5.1.6 tensorboard
- 5.2 TensorFlow源代码的学习方法
- 5.3 小结
- 第6章 神经网络的发展及其TensorFlow实现
- 6.1 卷积神经网络
- 6.2 卷积神经网络发展
- 6.2.1 网络加深
- 6.2.2 增强卷积层的功能
- 6.2.3 从分类任务到检测任务
- 6.2.4 增加新的功能模块
- 6.3 MNIST的AlexNet实现
- 6.3.1 加载数据
- 6.3.2 构建网络模型
- 6.3.3 训练模型和评估模型
- 6.4 循环神经网络
- 6.5 循环神经网络发展
- 6.5.1 增强隐藏层的功能
- 6.5.2 双向化及加深网络
- 6.6 TensorFlow Model Zoo
- 6.7 其他研究进展
- 6.7.1 强化学习
- 6.7.2 深度森林
- 6.7.3 深度学习与艺术
- 6.8 小结
- 第7章 TensorFlow的高级框架
- 7.1 TFLearn
- 7.1.1 加载数据
- 7.1.2 构建网络模型
- 7.1.3 训练模型
- 7.2 Keras
- 7.2.1 Keras的优点
- 7.2.2 Keras的模型
- 7.2.3 Keras的使用
- 7.3 小结
- 第二篇 实战篇
- 第8章 第一个TensorFlow程序
- 8.1 TensorFlow的运行方式
- 8.1.1 生成及加载数据
- 8.1.2 构建网络模型
- 8.1.3 训练模型
- 8.2 超参数的设定
- 8.3 小结
- 第9章 TensorFlow在MNIST中的应用
- 9.1 MNIST数据集简介
- 9.1.1 训练集的标记文件
- 9.1.2 训练集的图片文件
- 9.1.3 测试集的标记文件
- 9.1.4 测试集的图片文件
- 9.2 MNIST的分类问题
- 9.2.1 加载数据
- 9.2.2 构建回归模型
- 9.2.3 训练模型
- 9.2.4 评估模型
- 9.3 训练过程的可视化
- 9.4 MNIST的卷积神经网络
- 9.4.1 加载数据
- 9.4.2 构建模型
- 9.4.3 训练模型和评估模型
- 9.5 MNIST的循环神经网络
- 9.5.1 加载数据
- 9.5.2 构建模型
- 9.5.3 训练数据及评估模型
- 9.6 MNIST的无监督学习
- 9.6.1 自编码网络
- 9.6.2 TensorFlow的自编码网络实现
- 9.7 小结
- 第10章 人脸识别
- 10.1 人脸识别简介
- 10.2 人脸识别的技术流程
- 10.2.1 人脸图像采集及检测
- 10.2.2 人脸图像预处理
- 10.2.3 人脸图像特征提取
- 10.2.4 人脸图像匹配与识别
- 10.3 人脸识别的分类
- 10.3.1 人脸检测
- 10.3.2 人脸关键点检测
- 10.3.3 人脸验证
- 10.3.4 人脸属性检测
- 10.4 人脸检测
- 10.4.1 LFW数据集
- 10.4.2 数据预处理
- 10.4.3 进行检测
- 10.5 性别和年龄识别
- 10.5.1 数据预处理
- 10.5.2 构建模型
- 10.5.3 训练模型
- 10.5.4 验证模型
- 10.6 小结
- 第11章 自然语言处理
- 11.1 模型的选择
- 11.2 英文数字语音识别
- 11.2.1 定义输入数据并预处理数据
- 11.2.2 定义网络模型
- 11.2.3 训练模型
- 11.2.4 预测模型
- 11.3 智能聊天机器人
- 11.3.1 原理
- 11.3.2 最佳实践
- 11.4 小结
- 第12章 图像与语音的结合
- 12.1 看图说话模型
- 12.1.1 原理
- 12.1.2 最佳实践
- 12.2 小结
- 第13章 生成式对抗网络
- 13.1 生成式对抗网络的原理
- 13.2 生成式对抗网络的应用
- 13.3 生成式对抗网络的实现
- 13.4 生成式对抗网络的改进
- 13.5 小结
- 第三篇 提高篇
- 第14章 分布式TensorFlow
- 14.1 分布式原理
- 14.1.1 单机多卡和分布式
- 14.1.2 分布式部署方式
- 14.2 分布式架构
- 14.2.1 客户端、主节点和工作节点的关系
- 14.2.2 客户端、主节点和工作节点的交互过程
- 14.3 分布式模式
- 14.3.1 数据并行
- 14.3.2 同步更新和异步更新
- 14.3.3 模型并行
- 14.4 分布式API
- 14.5 分布式训练代码框架
- 14.6 分布式最佳实践
- 14.7 小结
- 第15章 TensorFlow线性代数编译框架XLA
- 15.1 XLA的优势
- 15.2 XLA的工作原理
- 15.3 JIT编译方式
- 15.3.1 打开JIT编译
- 15.3.2 将操作符放在XLA设备上
- 15.4 JIT编译在MNIST上的实现
- 15.5 小结
- 第16章 TensorFlow Debugger
- 16.1 Debugger的使用示例
- 16.2 远程调试方法
- 16.3 小结
- 第17章 TensorFlow和Kubernetes结合
- 17.1 为什么需要Kubernetes
- 17.2 分布式TensorFlow在Kubernetes中的运行
- 17.2.1 部署及运行
- 17.2.2 其他应用
- 17.3 小结
- 第18章 TensorFlowOnSpark
- 18.1 TensorFlowOnSpark的架构
- 18.2 TensorFlowOnSpark在MNIST上的实践
- 18.3 小结
- 第19章 TensorFlow移动端应用
- 19.1 移动端应用原理
- 19.1.1 量化
- 19.1.2 优化矩阵乘法运算
- 19.2 iOS系统实践
- 19.2.1 环境准备
- 19.2.2 编译演示程序并运行
- 19.2.3 自定义模型的编译及运行
- 19.3 Android系统实践
- 19.3.1 环境准备
- 19.3.2 编译演示程序并运行
- 19.3.3 自定义模型的编译及运行
- 19.4 树莓派实践
- 19.5 小结
- 第20章 TensorFlow的其他特性
- 20.1 TensorFlow Serving
- 20.2 TensorFlow Flod
- 20.3 TensorFlow计算加速
- 20.3.1 CPU加速
- 20.3.2 TPU加速和FPGA加速
- 20.4 小结
- 第21章 机器学习的评测体系
- 21.1 人脸识别的性能指标
- 21.2 聊天机器人的性能指标
- 21.3 机器翻译的评价方法
- 21.3.1 BLEU
- 21.3.2 METEOR
- 21.4 常用的通用评价指标
- 21.4.1 ROC和AUC
- 21.4.2 AP和mAP
- 21.5 小结
- 附录A 公开数据集
- A.1 图片数据集
- A.2 人脸数据集
- A.3 视频数据集
- A.4 问答数据集
- A.5 自动驾驶数据集
- A.6 年龄、性别数据集
- 附录B 项目管理经验小谈
- B.1 管理的激进与保守问题
- B.1.1 激进派
- B.1.2 保守派
- B.1.3 保守派和激进派的区别
- B.2 公司效率损失及规避
- B.3 小结
- 欢迎来到异步社区!
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。