/DeepLearning-MuLi-Notes

Notes about courses Dive into Deep Learning by Mu Li

Primary LanguageJupyter Notebook

《动手学习深度学习》

项目动机,课程简介, 课程资源, 教材目录, 笔记, 文件夹说明, 组织者, 贡献者


项目动机

《动手学习深度学习》是李沐老师(AWS 资深首席科学家,美国卡内基梅隆大学计算机系博士)主讲的一系列深度学习视频。本项目收集了我们在寒假期间学习《动手学习深度学习》过程中详细的markdown笔记和相关的jupyter代码。赠人玫瑰,手留余香,我们将所有的markdown笔记开源,希望在自己学习的同时,也对大家学习掌握李沐老师的《动手学习深度学习》有所帮助。

本项目的特色:

  1. markdown笔记与原课程视频一一对应,可以帮助大家一边听课一边理解。
  2. jupyter代码均有详细中文注释,帮助大家更快上手实践。

课程视频共73节,单个视频平均时长不超过30分钟,预计寒假40天内可以学习完毕。

本项目所用徽章来自互联网,如侵犯了您的图片版权请联系我们删除,谢谢。

课程简介

通常我们提到深度学习,常常会忘记深度学习只是机器学习的一小部分,而认为它是独立于机器学习的单独模块。这是因为机器学习作为一门历史更悠久的学科,在深度学习没有问世之前,在现实世界的应用范围很窄。在语音识别、计算机视觉、自然语言处理等领域,由于需要大量的领域知识并且现实情况异常复杂,机器学习往往只是解决这些领域问题方案中的一小部分。但是就在过去的几年里,深度学习的问世和应用给世界带来了惊喜,推动了计算机视觉、自然语言处理、自动语音识别、强化学习和统计建模等领域的快速发展,并逐渐引领潮流,在世界掀起了一波人工智能的革命。

《动手学习深度学习》 课程中,既有少量的机器学习的基础知识,比如:线性神经网络,多层感知机 等等;又有如今前沿应用的 各种深度学习模型:包括leNet,ResNet,LSTM,BERT…… 同时每一章节的讲解还配备由pytorch实现的代码、教科书等等,可以帮助同学在短期内掌握深度学习的基础模型与前沿知识和并提高实践能力。

课程资源

此外,本门课程还有相应的代码实现。每章都有相应的jupyter记事本,提供模型的完整python代码,所有的资源都可在网上免费获取。

教材目录

《动手学深度学习》(中文版)和英文版Dive into Deep Learning 0.17.1 documentation教材目录及章节链接如下:

章节 中文版 英文版
1 前言 Introduction
2 预备知识 Preliminaries
3 线性神经网络 Linear Neural Networks
4 多层感知机 Multilayer Perceptrons
5 深度学习计算 Deep Learning Computation
6 卷积神经网络 Convolutional Neural Networks
7 现代卷积神经网络 Modern Convolutional Neural Networks
8 循环神经网络 Recurrent Neural Networks
9 现代循环神经网络 Modern Recurrent Neural Networks
10 注意力机制 Attention Mechanisms
11 优化算法 Optimization Algorithms
12 计算性能 Computational Performance
13 计算机视觉 Computer Vision
14 自然语言处理:预训练 Natural Language Processing: Pretraining
15 自然语言处理:应用 Natural Language Processing Applications
16 推荐系统 Recommender Systems
17 生成对抗网络 Generative Adversarial Networks
18 附录: 深度学习中的数学基础 Appendix: Mathematics for Deep Learning
19 附录: 深度学习工具 Appendix: Tools for Deep Learning

笔记

视频 笔记 讲义 代码 贡献者
00-预告 讲义
01-课程安排 讲义
02-深度学习介绍 讲义
03-安装 讲义
04-数据操作和数据预处理 讲义 Jupyter 代码
05-线性代数 讲义
06-矩阵计算 讲义
07-链式法则和自动求导 讲义 Jupyter 代码
08-线性回归+基础优化算法 讲义1 2 Jupyter 代码
09-Softmax回归 讲义1 2 Jupyter 代码
10-多层感知机 讲义1 2 Jupyter 代码
11-模型选择+过拟合和欠拟合 讲义1 2
12-权重衰退 讲义 Jupyter 代码
13-丢弃法 讲义 Jupyter 代码
14-数值稳定性 讲义1 2
15-实战Kaggle预测房价 讲义 Jupyter 代码
16-Pytorch神经网络基础 讲义 Jupyter 代码
17-使用和购买GPU 讲义 Jupyter 代码
18-预测房价竞赛总结 讲义
19-卷积层 讲义1 2 Jupyter 代码
20-填充和步幅 讲义 Jupyter 代码
21-多输入输出通道 讲义 Jupyter 代码
22-池化层 讲义 Jupyter 代码
23-LeNet 讲义 Jupyter 代码
24-AlexNet 讲义 Jupyter 代码
25-使用块的网络VGG 讲义 Jupyter 代码
26-NiN 讲义 Jupyter 代码
27-GoogLeNet 讲义 Jupyter 代码
28-批量归一化 讲义 Jupyter 代码
29-残差网络ResNet 讲义
30-第二部分完结竞赛 讲义
31-CPU和GPU 讲义
32-深度学习硬件 讲义
33-单机多卡并行 讲义
34-多GPU训练实现 讲义 Jupyter 代码
35-分布式训练 讲义
36-数据增广 讲义 Jupyter 代码
37-微调 讲义 Jupyter 代码
38-第二次竞赛树叶分类结果 讲义
39-实战Kaggle比赛-1 讲义
40-实战Kaggle比赛-2 讲义 Jupyter 代码
41-物体检测和数据集 讲义
[42-锚框] 讲义
43-树叶分类竞赛技术总结 讲义
44-物体检测算法 讲义123
45-SSD实现 讲义 Jupyter 代码
46-语义分割和数据集 讲义 Jupyter 代码
47-转置卷积 讲义1 2
48-FCN 讲义 Jupyter 代码
49-样式迁移 讲义 Jupyter 代码
50-课程竞赛 讲义
51-序列模型 讲义
52-文本预处理 讲义 Jupyter 代码
53-语言模型 讲义
54-循环神经网络 讲义
55-RNN实现 讲义 Jupyter 代码
56-GRU 讲义 Jupyter 代码
57-LSTM 讲义
58-深层循环神经网络 讲义 Jupyter 代码
[59-双向循环神经网络] 讲义
60-机器翻译数据集 讲义 Jupyter 代码
61-编码器-解码器架构 讲义
62-序列到序列的学习 讲义 Jupyter 代码
63-束搜索 讲义
64-注意力机制 讲义 Jupyter 代码
65-注意力分数 讲义
[66-使用注意力的seq2seq] 讲义
67-自注意力 讲义 Jupyter 代码
68-Transformer 讲义 Jupyter 代码
69-BERT预训练 讲义
70-BERT微调 讲义
[71-目标检测竞赛总结] 讲义
72-优化算法 讲义
73-课程总结和进阶学习 讲义

文件夹说明

  • imgs:笔记涉及到的图片
  • notes:笔记的markdown版本
  • code:课程涉及到的python代码

组织者

感谢以下同学对本项目的组织

贡献者

感谢以下同学对本项目的支持与贡献