机器学习编程:从编码到深度学习

作者
[意]保罗·佩罗塔(Paolo Perrotta)
丛书名
智能科学与技术丛书
出版社
机械工业出版社
ISBN
9787111680918
简要
简介
内容简介书籍计算机书籍 使用监督学习从头构建一个图像识别应用程序。用线性回归预测未来。深入研究梯度下降,这是一种驱动大部分机器学习的基本算法。创建感知器来分类数据。建立神经网络来处理更复杂和复杂的数据集。通过反向传播和批处理来训练和细化这些网络。分层神经网络,消除过度拟合,并添加卷积将您的神经网络转换为一个真正的深度学习系统。
目录
译者序
前言
致谢
第一部分 从零开始的
图像识别
第1章 机器学习的原理 2
1.1 编程与机器学习 2
1.2 监督学习 4
1.3 魔法背后的数学原理 6
1.4 设置系统 8
第2章 首个机器学习程序 12
2.1 了解问题 12
2.1.1 监督比萨 13
2.1.2 理解数据 13
2.2 编写线性回归代码 15
2.2.1 定义模型 16
2.2.2 进行预测 18
2.2.3 进行训练 18
2.2.4 计算误差 19
2.2.5 越来越接近 20
2.2.6 运行代码 21
2.3 添加偏置 23
2.4 小结 25
2.5 动手研究:设置超参数 26
第3章 梯度 28
3.1 算法的缺陷 28
3.2 梯度下降法 30
3.2.1 少量数学知识 32
3.2.2 陡坡速降 33
3.2.3 脱离平面 34
3.2.4 偏导数 35
3.2.5 测试梯度下降法 37
3.2.6 何时梯度下降法不适用 38
3.3 小结 40
3.4 动手研究:露营地问题 40
第4章 超空间 41
4.1 添加更多维度 42
4.2 矩阵代数 44
4.2.1 矩阵乘法 45
4.2.2 矩阵转置 47
4.3 升级学习程序 47
4.3.1 数据准备 48
4.3.2 升级预测函数 50
4.3.3 升级损失函数 51
4.3.4 升级梯度公式 52
4.3.5 整合函数 53
4.4 告别偏置 54
4.5 最后一次试运行 55
4.6 小结 56
4.7 动手研究:统计学家 56
第5章 能辨识的机器 58
5.1 线性回归的不足 58
5.2 S型函数 61
5.2.1 信心与疑虑 62
5.2.2 平滑过程 63
5.2.3 升级梯度 65
5.2.4 模型函数受到的影响 66
5.3 操作中的分类函数 67
5.4 小结 69
5.5 动手研究:权重的影响 70
第6章 计算机视觉初探 71
6.1 处理数据 72
6.1.1 MNIST入门 72
6.1.2 训练与测试 73
6.2 我们自己的MNIST库 74
6.2.1 准备输入矩阵 74
6.2.2 处理数据 76
6.3 实际运行 79
6.4 小结 80
6.5 动手研究:难以识别的数字 80
第7章 最后的挑战 81
7.1 多元分类 81
7.1.1 独热编码 83
7.1.2 独热编码实践 84
7.1.3 解码分类器的答案 85
7.1.4 需要更多的权重 85
7.1.5 回顾矩阵维数 86
7.2 验证与结果 87
7.3 小结 89
7.4 动手研究:扫雷舰 89
第8章 感知机 91
8.1 认识感知机 91
8.2 组装感知机 92
8.3 感知机的不足 93
8.3.1 线性可分数据 94
8.3.2 线性不可分数据 95
8.4 感知机史话 97
8.4.1 终极之战 98
8.4.2 论战余波 98
第二部分 神经网络
第9章 设计神经网络 100
9.1 用感知机组装神经网络 101
9.1.1 链式感知机 102
9.1.2 节点数量 103
9.2 加入softmax函数 105
9.3 构建方案 106
9.4 小结 106
9.5 动手研究:网络冒险 107
第10章 构建神经网络 108
10.1 编写正向传播代码 108
10.1.1 编写softmax函数 110
10.1.2 编写分类函数 112
10.2 交叉熵 112
10.3 小结 114
10.4 动手研究:时间旅行的测试 115
第11章 训练神经网络 116
11.1 反向传播的使用场合 116
11.2 从链式法则到反向传播 118
11.2.1 简单网络结构的链式法则 118
11.2.2 复杂网络的链式法则 119
11.3 使用反向传播算法 121
11.3.1 开始之前 123
11.3.2 计算w2的梯度 123
11.3.3 计算w1的梯度 124
11.3.4 提炼反向函数 125
11.4 初始化权重 126
11.4.1 可怕的对称性 126
11.4.2 死亡神经元 127
11.4.3 正确的权重初始化 129
11.5 完成网络模型 130
11.6 小结 132
11.7 动手研究:错误的开始 133
第12章 分类器的工作原理 134
12.1 寻找边界 134
12.1.1 感知机的主场 135
12.1.2 理解分类 136
12.1.3 线性不可分 138
12.2 弯曲的边界 139
12.3 小结 141
12.4 动手研究:高难数据 141
第13章 小批量处理 142
13.1 训练过程的可视化 143
13.2 分批处理 145
13.2.1 小批量样本集的构造 145
13.2.2 批量样本的训练 147
13.3 理解小批量 148
13.3.1 扭曲的路径 148
13.3.2 大型和小型批处理 150
13.3.3 批处理的优缺点 151
13.4 小结 152
13.5 动手研究:最小的批量 153
第14章 测试的禅意 154
14.1 过度拟合的威胁 154
14.2 测试的难题 156
14.3 小结 158
14.4 动手研究:思考测试 159
第15章 来做开发吧 160
15.1 准备样本数据 161
15.1.1 检查输入变量的范围 161
15.1.2 标准化输入变量 162
15.1.3 标准化的实践 163
15.2 调优超参数 164
15.2.1 选择历元的数量 164
15.2.2 调优隐藏节点数量 165
15.2.3 调优学习率 168
15.2.4 调优批量大小 170
15.3 最终测试 171
15.4 动手研究:实现99% 173
15.5 小结与展望 174
第三部分 深度学习
第16章 深度神经网络 178
16.1 针鼹数据集 179
16.2 使用Keras构建神经网络 180
16.2.1 计划与代码 181
16.2.2 加载数据 182
16.2.3 创建模型 183
16.2.4 编译模型 184
16.2.5 训练网络 184
16.2.6 描绘边界 185
16.2.7 实践中的Keras 185
16.3 更深一层 187
16.4 小结 188
16.5 动手研究:Keras游乐场 188
第17章 战胜过度拟合 190
17.1 详解过度拟合 190
17.1.1 过度拟合的成因 191
17.1.2 过度拟合与低度拟合 194
17.2 模型正则化 195
17.2.1 回顾深度网络 195
17.2.2 L1和L2 正则化法 198
17.3 正则化工具箱 202
17.4 小结 203
17.5 动手研究:保持简单 204
第18章 驯服深度网络 205
18.1 理解激活函数 205
18.1.1 激活函数存在的意义 206
18.1.2 S型函数及其运算结果 207
18.2 超越S型函数 211
18.2.1 初识ReLU 211
18.2.2 选择正确的函数 213
18.3 掌握更多的技巧 215
18.3.1 更好的权重初始化 215
18.3.2 加速梯度下降 216
18.3.3 高级正则化 217
18.3.4 最后一招:批处理标准化 219
18.4 小结 220
18.5 动手研究:10历元的挑战 220
第19章 超越香草神经网络 222
19.1 CIFAR-10数据集 223
19.1.1 初识CIFAR-10 223
19.1.2 难以分类的CIFAR数据 224
19.2 CNN的基本结构 225
19.2.1 图像就是图像 226
19.2.2 卷积 226
19.2.3 卷积层 229
19.3 运行卷积 230
19.4 小结 233
19.5 动手研究:大量的超参数 233
第20章 深度学习 235
20.1 深度学习的崛起 235
20.1.1 一场完美的革新风暴 236
20.1.2 临界点 237
20.1.3 未完待续 237
20.2 离谱的效率 238
20.3 路在何方 240
20.3.1 视觉之路 241
20.3.2 语言之路 241
20.3.3 图像生成之路 242
20.3.4 通天大道宽又阔 245
20.3.5 动手研究之路 246
20.4 你的旅程开始了 246
附录A Python语言入门 247
A.1 Python是什么样的 249
A.1.1 Python 是动态类型 250
A.1.2 Python中重要的缩进 250
A.2 Python语言的基本组成 251
A.2.1 数据类型和运算符 251
A.2.2 集合 252
A.2.3 字符串 253
A.2.4 循环 254
A.3 定义和调用函数 255
A.3.1 命名参数 256
A.3.2 默认参数 257
A.4 模块与包 257
A.4.1 定义与导入模块 257
A.4.2 主要习语 259
A.4.3 管理包 260
A.5 创建和使用对象 262
A.6 就这么多了 263
附录B 机器学习术语 264


推荐

车牌查询
桂ICP备20004708号-3