在线阅读地址:https://datawhalechina.github.io/thorough-pytorch/
配套视频教程:https://www.bilibili.com/video/BV1L44y1472Z
PyTorch是利用深度学习进行数据科学研究的重要工具,在灵活性、可读性和性能上都具备相当的优势,近年来已成为学术界实现深度学习算法最常用的框架。
考虑到PyTorch的学习兼具理论储备和动手训练,两手都要抓两手都要硬的特点,我们开发了《深入浅出PyTorch》课程,期望以组队学习的形式,帮助大家从入门到熟练掌握PyTorch工具,进而实现自己的深度学习算法。
我们的愿景是:通过组队学习,大家能够掌握由浅入深地PyTorch的基本知识和内容,经过自己的动手实践加深操作的熟练度。同时通过项目实战,充分锻炼编程能力,掌握PyTorch进行深度学习的基本流程,提升解决实际问题的能力。
学习的先修要求是,会使用Python编程,了解包括神经网络在内的机器学习算法,勤于动手实践。
《深入浅出PyTorch》是一个系列,一共有三个部分。已经上线的是本系列的第一、二部分,后续会不断更新《深入浅出PyTorch》(下),给出更贴合实际应用的实战案例。
成员 | 个人简介 | 个人主页 |
---|---|---|
牛志康 | DataWhale成员,西安电子科技大学本科生 | https://www.zhihu.com/people/obeah-82 |
李嘉骐 | DataWhale成员,清华大学研究生 | https://www.zhihu.com/people/li-jia-qi-16-9/posts |
刘洋 | Datawhale成员,中国科学院数学与系统科学研究所研究生 | https://www.zhihu.com/people/ming-ren-19-34/asks |
陈安东 | DataWhale成员,中央民族大学研究生 | https://andongblue.github.io/chenandong.github.io/ |
教程贡献情况(已上线课程内容):
李嘉骐:第三章;第四章;第五章;第六章;第七章;第八章;内容整合
牛志康:第一章;第三章;第六章;第七章;第八章,第九章,第十章;文档部署
刘洋:第二章;第三章
陈安东:第二章;第三章;第七章
部分章节直播讲解请观看B站回放(持续更新):https://www.bilibili.com/video/BV1L44y1472Z
课程编排:
深入浅出PyTorch分为三个阶段:PyTorch深度学习基础知识、PyTorch进阶操作、PyTorch案例分析。
使用方法:
我们的课程内容都以markdown格式或jupyter notebook的形式保存在本仓库内。除了多看加深课程内容的理解外,最重要的还是动手练习、练习、练习
组队学习安排:
第一部分:第一章到第四章,学习周期:10天;
第二部分:第五章到第八章,学习周期:11天
本项目使用Forking
工作流,具体参考atlassian文档
大致步骤如下:
upstream
仓库地址,并禁用push
lecture{#NO}
,#NO
保持两位,如lecture07
,对应课程目录命令示例:
# fork
# clone
git clone git@github.com:USERNAME/thorough-pytorch.git
# set upstream
git remote add upstream git@github.com:datawhalechina/thorough-pytorch.git
# disable upstream push
git remote set-url --push upstream DISABLE
# verify
git remote -v
# some sample output:
# origin git@github.com:NoFish-528/thorough-pytorch.git (fetch)
# origin git@github.com:NoFish-528/thorough-pytorch.git (push)
# upstream git@github.com:datawhalechina/thorough-pytorch.git (fetch)
# upstream DISABLE (push)
# do your work
git checkout -b lecture07
# edit and commit and push your changes
git push -u origin lecture07
# keep your fork up to date
## fetch upstream main and merge with forked main branch
git fetch upstream
git checkout main
git merge upstream/main
## rebase brach and force push
git checkout lecture07
git rebase main
git push -f
提交信息使用如下格式:<type>: <short summary>
<type>: <short summary>
│ │
│ └─⫸ Summary in present tense. Not capitalized. No period at the end.
│
└─⫸ Commit Type: lecture{#NO}|others
others
包括非课程相关的改动,如本README.md
中的变动,.gitignore
的调整等。
内容 | 更新时间 | 内容 |
---|---|---|
模型初始化 | ✅ | torch.nn.init 的使用 |
Jupyter相关操作 | ✅ | Jupyter guideline |
visdom可视化 | 2022.4.5 | Visdom 的使用 |
apex | 2022.5.4 | apex的简介和使用 |
超参数的保存 | ✅ | 使用argparse进行参数的修改 |
onnx | ✅ | 将模型导出为onnx并使用onnxruntime进行推理 |
模型部署 | Flask部署PyTorch模型 | |
TorchScript | TorchScript | |
数据增强 | ✅ | imgaug的使用 |
并行训练 | 并行训练 | |
模型预训练 - torchhub | 2022.4.16 | torchhub的简介和使用方法 |
模型预训练 - timm | ✅ | timm预训练模型的使用方法 |
模型预训练 - openmmlab | 2022.4.27 | openmmlab系列的使用 |
目标检测 - yolo系列 | Yolo系列介绍与trick实现 | |
目标检测 - SSD | SSD的简介和实现 | |
目标检测 - RCNN系列 | Fast-RCNN & Mask-RCNN | |
目标检测 - DETR | DETR的实现 | |
图像分类 - GoogLeNet | 2022.5.11 | GoogLeNet的介绍与实现 |
图像分类 - Vision transformer | 2022.5.18 | Vit介绍与实现 |
图像分类 - Swin-transformer | ✅ | Swin-T解读 |
图像分类 - MobileNet系列 | 2022.4月 | MobileNet系列介绍与实现 |
图像分类 - GhostNet | 2022.4月 | GhostNet代码讲解 |
生成式对抗网络 - 生成手写数字实战 | 2022.5.25 | 生成数字并可视化 |
生成式对抗网络 - DCGAN | ||
风格迁移 - StyleGAN | ||
生成网络 - VAE | ||
图像分割 Deeplab系列 | Deeplab系列代码讲解 | |
自然语言处理 LSTM | LSTM情感分析实战 | |
自然语言处理 RNN | RNN名字分类 | |
自然语言处理 Transformer | ||
自然语言处理 BERT | ||
视频 | 待定 | |
音频 | 待定 | |
自定义CUDA扩展和算子 |
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》