人工智能
类型
可以朗读
语音朗读
106千字
字数
2019-08-01
发行日期
展开全部
主编推荐语
本书详尽介绍深度学习相关的基本原理与使用TensorFlow、PyTorch两大主流框架的开发基础知识和基本技术。
内容简介
初学者面对深度学习望而却步的主要原因是认为入门门槛太高,需要较多的算法基础训练。针对此问题,本书原创了5-4-6学习模型提纲挈领地降低学习曲线,并通过将知识点和难点分散到代码中的方式让读者以熟悉的方式迅速入门,并且为进一步学习打下坚实的基础。同时,本书也介绍了AutoML和深度强化学习等新技术,帮助读者开阔眼界。
目录
- 版权信息
- 内容提要
- 前言
- 绪论 程序员为什么要学习机器学习
- 0.1 工业革命级的技术红利
- 0.2 中美两国为机器学习作背书
- 0.3 从编程思维向数据思维的进化
- 第1章 30分钟环境搭建速成
- 1.1 使用Anaconda搭建开发环境
- 1.1.1 Python语言的优势
- 1.1.2 安装Anaconda
- 1.1.3 在Anaconad环境下安装TensorFlow
- 1.1.4 在Anaconda环境下安装PyTorch
- 1.1.5 Anaconda环境下安装Keras
- 1.2 使用Python自带的开发环境
- 1.2.1 在Mac OS平台搭建深度学习开发环境
- 1.2.2 在Linux平台搭建深度学习开发环境
- 1.2.3 Windows系统下使用pip搭建环境
- 1.2.4 通过Virtualenv来管理Python环境
- 1.2.5 依赖包简介
- 1.3 从源代码搭建开发环境
- 1.3.1 编译TensorFlow
- 1.3.2 编译PyTorch
- 第2章 深度学习5-4-6速成法
- 2.1 计算图模型与计算框架
- 2.2 五步法构造基本模型
- 2.2.1 4种基本元素
- 2.2.2 6种基本层模型
- 2.2.3 过程化方法构造网络模型
- 2.2.4 函数式方法构造网络模型
- 2.2.5 模型的编译、训练、评估和预测
- 2.3 案例教程
- 2.3.1 解决实际问题三步法
- 2.3.2 独热(one-hot)编码
- 2.3.3 全连接神经网络编程
- 2.3.4 进化:卷积神经网络编程
- 2.4 5-4-6速成法学习PyTorch
- 2.4.1 PyTorch的建模过程
- 2.4.2 训练和验证
- 2.4.3 进阶:PyTorch卷积神经网络
- 2.5 5-4-6速成法学习TensorFlow
- 2.5.1 TensorFlow的建模过程
- 2.5.2 TensorFlow的训练、评估和预测
- 2.5.3 TensorFlow的完整代码
- 2.6 在TensorFlow中使用Keras
- 2.7 本章小结
- 第3章 张量与计算图
- 3.1 0维张量:标量
- 3.1.1 TensorFlow的数据类型
- 3.1.2 PyTorch的数据类型
- 3.1.3 标量算术运算
- 3.1.4 Tensor与NumPy类型的转换
- 3.2 计算图与流程控制
- 3.2.1 静态计算图与TensorFlow
- 3.2.2 动态计算图与PyTorch的流程控制
- 3.3 变量
- 3.3.1 TensorFlow的占位符与变量
- 3.3.2 TensorFlow变量的保存和加载
- 3.3.3 PyTorch的变量
- 第4章 向量与矩阵
- 4.1 1维张量:向量
- 4.1.1 快速生成向量的方法
- 4.1.2 向量的操作
- 4.1.3 向量计算
- 4.1.4 PyTorch的其他向量操作
- 4.2 2维张量:矩阵
- 4.2.1 矩阵初始化
- 4.2.2 矩阵的转置
- 4.2.3 矩阵运算
- 4.2.4 逆矩阵
- 4.2.5 PyTorch的其他矩阵功能
- 4.3 n维:张量
- 4.3.1 改变张量的形状
- 4.3.2 张量的拼接
- 4.3.3 读取某一维
- 第5章 高级矩阵编程
- 5.1 范数及其实现
- 5.1.1 欧几里得距离
- 5.1.2 范数的定义
- 5.1.3 范数的推广
- 5.2 迹运算
- 5.2.1 迹运算的定义
- 5.2.2 矩阵转置后迹不变
- 5.2.3 用迹运算定义Frobenius范数
- 5.3 矩阵分解
- 5.3.1 特征向量和特征值
- 5.3.2 特征分解
- 5.3.3 奇异值分解
- 5.3.4 Moore-Penrose广义逆
- 第6章 优化方法
- 6.1 梯度下降的基本原理
- 6.1.1 从画图说起
- 6.1.2 通过迭代求函数极值
- 6.1.3 梯度下降
- 6.2 高维条件下的梯度下降
- 6.2.1 进入第三维
- 6.2.2 高维引入的新问题
- 6.2.3 矩阵的梯度
- 6.3 PyTorch和TensorFlow中的梯度计算
- 6.3.1 PyTorch中的梯度
- 6.3.2 PyTorch自动求导进阶:函数与自变量的解耦
- 6.3.3 TensorFlow中的梯度
- 6.4 梯度下降案例教程
- 6.4.1 梯度下降在线性回归中的应用
- 6.4.2 PyTorch中的梯度下降
- 6.4.3 模块化的PyTorch线性回归写法
- 6.5 优化方法进阶
- 6.5.1 随机梯度下降
- 6.5.2 优化方法进化之一:动量方法
- 6.5.3 优化方法进化之二:自适应方法
- 6.5.4 自适应与动量结合
- 6.5.5 优化方法小结
- 第7章 深度学习基础
- 7.1 从回归到分类
- 7.1.1 值不重要,重要的是位置
- 7.1.2 二分类问题
- 7.2 深度学习简史
- 7.2.1 从机器学习流派说起
- 7.2.2 M-P神经元模型
- 7.2.3 感知机
- 7.2.4 人工神经网络第二次高潮和低谷
- 7.2.5 深度学习时代
- 第8章 基础网络结构:卷积网络
- 8.1 卷积的原理与计算
- 8.1.1 卷积原理
- 8.1.2 填充Padding
- 8.1.3 步幅Stride
- 8.1.4 卷积用TensorFlow实现
- 8.1.5 卷积的PyTorch实现
- 8.2 池化层
- 8.2.1 池化层原理
- 8.2.2 TensorFlow池化层编程
- 8.2.3 PyTorch池化层编程
- 8.2.4 平均池化
- 8.3 激活函数
- 8.3.1 ReLU
- 8.3.2 ReLU6
- 8.3.3 Leaky ReLU
- 8.3.4 ELU
- 8.3.5 SELU
- 8.3.6 PReLU
- 8.4 AlexNet
- 8.4.1 AlexNet的网络结构初探
- 8.4.2 AlexNet的创新点
- 8.4.3 AlexNet的完整搭建
- 8.4.4 AlexNet的演进
- 第9章 卷积网络图像处理进阶
- 9.2 GoogLeNet
- 9.2.1 Inception的结构
- 9.2.2 GoogLeNet的结构
- 9.2.3 Inception的演进
- 9.3 残差网络
- 9.3.1 残差网络
- 9.3.2 DenseNet
- 9.4 目标检测
- 9.4.1 传统图像识别方法与R-CNN算法
- 9.4.2 第一次改进:空间金字塔池化卷积网络
- 9.4.3 第二次改进:不要支持向量机分类
- 9.4.4 第三次改进:区域提案网络
- 9.4.5 语义分割
- 9.5 人脸识别
- 9.5.1 P-Net
- 9.5.2 R-Net
- 9.5.3 O-Net
- 第10章 基础网络结构:循环神经网络
- 10.1 循环神经网络原理
- 10.1.1 循环神经网络的结构
- 10.1.2 BPTT算法及其挑战
- 10.2 实用循环神经网络:LSTM
- 10.2.1 LSTM的原理
- 10.2.2 LSTM编程
- 10.3 LSTM案例教程
- 10.3.1 用LSTM来处理MNIST图像识别
- 10.3.2 用LSTM处理MNIST的完整代码
- 10.4 实用循环神经网络:GRU
- 10.4.1 GRU原理
- 10.4.2 GRU编程
- 10.5 双向循环神经网络
- 10.5.1 双向循环神经网络的搭建
- 10.5.2 双向神经网络的完整例程
- 10.6 将隐藏状态串联起来
- 10.6.1 带状态输入的模型
- 10.6.2 带状态输入的MNIST完整代码
- 第11章 RNN在自然语言处理中的应用
- 11.1 文本编码:从独热编码到词向量
- 9.1 小卷积核改进VGGNet
- 9.1.1 VGGNet的原理
- 9.1.2 VGGNet-A级网络
- 9.1.3 带LRN的VGGNet-A级网络
- 9.1.4 VGGNet-B级网络
- 9.1.5 1*1的卷积核的妙用
- 9.1.6 用数据来配置网络
- 11.2 Char-RNN算法
- 11.2.1 Char-RNN的概念
- 11.2.2 Char-RNN的原理
- 11.2.3 向量编码
- 11.2.4 随机选取一段测试文本
- 11.3 Char-RNN的训练
- 11.3.1 用于Char-RNN的LSTM网络
- 11.3.2 训练过程
- 11.4 Char-RNN的预测推理
- 11.4.1 温度的作用
- 11.4.2 温度的计算
- 11.4.3 生成部分的完整代码
- 11.5 Char-RNN完整模型
- 第12章 用JavaScript进行TensorFlow编程
- 12.1 TensorFlow.js的简介和安装
- 12.1.1 TensorFlow.js的安装
- 12.1.2 编译TensorFlow.js源代码
- 12.1.3 运行第一个TensorFlow.js程序
- 12.1.4 TensorFlow.js用TypeScript写成
- 12.2 TensorFlow.js的张量操作
- 12.2.1 TensorFlow.js的数据类型
- 12.2.2 TensorFlow.js张量的初始化
- 12.2.3 TensorFlow.js张量拼接
- 12.3 TensorFlow.js的常用运算
- 12.3.1 算术运算
- 12.3.2 数学函数
- 12.3.3 矩阵运算
- 12.3.4 生成随机数
- 12.4 激活函数
- 12.4.1 sigmod和tanh
- 12.4.2 ReLU激活函数族
- 12.4.3 激活函数层的用法
- 12.5 TensorFlow.js变量
- 12.6 TensorFlow.js神经网络编程
- 12.6.1 卷积
- 12.6.2 池化层
- 12.7 TensorFlow.js实现完整模型
- 12.8 TensorFlow.js的后端接口
- 第13章 高级编程
- 13.1 GPU加速
- 13.1.1 PyTorch GPU版的安装
- 13.1.2 TensorFlow GPU版的安装
- 13.1.3 PyTorch中使用CUDA
- 13.1.4 PyTorch CUDA内存管理
- 13.2 生成对抗网络
- 13.2.1 生成模型
- 13.2.2 生成对抗网络
- 13.3 Attention机制
- 13.4 多任务学习
- 第14章 超越深度学习
- 14.1 自动机器学习AutoML
- 14.1.1 Auto-Sklearn的安装
- 14.1.2 依赖库的简要介绍
- 14.1.3 Auto-Sklearn编程
- 14.2 Autokeras
- 14.2.1 Autokeras的安装
- 14.2.2 Autokeras编程
- 14.3 Windows Subsystem for Linux
- 14.3.1 激活WSL功能
- 14.3.2 在微软商店中安装Linux
- 14.3.3 在WSL中使用图形
- 14.4 强化学习
- 14.5 强化学习编程
- 14.5.1 Gym和Baselines的安装
- 14.5.2 Baselines编程
- 14.6 下一步的学习方法
展开全部
出版方
北京大学出版社
北京大学出版社是在1979年,经国家出版事业管理局同意,教育部批准成立的,恢复了北京大学出版社建制。北京大学出版社依靠北大雄厚的教学、科研力量,同时积极争取国内外专家学者的合作支持,出版了大量高水平、高质量、适应多层次需要的优秀高等教育教材。 北大出版社注意对教材进行全面追踪,捕捉信息,及时修订,以跟上各学科的最新发展,反映该学科研究的最新成果,保持北大版教材的领先地位。
