Tensorflow+PyTorch深度学习从算法到实战
本书以程序员所熟悉的代码方式带领程序员们进入深度学习的世界。所有的理论都有对应的可运行的代码进行说明。程序员可以通过修改和调试代码在熟悉的世界里完成向深度学习的转型。
本书兼顾了Tensorflow和PyTorch这两大流行的深度学习框架,使读者同时掌握静态计算图和动态计算图这两大流派,方便读者跟随新技术形势。同时还介绍了面向网页前端的Tensorflow.js,方便做网站的读者将深度学习与实际工作相结合。
本书独创的5-4-6学习框架也适用于Keras、cntk及padddlepaddle等框架,书中代码全面使用Python 3和ECMA Script 2017版的Javascript。
刘子瑛,阿里巴巴阿里云智能事业群OS事业部技术专家,曾就职于摩托罗拉、高通等著名外企。毕业于清华大学软件学院。长期从事操作系统和智能软件的相关开发工作。目前从事智联网汽车和智能硬件操作系统的研究和开发。
目 录
绪论?程序员为什么要学习机器学习 0.1?工业革命级的技术红利 0.2?中美两国为机器学习作背书 0.3?从编程思维向数据思维的进化 第1章?30分钟环境搭建速成 1.1?使用Anaconda搭建开发环境 1.2?使用Python自带的开发环境 1.3?从源代码搭建开发环境 第2章?深度学习5-4-6速成法 2.1?计算图模型与计算框架 2.2?五步法构造基本模型 2.3?案例教程 2.4?5-4-6速成法学习PyTorch 2.5?5-4-6速成法学习TensorFlow 2.6?在TensorFlow中使用Keras 2.7?本章小结 第3章?张量与计算图 3.1?0维张量:标量 3.2?计算图与流程控制 3.3?变量 第4章?向量与矩阵 4.1?1维张量:向量 4.2?2维张量:矩阵 4.3?n维:张量 第5章?高级矩阵编程 5.1?范数及其实现 5.2?迹运算 5.3?矩阵分解 第6章?优化方法 6.1?梯度下降的基本原理 6.2?高维条件下的梯度下降 6.3?PyTorch和TensorFlow中的梯度计算 6.4?梯度下降案例教程 6.5?优化方法进阶 第7章?深度学习基础 7.1?从回归到分类 7.2?深度学习简史 第8章?基础网络结构:卷积网络 8.1?卷积的原理与计算 8.2?池化层 8.3?激活函数 8.4?AlexNet 第9章?卷积网络图像处理进阶 9.1?小卷积核改进VGGNet 9.2?GoogLeNet 9.3?残差网络 9.4?目标检测 9.5?人脸识别 第10章?基础网络结构:循环神经网络 10.1?循环神经网络原理 10.2?实用循环神经网络:LSTM 10.3?LSTM案例教程 10.4?实用循环神经网络:GRU 10.5?双向循环神经网络 10.6?将隐藏状态串联起来 第11章?RNN在自然语言处理中的应用 11.1?文本编码:从独热编码到词向量 11.2?Char-RNN算法 11.3?Char-RNN的训练 11.4?Char-RNN的预测推理 11.5?Char-RNN完整模型 第12章?用JavaScript进行TensorFlow编程 12.1?TensorFlow.js的简介和安装 12.2?TensorFlow.js的张量操作 12.3?TensorFlow.js的常用运算 12.4?激活函数 12.5?TensorFlow.js变量 12.6?TensorFlow.js神经网络编程 12.7?TensorFlow.js实现完整模型 12.8?TensorFlow.js的后端接口 第13章?高级编程 13.1?GPU加速 13.2?生成对抗网络 13.3?Attention机制 13.4?多任务学习 第14章?超越深度学习 14.1?自动机器学习AutoML 14.2?Autokeras 14.3?Windows Subsystem for Linux 14.4?强化学习 14.5?强化学习编程 14.6?下一步的学习方法