作者简介
吕云翔,北京航空航天大学教师。 比利时布鲁塞尔大学应用科学学院应用信息技术专业硕士、经济学院工商管理专业硕士。具有多年的软件开发、项目管理、计算机教学经验。对IT行业具有较全面的认识。2003至今任北航软件学院副教授。研究领域包括:软件工程 IT项目管理。
目录
第1章 深度学习简介 1
1.1 计算机视觉 1
1.1.1 定义 1
1.1.2 基本任务 1
1.1.3 传统方法 2
1.1.4 仿生学与深度学习 3
1.1.5 现代深度学习 4
1.2 自然语言处理 7
1.2.1 自然语言处理的基本问题 7
1.2.2 传统方法与神经网络方法的比较 8
1.2.3 发展趋势 9
1.3 强化学习 10
1.3.1 什么是强化学习 10
1.3.2 强化学习算法简介 12
1.3.3 强化学习的应用 12
1.4 本章小结 13
第2章 深度学习框架 14
2.1 Caffe 14
2.1.1 什么是 Caffe 14
2.1.2 Caffe 的特点 14
2.1.3 Caffe 概述 15
2.2 TensorFlow 16
2.2.1 什么是 TensorFlow 16
2.2.2 数据流图 16
2.2.3 TensorFlow 的特点 17
2.2.4 TensorFlow 概述 17
2.3 PyTorch 20
2.3.1 什么是 PyTorch 20
2.3.2 PyTorch 的特点 20
2.3.3 PyTorch 概述 20
2.4 三者的比较 22
2.5 本章小结 24
第3章 机器学习基础知识 25
3.1 模型评估与模型参数选择 25
3.1.1 验证 26
3.1.2 正则化 26
3.2 监督学习与非监督学习 26
3.2.1 监督学习 27
3.2.2 非监督学习 28
3.3 本章小结 29
第4章 PyTorch 深度学习基础 30
4.1 Tensor 对象及其运算 30
4.2 Tensor 的索引和切片 32
4.3 Tensor 的变换、拼接和拆分 33
4.4 PyTorch 的 Reduction 操作 35
4.5 PyTorch 的自动微分 36
4.6 本章小结 38
第5章 Logistic 回归 39
5.1 线性回归简介 39
5.2 Logistic 回归简介 41
5.3 用 PyTorch 实现 Logistic 回归 43
5.3.1 数据准备 43
5.3.2 线性方程 44
5.3.3 激活函数 45
5.3.4 损失函数 45
5.3.5 优化算法 47
5.3.6 模型可视化 47
5.4 本章小结 48
第6章 神经网络基础 49
6.1 基础概念 49
6.2 感知器 52
6.2.1 单层感知器 52
6.2.2 多层感知器 53
6.3 BP 神经网络 53
6.3.1 梯度下降 53
6.3.2 反向传播 54
6.4 Dropout 正则化 55
6.5 Batch Normalization 56
6.5.1 Batch Normalization 的实现方式 57
6.5.2 Batch Normalization 的使用方法 58
6.6 本章小结 59
第7章 卷积神经网络与计算机视觉 60
7.1 卷积神经网络的基本思想 60
7.2 卷积操作 61
7.3 池化层 63
7.4 卷积神经网络 64
7.5 经典网络结构 64
7.5.1 VGG 网络 64
7.5.2 InceptionNet 65
7.5.3 ResNet 66
7.6 用 PyTorch 进行手写数字识别 67
7.7 本章小结 72
第8章 神经网络与自然语言处理 73
8.1 语言建模 73
8.2 基于多层感知器的架构 75
8.3 基于循环神经网络的架构 76
8.3.1 循环单元 77
8.3.2 通过时间反向传播 77
8.3.3 带有门限的循环单元 78
8.3.4 循环神经网络语言模型 79
8.3.5 神经机器翻译 80
8.4 基于卷积神经网络的架构 83
8.5 基于 Transformer 的架构 85
8.5.1 多头注意力 86
8.5.2 非参位置编码 88
8.5.3 编码器单元与解码器单元 88
8.6 表示学习与预训练技术 89
8.6.1 词向量 90
8.6.2 加入上下文信息的特征表示 91
8.6.3 网络预训练 92
8.7 本章小结 95
第9章 实战:使用PyTorch实现基于卷积神经网络模型的图像分类与数据可视化 96
9.1 卷积神经网络模型 96
9.1.1 卷积神经网络模型的发展 96
9.1.2 Tensorboard 97
9.2 卷积神经网络模型与 Tensorboard实战 97
9.2.1 FashionMNIST 数据集 97
9.2.2 数据准备与模型搭建 98
9.2.3 Tensorboard 的使用 100
9.3 本章小结 108
第10章 实战:使用 PyTorch 实现基于textCNN的文本分类 109
10.1 文本分类常用的 Python 工具库 109
10.2 数据集 110
10.3 算法模型 111
10.3.1 模型介绍 111
10.3.2 模型实现 114
10.3.3 模型结果 115
10.4 本章小结 115
第11章 实战:使用 PyTorch 搭建卷积神经网络进行音频转化 116
11.1 数据集准备 116
11.2 数据预处理 116
11.2.1 数据集读取 116
11.2.2 音频文件分段 117
11.2.3 CQT 118
11.3 模型构建 119
11.3.1 激活函数 119
11.3.2 模型分析 120
11.3.3 ReLU 激活函数的定义和实现 120
11.3.4 flatten 函数平整层处理 121
11.3.5 sigmoid 激活函数 122
11.4 模型训练与结果评估 122
11.4.1 adam 优化器 122
11.4.2 学习率策略定义 122
11.4.3 准确度验证 123
11.4.4 训练 124
11.5 本章小结 124
第12章 实战:使用 PyTorch 实现YOLOv3 的验证码识别 125
12.1 YOLOv3 125
12.1.1 YOLOv3 概述 125
12.1.2 YOLOv3 与 PyTorch 125
12.1.3 YOLOv3 案例的意义 126
12.2 目标检测案例:验证码中的简单文字识别 126
12.2.1 YOLOv3 的安装和文档 126
12.2.2 训练集的获取和数据标注 126
12.2.3 模型训练 128
12.2.4 模型的测试与预览 128
12.3 YOLO 的其他拓展 129
12.4 本章小结 129
第13章 实战:使用 PyTorch 实现基于预训练模型的文本情感分析 130
13.1 模型介绍 130
13.1.1 预训练模型 130
13.1.2 BERT 130
13.2 情感分类介绍 131
13.2.1 文本情感分析 131
13.2.2 BERT 情感分析原理简析 131
13.3 环境搭建 131
13.3.1 环境选择 132
13.3.2 Conda 简介 133
13.3.3 Huggingface-Transformer 简介 133
13.3.4 Huggingface-Transformer 下载 133
13.4 数据集获取 133
13.5 模型微调 134
13.6 效果测评 136
13.7 本章小结 137
第14章 实战:用 PyTorch 进行视频处理 138
14.1 数据准备 138
14.2 数据预处理 139
14.2.1 数据集的读取 139
14.2.2 视频关键帧的提取 139
14.3 模型构建 140
14.3.1 ResNet-18 提取关键帧的特征 141
14.3.2 L2 正则化关键帧特征 142
14.3.3 视频相似度匹配 142
14.3.4 帧级相似度匹配 143
14.4 模型训练与结果评估 145
14.4.1 训练函数的实现 145
14.4.2 训练结果提交 146
14.5 本章小结 146
第15章 实战:使用 PyTorch 在跨域数据集上进行图像分类 147
15.1 迁移学习 147
15.2 跨域数据集 148
15.3 ResNet-50 149
15.4 案例分析 149
15.4.1 数据预处理 149
15.4.2 读取数据 151
15.4.3 训练 153
15.5 本章小结 154
第16章 实战:使用 PyTorch 实现基于BERT的自动新闻文本分类 155
16.1 文本分类概述 155
16.2 BERT 简介 156
16.3 数据预处理 158
16.4 模型实现 159
16.5 本章小结 160
附录 A PyTorch 环境搭建 161
A.1 Linux 平台下 PyTorch 环境搭建 161
A.2 Windows 平台下 PyTorch 环境搭建 163
附录 B 深度学习的数学基础 165
B.1 线性代数 165
B.2 概率论 172
内容摘要
本书以深度学习框架PyTorch为基础,介绍机器学习的基础知识与常用方法,全面细致地介绍机器学习的基本操作原理及其在深度学习框架下的实践。全书共16章,分别介绍了深度学习简介、深度学习框架、机器学习基础知识、PyTorch深度学习基础、Logistic回归、神经网络基础、卷积神经网络与计算机视觉、神经网络与自然语言处理以及8个实战案例。本书将理论与实践紧密结合,相信能为读者提供有益的学习指导。
本书适合深度学习初学者、机器学习算法分析从业人员以及高等院校计算机科学与技术、软件工程、人工智能、数据科学与大数据技术等相关专业的师生阅读。
主编推荐
1. 使用PyTorch框架,快速入门深度学习。
2. 8个实战案例,分别展示了针对不同的问题使用深度学习技术如何进行解决。
3. 提供源程序、数据集、教学课件、教学大纲等学习资源。
以下为对购买帮助不大的评价