DL入门学习路线
简单地将入门学习分为三个方向:编程能力、深度学习理论、工程工具的使用。
1. 编程
Python:
- 图书:入门:《Python编程:从入门到实践》;进阶:《Fluent Python》
- 视频:https://www.bilibili.com/(视频太多了,因人而异)
C++:
- 图书:《C++ Premir》
- 视频:https://www.bilibili.com/(视频太多了,因人而异)
先掌握好Python,科研主要还是Python
Pytorch:
- 简单教程:https://github.com/lyhue1991/eat_pytorch_in_20_days
- 官方教程:https://pytorch.org/tutorials/beginner/basics/intro.html
Tensorflow:
- 简单教程:https://github.com/lyhue1991/eat_tensorflow2_in_30_days
- 官方教程:https://tensorflow.google.cn/tutorials
数据分析相关:
- 图书:《利用Python进行数据分析》(numpy、pandas、matplotlib)
- 图书:《学习OpenCV3》(Opencv)
- 图书:《机器学习实战:基于Scikit-Learn和TensorFlow》(Scikit-Learn)
- 图书:《精通特征工程》(特征工程)
- 视频:https://www.bilibili.com/(没见过特别好的视频,因人而异)
遇到问题先去翻官方文档,再看CSDN、StackOverflow之类
2. 理论学习
- 吴恩达机器学习:https://www.bilibili.com/video/BV164411b7dx?share_source=copy_web
- 李宏毅系列课程:李宏毅个人网站
- 心法:
- 《统计学习方法》李航
- 《DeepLearning》花书
- 《机器学习》西瓜书 周志华(可以搭配 《公式详解》南瓜书)
心法适合潜下心来读,更适合有一定程度了解之后来推敲琢磨,初学的时候看不进去
Wu和Le的课后作业会比较全面地涉及到编程和工具的使用,通过课后作业巩固编程能力以及工具的熟练度
3. 工具使用
Anaconda/VScode/Pycharm/Linux
- CSDN
- b站
- 菜鸟教程:https://www.runoob.com/linux/linux-shell.html
不要怕麻烦,多折腾就行,折腾坏了就重装
4.下一步的建议
锻炼代码能力,熟悉DL/ML的各种任务,可以去各大竞赛平台参加比赛。
- 阿里天池:https://tianchi.aliyun.com/
- 百度飞桨:https://aistudio.baidu.com/aistudio/competition/
- Kaggle:https://www.kaggle.com/
- Codalab:https://codalab.org/
在视频课结束之后,可以考虑开始读论文了,个人认为刚开始应当广泛涉猎一些(我对DL/CV的认识不够,还请咨询老师)
- 经典任务:
图像分类、图像分割、图像检索、目标检测、目标跟踪、关键点检测、超分辨率重建、修复、抠图…
- 经典网络结构:
卷积神经网络、图神经网络、Transformer…
- 特定场景:
无监督、半监督、零样本、小样本、域自适应…