赞
踩
“我不能创造的东西,我就不理解( What I cannot create, I do not understand).”这是诺贝尔物理奖获得者理查德 ·费恩曼( Richard Feynman)在他办公室黑板上留下的一句话。深度学习的学习中也是如此,只有通过实践才能更深入地理解理论。
蒲公英书《神经网络与深度学习》主要阐述了神经网络与深度学习技术的基本原理和方法。很多读者希望能在学习的同时进行实践,以加深对理论的理解。虽然我在 GitHub上留了一些实践练习的作业,但深知这些作业本身具有一定的门槛,对深度学习的入门读者有一定难度。因此,给《神经网络与深度学习》配一本实践书,一直是我的愿望。刚好百度飞桨团队也在给一些人工智能教材配备实践内容,使得我的愿望提前实现。
——邱锡鹏
内容简介
本书是《神经网络与深度学习》(蒲公英书)的配套实践书,由复旦大学邱锡鹏教授和百度飞桨团队合作完成。本书在章节设计上和《神经网络与深度学习》一一对应,并以模型解读+案例实践的形式进行介绍。模型解读主要聚焦如何从零开始一步步实现深度学习中的各种模型和算法,并结合简单的任务来加深读者对模型和算法的理解;案例实践主要强调如何使用飞桨预定义API来更好地完成实际任务,会涉及一些数据预处理问题。建议读者将本书和《神经网络与深度学习》结合阅读,在动手实践中更深入地理解深度学习的模型和原理。
扫码购买
读者对象
高等院校人工智能、数据科学、计算机等相关专业学生
深度学习入门者
工业界从事人工智能应用的专业人员
本书亮点
紧密配套蒲公英书:章节设计一一对应,以模型解读+案例实践的形式进行介绍。
更适合深度学习的入门者使用:实践案例使用飞桨框架编写,代码简洁,从零开始一步步进行深度学习的实践,搭建一个轻量级的机器学习框架以及相应的算子库来完成实际任务。
术语翻译更加规范:机器学习领域的很多名词存在难翻译和乱翻译的现象,邱锡鹏教授与周志华老师、李航老师、李沐、阿斯顿·张一起讨论和确定了机器学习相关术语的翻译问题,本书中采用了相关术语的最新译法。
全方位深度学习入门及提高解决方案:提供免费的视频课程、丰富题库和实训环境,邱锡鹏教授和百度飞桨研发团队亲自讲解示范。
目录
上拉下滑查看目录 ↓
序
前言
第1章实践基础1
1.1如何运行本书的代码...................................2
1.1.1本地运行.....................................2
1.1.2代码下载与使用方法..............................3
1.1.3在线运行.....................................4
1.2张量............................................6
1.2.1创建张量.....................................6
1.2.2张量的属性....................................9
1.2.3张量与Numpy数组转换............................13
1.2.4张量的访问....................................13
1.2.5张量的运算....................................16
1.3算子............................................20
1.3.1算子定义.....................................21
1.3.2自动微分机制..................................25
1.3.3预定义的算子..................................27
1.3.4本书中实现的算子................................27
1.3.5本书中实现的优化器..............................29
1.4本书中使用的数据集和实现的Dataset类........................29
1.4.1数据集......................................29
1.4.2Dataset类....................................31
1.5本书中实现的Runner类.................................31
1.6小结............................................32
第2章机器学习概述33
2.1机器学习实践五要素...................................34
2.1.1数据........................................35
2.1.2模型........................................36
2.1.3学习准则.....................................36
2.1.4优化算法.....................................37
2.1.5评价指标.....................................37
2.2实现一个简单的线性回归模型..............................38
2.2.1数据集构建....................................38
2.2.2模型构建.....................................40
2.2.3损失函数.....................................42
2.2.4优化器......................................43
2.2.5模型训练.....................................45
2.2.6模型评价.....................................45
2.3多项式回归........................................46
2.3.1数据集构建:ToySin25..............................46
2.3.2模型构建.....................................48
2.3.3模型训练.....................................49
2.3.4模型评价.....................................50
2.3.5通过引入正则化项来缓解过拟合........................52
2.4构建Runner类......................................53
2.5实践:基于线性回归的波士顿房价预测.........................55
2.5.1数据处理.....................................55
2.5.2模型构建.....................................62
2.5.3完善Runner类:RunnerV1...........................62
2.5.4模型训练.....................................63
2.5.5模型评价.....................................64
2.5.6模型预测.....................................64
2.6小结............................................65
第3章线性分类67
3.1基于Logistic回归的二分类任务.............................68
3.1.1数据集构建....................................69
3.1.2模型构建.....................................71
3.1.3损失函数.....................................73
3.1.4模型优化.....................................74
3.1.5评价指标.....................................77
3.1.6完善Runner类:RunnerV2...........................77
3.1.7模型训练.....................................80
3.1.8模型评价.....................................82
3.2基于Softmax回归的多分类任务............................82
3.2.1数据集构建....................................83
3.2.2模型构建.....................................86
3.2.3损失函数.....................................88
第3章线性分类67
3.1基于Logistic回归的二分类任务.............................68
3.1.1数据集构建....................................69
3.1.2模型构建.....................................71
3.1.3损失函数.....................................73
3.1.4模型优化.....................................74
3.1.5评价指标.....................................77
3.1.6完善Runner类:RunnerV2...........................77
3.1.7模型训练.....................................80
3.1.8模型评价.....................................82
3.2基于Softmax回归的多分类任务............................82
3.2.1数据集构建....................................83
3.2.2模型构建.....................................86
3.2.3损失函数.....................................88
3.2.4模型优化.....................................89
3.2.5模型训练.....................................91
3.2.6模型评价.....................................92
3.3实践:基于Softmax回归完成鸢尾花分类任务.....................92
3.3.1数据处理.....................................93
3.3.2模型构建.....................................95
3.3.3模型训练.....................................96
3.3.4模型评价.....................................96
3.3.5模型预测.....................................97
3.4小结............................................97
第4章前馈神经网络994.1神经元...........................................99
4.1.1净活性值.....................................100
4.1.2激活函数.....................................101
4.2基于前馈神经网络的二分类任务............................104
4.2.1数据集构建....................................105
4.2.2模型构建.....................................105
4.2.3损失函数.....................................108
4.2.4模型优化.....................................109
4.2.5完善Runner类:RunnerV2_1..........................115
4.2.6模型训练.....................................117
4.2.7模型评价.....................................118
4.3自动梯度计算和预定义算子...............................119
4.3.1利用预定义算子重新实现前馈神经网络....................119
4.3.2完善Runner类:RunnerV2_2..........................120
4.3.3模型训练.....................................122
4.3.4模型评价.....................................124
4.4优化问题.........................................124
4.4.1参数初始化....................................124
4.4.2梯度消失问题..................................126
4.4.3死亡ReLU问题.................................129
4.5实践:基于前馈神经网络完成鸢尾花分类任务.....................130
4.5.1小批量梯度下降法................................130
4.5.2数据处理.....................................132
4.5.3模型构建.....................................133
4.5.4完善Runner类:RunnerV3...........................135
4.5.5模型训练.....................................140
4.5.6模型评价.....................................142
4.5.7模型预测.....................................142
第5章卷积神经网络145
5.1卷积............................................146
5.1.1二维卷积运算..................................146
5.1.2二维卷积算子..................................147
5.1.3卷积的变种....................................148
5.1.4带步长和零填充的二维卷积算子........................149
5.1.5使用卷积运算完成图像边缘检测任务.....................151
5.2卷积神经网络的基础算子................................152
5.2.1卷积层算子....................................152
5.2.2汇聚层算子....................................156
5.3基于LeNet实现手写体数字识别任务..........................157
5.3.1数据集构建....................................158
5.3.2模型构建.....................................161
5.3.3模型训练.....................................164
5.3.4模型评价.....................................165
5.3.5模型预测.....................................165
5.4基于残差网络的手写体数字识别............................166
5.4.1模型构建.....................................167
5.4.2没有残差连接的ResNet18...........................173
5.4.3带残差连接的ResNet18.............................174
5.5实践:基于ResNet18网络完成图像分类任务......................175
5.5.1数据处理.....................................176
5.5.2模型构建.....................................179
5.5.3模型训练.....................................179
5.5.4模型评价.....................................181
5.5.5模型预测.....................................181
5.6小结............................................182
第6章循环神经网络183
6.1循环神经网络的记忆能力实验..............................184
6.1.1数据集构建....................................185
6.1.2模型构建.....................................189
6.1.3模型训练.....................................194
6.1.4模型评价.....................................196
6.2梯度爆炸实验.......................................196
6.2.1梯度打印函数..................................197
6.2.2复现梯度爆炸问题................................197
6.2.3使用梯度截断解决梯度爆炸问题........................199
6.3LSTM的记忆能力实验..................................200
6.3.1模型构建.....................................202
6.3.2模型训练.....................................204
6.3.3模型评价.....................................206
6.4实践:基于双向LSTM模型完成文本分类任务.....................207
6.4.1数据处理.....................................207
6.4.2模型构建.....................................212
6.4.3模型训练.....................................214
6.4.4模型评价.....................................215
6.4.5模型预测.....................................216
6.5小结............................................216
第7章网络优化与正则化217
7.1小批量梯度下降法....................................218
7.2批大小的调整实验....................................218
7.3不同优化算法的比较分析................................221
7.3.1优化算法的实验设定..............................222
7.3.2学习率调整....................................229
7.3.3梯度估计修正..................................235
7.3.4不同优化器的3D可视化对比..........................240
7.4参数初始化........................................244
7.4.1基于固定方差的参数初始化...........................244
7.4.2基于方差缩放的参数初始化...........................245
7.5逐层规范化........................................250
7.5.1批量规范化....................................250
7.5.2层规范化.....................................257
7.6网络正则化方法.....................................259
7.6.1数据集构建....................................260
7.6.2模型构建.....................................260
7.6.3?1和?2正则化..................................266
7.6.4权重衰减.....................................268
7.6.5暂退法......................................269
7.7小结............................................272
第8章注意力机制273
8.1基于双向LSTM和注意力机制的文本分类.......................274
8.1.1数据介绍.....................................275
8.1.2模型构建.....................................275
8.1.3使用加性注意力模型进行实验.........................282
8.1.4使用点积注意力模型进行实验.........................284
8.2基于双向LSTM和多头自注意力的文本分类实验...................287
8.2.1自注意力模型..................................287
8.2.2基于LSTM和多头自注意力的文本分类的模型构建..............297
8.2.3模型训练.....................................299
8.2.4模型评价.....................................300
8.2.5模型预测.....................................301
8.3实践:基于自注意力模型的文本语义匹配........................302
8.3.1数据集构建....................................303
8.3.2模型构建.....................................306
8.3.3模型训练.....................................316
8.3.4模型评价.....................................317
8.3.5模型预测.....................................318
8.3.6注意力可视化..................................318
8.4小结............................................321
了解更多
新书 | 红蓝攻防:构建实战化网络安全防御体系
每周赠书 | 【第112期】一些可以显著提高 Java 启动速度方法
点击阅读全文购买
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。