前言
第 1 章 深度学习介绍......................................................................................... 1
1.1 人工智能、机器学习与深度学习 .................................................................. 2
1.2 深度学习工具介绍 .......................................................................................... 5
1.3 PyTorch 介绍.................................................................................................... 7
1.4 你能从本书中学到什么 .................................................................................. 9
第 2 章 PyTorch 安装和快速上手 ...................................................................... 11
2.1 PyTorch 安装.................................................................................................. 12
2.1.1 Anaconda 安装.................................................................................... 12
2.1.2 PyTorch 安装....................................................................................... 19
2.2 Jupyter Notebook 使用................................................................................... 19
2.3 NumPy 基础知识........................................................................................... 22
2.3.1 基本概念 ............................................................................................. 23
2.3.2 创建数组 ............................................................................................. 24
2.3.3 基本运算 ............................................................................................. 26
2.3.4 索引、切片和迭代 ............................................................................. 27
2.3.5 数组赋值 ............................................................................................. 32
2.3.6 更改数组的形状 ................................................................................. 33
2.3.7 组合、拆分数组 ................................................................................. 34
2.3.8 广播 ..................................................................................................... 35
2.4 PyTorch 基础知识.......................................................................................... 37
2.4.1 Tensor 简介 ......................................................................................... 37
2.4.2 Variable 简介....................................................................................... 37VIII
PyTorch 机器学习从入门到实战
2.4.3 CUDA 简介......................................................................................... 38
2.4.4 模型的保存与加载 ............................................................................. 39
2.4.5 第一个 PyTorch 程序.......................................................................... 39
第 3 章 神经网络 .............................................................................................. 42
3.1 神经元与神经网络 ........................................................................................ 43
3.2 激活函数 ........................................................................................................ 45
3.2.1 Sigmoid ................................................................................................ 46
3.2.2 Tanh ..................................................................................................... 47
3.2.3 Hard Tanh ............................................................................................ 48
3.2.4 ReLU ................................................................................................... 49
3.2.5 ReLU 的扩展 ...................................................................................... 50
3.2.6 Softmax ................................................................................................ 53
3.2.7 LogSoftmax ......................................................................................... 54
3.3 前向算法 ........................................................................................................ 54
3.4 损失函数 ........................................................................................................ 56
3.4.1 损失函数的概念 ................................................................................. 56
3.4.2 回归问题 ............................................................................................. 56
3.4.3 分类问题 ............................................................................................. 57
3.4.4 PyTorch 中常用的损失函数............................................................... 58
3.5 后向算法 ........................................................................................................ 61
3.6 数据的准备 .................................................................................................... 64
3.7 实例:单层神经网络 .................................................................................... 65
第 4 章 深层神经网络及训练............................................................................ 69
4.1 深层神经网络 ................................................................................................ 71
4.1.1 神经网络为何难以训练 ..................................................................... 71
4.1.2 改进策略 ............................................................................................. 73
4.2 梯度下降 ........................................................................................................ 73
4.2.1 随机梯度下降 ..................................................................................... 73
4.2.2 Mini-Batch 梯度下降.......................................................................... 74
4.3 优化器 ............................................................................................................ 75
4.3.1 SGD ..................................................................................................... 76
4.3.2 Momentum .......................................................................................... 76
4.3.3 AdaGrad .............................................................................................. 77
4.3.4 RMSProp ............................................................................................. 78IX
目 录
4.3.5 Adam ................................................................................................... 79
4.3.6 选择正确的优化算法 ......................................................................... 79
4.3.7 优化器的使用实例 ............................................................................. 80
4.4 正则化 ............................................................................................................ 83
4.4.1 参数规范惩罚 ..................................................................................... 84
4.4.2 Batch Normalization ............................................................................ 84
4.4.3 Dropout ................................................................................................ 85
4.5 实例:MNIST 深层神经网络....................................................................... 87
第 5 章 卷积神经网络....................................................................................... 91
5.1 计算机视觉 .................................................................................................... 93
5.1.1 人类视觉和计算机视觉 ..................................................................... 93
5.1.2 特征提取 ............................................................................................. 93
5.1.3 数据集 ................................................................................................. 95
5.2 卷积神经网络 ................................................................................................ 98
5.2.1 卷积层 ............................................................................................... 100
5.2.2 池化层 ............................................................................................... 102
5.2.3 经典卷积神经网络 ........................................................................... 103
5.3 MNIST 数据集上卷积神经网络的实现..................................................... 108
第 6 章 嵌入与表征学习 .................................................................................. 112
6.1 PCA .............................................................................................................. 113
6.1.1 PCA 原理 .......................................................................................... 113
6.1.2 PCA 的 PyTorch 实现....................................................................... 114
6.2 自动编码器 .................................................................................................. 115
6.2.1 自动编码器原理 ............................................................................... 116
6.2.2 自动解码器的 PyTorch 实现............................................................ 116
6.2.3 实例:图像去噪 ............................................................................... 120
6.3 词嵌入 .......................................................................................................... 123
6.3.1 词嵌入原理 ....................................................................................... 123
6.3.2 实例:基于词向量的语言模型实现 ............................................... 126
第 7 章 序列预测模型..................................................................................... 130
7.1 序列数据处理 .............................................................................................. 131
7.2 循环神经网络 .............................................................................................. 132
7.3 LSTM 和 GRU ............................................................................................. 136X
PyTorch 机器学习从入门到实战
7.4 LSTM 在自然语言处理中的应用............................................................... 140
7.4.1 词性标注 ........................................................................................... 140
7.4.2 情感分析 ........................................................................................... 142
7.5 串到串网络 .................................................................................................. 143
7.5.1 串到串网络原理 ............................................................................... 143
7.5.2 注意力机制 ....................................................................................... 144
7.6 实例:基于 GRU 和 Attention 的机器翻译............................................... 145
7.6.1 公共模块 ........................................................................................... 145
7.6.2 数据处理 ........................................................................................... 145
7.6.3 模型定义 ........................................................................................... 149
7.6.4 训练模块定义 ................................................................................... 153
7.6.5 训练和模型保存 ............................................................................... 159
7.6.6 评估过程 ........................................................................................... 161
第 8 章 PyTorch 项目实战 .............................................................................. 163
8.1 图像识别和迁移学习——猫狗大战 .......................................................... 164
8.1.1 迁移学习介绍 ................................................................................... 164
8.1.2 计算机视觉工具包 ........................................................................... 164
8.1.3 猫狗大战的 PyTorch 实现................................................................ 165
8.2 文本分类 ...................................................................................................... 170
8.2.1 文本分类的介绍 ............................................................................... 171
8.2.2 计算机文本工具包 ........................................................................... 172
8.2.3 基于 CNN 的文本分类的 PyTorch 实现 ......................................... 172
8.3 语音识别系统介绍 ...................................................................................... 180
8.3.1 语音识别介绍 ................................................................................... 181
8.3.2 命令词识别的 PyTorch 实现............................................................ 181
· · · · · · (
收起)