Releases: d2l-ai/d2l-zh
2.0.0版发布
第二版纸质书
第二版纸质书 《动手学深度学习(PyTorch版)》 将由人民邮电出版社出版,并在2023年元旦与读者见面。纸质版的索引、样式、排版、表述等均由出版社做了进一步的改进。
《动手学深度学习(PyTorch版)》 是《动手学深度学习》的重磅升级版本,选用经典的PyTorch深度学习框架,旨在向读者交付更为便捷的有关深度学习的交互式学习体验。本书重新修订《动手学深度学习》的所有内容,并针对技术的发展,新增注意力机制、预训练等内容。它包含2.0.0版全部章节:1. 引言、2. 预备知识、3. 线性神经网络、4. 多层感知机、5. 深度学习计算、6. 卷积神经网络、7. 现代卷积神经网络、8. 循环神经网络、9. 现代循环神经网络、10. 注意力机制、11. 优化算法、12. 计算性能、13. 计算机视觉、14. 自然语言处理:预训练、15. 自然语言处理:应用、附录:深度学习工具。第一部分介绍深度学习的基础知识和预备知识,并由线性模型引出最简单的神经网络——多层感知机;第二部分阐述深度学习计算的关键组件、卷积神经网络、循环神经网络、注意力机制等大多数现代深度学习应用背后的基本工具;第三部分讨论深度学习中常用的优化算法和影响深度学习计算性能的重要因素,并分别列举深度学习在计算机视觉和自然语言处理中的重要应用。
新增PaddlePaddle实现
2.0.0版新增加了PaddlePaddle实现。
感谢贡献者:安祺、段春华、范致远、范远展、胡刘俊、姜航顺、吕坤、李生煜、马骏骁、马飞、王明杰、吴未、吴高升、谢杰航、郑博培、张戈、朱天宇。
PaddlePaddle实现由张帅、何孝霆、Aston审阅。
2.0.0-beta1版发布
该版本包含了众多开源社区的改进。
感谢 @JeffersonQin @CanChengZheng @jajupmochi @iuk @liyunlongaaa @RUCWargrave @ALonelySheep @Sunhuashan @haiker2011 @Nietism @SilenceZheng66 @YWonchall @Kiki2049 @krahets @friedmainfunction @LaoLiulaoliu @YaoPengCN @Yulv-git @liuxiao916 @yingang @Joe-HZ @lybloveyou @VigourJiang @zxhd863943427 @liyufan 对该版本的贡献!
2.0.0-beta0版发布
主要特点
该版本为《动手学深度学习》2.0.0-beta版(中文第二版的预览版)。
主要改进
-
丰富并修订了第一版第十章“自然语言处理”内容,并分为“自然语言处理:预训练”和“自然语言处理:应用”两章,添加了“BERT”和“自然语言推断”的相关内容;
-
丰富并修订第一版“附录内容”内容,并调整为第十六章;
-
更新全书内容与英文版0.17.1保持一致。
详细改进
《动手学深度学习》2.0.0-beta0版较2.0.0-alpha2版增加了23个小节:
-
第14章:自然语言处理:预训练
- 14.1. 词嵌入(Word2vec)
- 14.2. 近似训练
- 14.3. 用于预训练词嵌入的数据集
- 14.4. 预训练word2vec
- 14.5. 全局向量的词嵌入(GloVe)
- 14.6. 子词嵌入
- 14.7. 词的相似性和类比任务
- 14.8. 来自Transformer的双向编码器表示(BERT)
- 14.9. 用于预训练BERT的数据集
- 14.10. 预训练BERT
-
第15章: 自然语言处理:应用
- 15.1. 情感分析及数据集
- 15.2. 情感分析:使用递归神经网络
- 15.3. 情感分析:使用卷积神经网络
- 15.4. 自然语言推断与数据集
- 15.5. 自然语言推断:使用注意力
- 15.6. 针对序列级和词元级应用程序微调BERT
- 15.7. 自然语言推断:微调BERT
-
第16章:(附录)深度学习工具
- 16.1. 使用Jupyter Notebooks
- 16.2. 使用Amazon SageMaker
- 16.3. 使用Amazon EC2实例
- 16.4. 选择服务器和GPU
- 16.5. 为本书做贡献
- 16.6. d2l API 文档
2.0.0-alpha2版发布
主要特点
该版本为《动手学深度学习》2.0.0-alpha2 版(中文第二版的预览版)。
主要改进
- 添加全新第十章“注意力机制“;
- 丰富并修订第一版“计算机视觉”内容,添加“转置卷积“小节,并调整为第十三章。
详细改进
《动手学深度学习》2.0.0-alpha2版较2.0.0-alpha1版增加了21个小节:
-
第10章:注意力机制
- 10.1. 注意力提示
- 10.2. 注意力汇聚:Nadaraya-Watson 核回归
- 10.3. 注意力打分函数
- 10.4. Bahdanau 注意力
- 10.5. 多头注意力
- 10.6. 自注意力和位置编码
- 10.7. Transformer
-
第13章: 计算机视觉
- 11.1. 图像增广
- 11.2. 微调
- 11.3. 目标检测和边界框
- 11.4. 锚框
- 11.5. 多尺度目标检测
- 11.6. 目标检测数据集
- 11.7. 单发多框检测(SSD)
- 11.8. 区域卷积神经网络(R-CNN)系列
- 11.9. 语义分割和数据集
- 11.10. 转置卷积
- 11.11. 全卷积网络(FCN)
- 11.12 样式迁移
- 11.13. 实战Kaggle比赛:图像分类(CIFAR-10)
- 11.14. 实战Kaggle比赛:狗的品种识别(ImageNet Dogs)
更多未翻译的全新章节请参见已发布的英文开源项目。我们将同时不断更新中文版,翻译其他章节。
2.0.0-alpha1版发布
主要特点
该版本为《动手学深度学习》2.0.0-alpha1版(中文第二版的预览版),翻译自英文版Dive into Deep Learning0.16.3版。
主要改进
- 丰富并修订了第一版第六章“循环神经网络”内容,并分为“循环神经网络”(已在2.0.0-alpha0版发布)和“现代循环神经网络”(本次发布)两章;将第一版第十章中“编码器—解码器(seq2seq)”、“束搜索”和“机器翻译”小节,修订并调整到“现代循环神经网络”中。
- 丰富并修订了第一版第八章“计算性能”,并调整为第十二章,且添加了“硬件”和“参数服务器”小节;
详细改进
《动手学深度学习》2.0.0-alpha1版较2.0.0-alpha0版增加了15个小节:
-
第9章: 现代循环神经网络
- 9.1. 门控循环单元(GRU)
- 9.2. 长短期记忆网络(LSTM)
- 9.3. 深层循环神经网络
- 9.4. 双向循环神经网络
- 9.5. 机器翻译与数据集
- 9.6. 编码器-解码器结构
- 9.7. 序列到序列学习(seq2seq)
- 9.8. 束搜索
-
第12章:计算性能
- 12.1. 编译器和解释器
- 12.2. 异步计算
- 12.3. 自动并行
- 12.4. 硬件
- 12.5. 多GPU训练
- 12.6. 多GPU的简洁实现
- 12.7. 参数服务器
更多未翻译的全新章节请参见已发布的英文版0.16.3版。欢迎关注本书第二版的英文开源项目。我们将同时不断更新中文版,翻译其他章节。
2.0.0-alpha0版发布
主要特点
该版本为《动手学深度学习》2.0.0-alpha0版(中文第二版的预览版),翻译自英文版Dive into Deep Learning0.16.1版。目前中英文版已被全球来自40个国家的175所大学采用教学。
与第一版有所不同,该版本的代码部分包含MXNet、PyTorch和TensorFlow三种框架的实现,供读者自由选择。由于深度学习领域发展极为迅速,第二版不仅重新修订了第一版里所有章节的内容(包括文字、数学、图片和代码),还添加了新的内容。
主要改进
- 添加了第二版的在线预览版:zh-v2.d2l.ai;
- 更新了第二版的讨论区:discuss.d2l.ai/c/16;
- 将本书的常用函数包的名称由
d2lzh
改为了英文版的d2l,并分为mxnet.py
、torch.py
和tensorflow.py
三个模块; - 丰富并修订了第一章“前言”内容。
- 丰富并修订了第二章“预备知识”内容,例如添加了“数据预处理”、“线性代数”、“微分”和“概率”小节;
- 丰富并修订了第一版第三章“深度学习基础”内容,并分为“线性神经网络”和“多层感知机”两章,例如添加了“环境和分布偏移”小节;
- 丰富并修订了第一版第五章“卷积神经网络”内容,并分为“卷积神经网络”和“现代卷积神经网络”两章,例如添加了“从全连接层到卷积”小节;
- 丰富并修订了第一版第六章“循环神经网络”内容,并分为“循环神经网络”和“现代循环神经网络”两章(后一章稍后发布),例如添加了“序列模型”和“文本预处理”小节;
详细改进
《动手学深度学习》2.0.0-alpha0版一共含50个小节:
-
第1章: 深度学习前言
-
第2章: 预备知识
- 2.1. 数据操作
- 2.2. 数据预处理
- 2.3. 线性代数
- 2.4. 微分
- 2.5. 自动求导
- 2.6. 概率
- 2.7. 查阅文档
-
第3章:线性神经网络
- 3.1. 线性回归
- 3.2. 线性回归的从零开始实现
- 3.3. 线性回归的简洁实现
- 3.4. softmax回归
- 3.5. 图像分类数据集
- 3.6. softmax回归的从零开始实现
- 3.7. softmax回归的简洁实现
-
第4章: 多层感知机
- 4.1. 多层感知机
- 4.2. 多层感知机的从零开始实现
- 4.3. 多层感知机的简洁实现
- 4.4. 模型选择、欠拟合和过拟合
- 4.5. 权重衰减
- 4.6. Dropout
- 4.7. 正向传播、反向传播和计算图
- 4.8. 数值稳定性和模型初始化
- 4.9. 环境和分布偏移
- 4.10. 实战 Kaggle 比赛:预测房价
-
第5章: 深度学习计算
- 5.1. 层和块
- 5.2. 参数管理
- 5.3. 延后初始化
- 5.4. 自定义层
- 5.5. 读写文件
- 5.6. GPU
-
第6章: 卷积神经网络
- 6.1. 从全连接层到卷积
- 6.2. 图像卷积
- 6.3. 填充和步幅
- 6.4. 多输入多输出通道
- 6.5. 池化层
- 6.6. 卷积神经网络(LeNet)
-
第7章: 现代卷积神经网络
- 7.1. 深度卷积神经网络(AlexNet)
- 7.2. 使用块的网络(VGG)
- 7.3. 网络中的网络(NiN)
- 7.4. 含并行连结的网络(GoogLeNet)
- 7.5. 批量归一化
- 7.6. 残差网络(ResNet)
- 7.7. 稠密连接网络(DenseNet)
-
第8章: 循环神经网络
- 8.1. 序列模型
- 8.2. 文本预处理
- 8.3. 语言模型和数据集
- 8.4. 循环神经网络
- 8.5. 循环神经网络的从零开始实现
- 8.6. 循环神经网络的简洁实现
- 8.7. 通过时间反向传播
更多未翻译的全新章节请参见已发布的英文版0.16版。欢迎关注本书第二版的英文开源项目。我们将同时不断更新中文版,翻译其他章节。
1.0.0版发布
该版本内容与《动手学深度学习》纸质书第一版第四次印刷内容基本一致。由于开源项目工具所限,纸质版的索引、样式、排版、表述等更规范。
主要改动
与1.0.0版rc0相比,该版本主要改进了书中表述。
本书的第二版
虽然纸质书第一版已经出版,但深度学习领域依然在迅速发展。为了得到来自更广泛的英文开源社区的帮助,从而提升本书质量,本书的第二版正在用英文写。当英文版完成并改进后,我们再把它搬回中文版。
目前,英文版已超过160节(中文版共96节),例如增加了理论背景(如优化收敛分析)、硬件设计(如参数服务器)、全新篇章(如注意力机制、推荐系统、深度学习的数学、生成对抗网络)、应用种类(如自然语言推理)、模型种类(如Transformer、BERT)等,并优化重组了大量章节(如将自然语言处理篇章按从预训练表征、到模型设计、再到下游应用重构)。
欢迎关注本书第二版的英文开源项目。
1.0.0版rc0发布
该版本为《动手学深度学习》1.0.0版的预发布版本。本书的纸质版将由人民邮电出版社出版,并在2019年夏季与读者见面。纸质版的索引、样式、排版、表述等均由出版社做了进一步的改进。
我们的初衷是让更多人更容易地使用深度学习。为了让大家能够便利地获取这些资源,我们保留了免费的网站内容,并且通过不收取出版稿费的方式来降低纸质书的价格,使更多人有能力购买。
1.0.0版一共含96个小节,并分为以下篇章:
- 深度学习简介
- 预备知识
- 深度学习基础
- 深度学习计算
- 卷积神经网络
- 循环神经网络
- 优化算法
- 计算性能
- 计算机视觉
- 自然语言处理
- 附录
本书的英文版 Dive into Deep Learning 自本周起被用作加州大学伯克利分校2019年春学期“Introduction to Deep Learning”课程的教材。英文版0.5版已发布:https://github.com/d2l-ai/d2l-en/releases/tag/v0.5.0
主要改动
-
新增了以下章节
- 前言
- 多尺度目标检测
- word2vec的实现
- 文本情感分类:使用卷积神经网络(textCNN)
- 如何为本书贡献
-
重写了以下篇章
- 卷积神经网络
- 循环神经网络
- 优化算法
- 计算机视觉
- 自然语言处理
-
将大部分篇章中“从零开始实现”与“简洁实现”由两节合并为了一节,从而减少重复代码
-
改进了或新增了所有章节的表述、代码和图示
-
新增了概念,如特征图、感受野、卷积求导、变换器(Transformer)、BERT预训练模型
-
改进了HTML和PDF的样式
-
将本书的网址由
zh.gluon.ai
改为了zh.d2l.ai
-
将本书的Python包的名称由
gluonbook
改为了d2lzh
感谢本书的125位贡献者
许致中、邓杨、崔永明、Aaron Sun、陈斌斌、曾元豪、周长安、李昂、王晨光、Chaitanya Prakash Bapat、金杰、赵小华、戴作卓、刘捷、张建浩、梓善、唐佐林、DHRUV536、丁海、郭晶博、段弘、杨英明、林海滨、范舟、李律、李阳、夏鲁豫、张鹏、徐曦、Kangel Zenn、Richard CUI、郭云鹏、hank123456、金颢、hardfish82、何通、高剑伟、王海龙、htoooth、hufuyu、Kun Hu、刘俊朋、沈海晨、韩承宇、张钟越、罗晶、jiqirer、贾忠祥、姜蔚蔚、田宇琛、王曜、李凯、兰青、王乐园、Leonard Lausen、张雷、鄭宇翔、linbojin、lingss0918、杨大卫、刘佳、戴玮、贾老坏、陆明、张亚鹏、李超、周俊佐、Liang Jinzheng、童话、彭小平、王皓、彭大发、彭远卓、黄焖鸡、解浚源、彭艺宇、刘铭、吴俊、刘睿、张绍明、施洪、刘天池、廖翊康、施行健、孙畔勇、查晟、郑帅、任杰骥、王海珍、王鑫、wangzhe258369、王振荟、周军、吴侃、汪磊、wudayo、徐驰、夏根源、何孝霆、谢国超、刘新伟、肖梅峰、黄晓烽、燕文磊、王贻达、马逸飞、邱怡轩、吴勇、杨培文、余峰、Peng Yu、王雨薇、王宇翔、喻心悦、赵越、刘忆智、张航、郑达、陈志、周航、张帜、周远、汪汇泽、谢乘胜、aitehappiness、dutzhang、孙焱
0.7版发布
bugfix for v0.6
修改utils.py里transform加载方式避免过多内存使用