原文:towardsdatascience.com/guide-to-le…
作者:Insaf Ashrapov
译者:kbsc13(公众号:算法猿的成长)
前言
本文推荐的教程资源都是基于我个人的经验,它们对增加你的计算机视觉理论知识非常有帮助。另外,在学习计算机视觉的理论前,先了解和学习机器学习和 python 方面的知识是更好的做法。
框架
不需要在开始学习计算机视觉的时候,就选择使用框架,但应用新获得的知识是必要的。
对于框架的推荐,没有其他的推荐:
- pytorch:pytorch.org/tutorials/
- keras(TensorFlow):www.tensorflow.org/guide/keras
Pytorch 可能需要写更多的代码,但是它更加灵活,所以好选择使用它,并且越来越多的深度学习研究者都开始采用这个框架。
Albumentation(图像增强)和 catalyst(一个封装 pytorch 的 API 的框架)也同样是非常有帮助的,所以也可以使用它们,特别是个图像增强的框架--Albumentation。
硬件
- Nvidia GPU 10XX+ 型号已经足够使用了(大约 300$)
- Kaggle 的 kernels:www.kaggle.com/kernels,每周免… 30 个小时;
- 谷歌的 Colab:colab.research.google.com/,每个会话有 12 个小时的限制,每周免费时长限制未知。
理论&实践
网上课程
- CS231n:cs231n.stanford.edu/,是的网上课程,它… Youtube 上有课程视频,它们还有课后练习,但不建议去完成它们(尽管是免费的);
- Fast.ai:course.fast.ai/,第二门应该看的课程。… 也是一个封装了 pytorch 的框架,但它们很频繁更改它们的 API 接口,并且缺乏文档,这都是它不被推荐采用的原因。但观看它们的课程视频是可以了解到理论和有趣的技巧,这是值得花费时间的。
当学习这些课程的时候,推荐将这些理论通过推荐的框架来进行实现。
论文和代码
- arxiv.org/:免费获取新论文的网…
- paperswithcode.com/sota:展示了深度学…
- github.com/topics/comp…
书籍
并没有太多书需要阅读的,除了下面两本我觉得是非常有用的书,可以任选 pytorch 或者 keras 来实现代码
- Deep Learning with Python:www.amazon.com/Deep-Learni… Keras 的开发者、谷歌 AI 研究者--François Chollet。这不是一本免费的书,但这本书易于理解,并且可以学到很多之前不知道的知识点;
- Deep learning with Pytorch:pytorch.org/deep-learni… pytorch 团队的 Eli Stevens & Luca Antiga
Kaggle
网址:www.kaggle.com/competition…
Kaggle 是一个的机器学习比赛在线平台,它包含了各种类型的比赛,其中很多都是计算机视觉方面的比赛。在没有学完课程的时候,就可以开始参加比赛了,因为从比赛开始,可以免费运行很多公开的 kernels(公开的端到端的代码)。
比较困难的学习路线
另外一条学习路径可能是非常困难,但是你不仅可以学到只是做训练模型并预测结果的知识,还可以实现自己的研究,参考自Sergei Belousov aka bes。
需要做的就是阅读并实现下面的所有论文,当然仅仅读完也是非常棒的。
网络结构
- AlexNet: papers.nips.cc/paper/4824-…
- ZFNet: arxiv.org/abs/1311.29…
- VGG16: arxiv.org/abs/1505.06…
- ResNet: arxiv.org/abs/1704.06…
- GoogLeNet: arxiv.org/abs/1409.48…
- Inception: arxiv.org/abs/1512.00…
- Xception: arxiv.org/abs/1610.02…
- MobileNet: arxiv.org/abs/1704.04…
语义分割
- FCN: arxiv.org/abs/1411.40…
- SegNet: arxiv.org/abs/1511.00…
- UNet: arxiv.org/abs/1505.04…
- PSPNet: arxiv.org/abs/1612.01…
- DeepLab: arxiv.org/abs/1606.00…
- ICNet: arxiv.org/abs/1704.08…
- ENet: arxiv.org/abs/1606.02…
生成对抗网络(GAN)
- GAN: arxiv.org/abs/1406.26…
- DCGAN: arxiv.org/abs/1511.06…
- WGAN: arxiv.org/abs/1701.07…
- Pix2Pix: arxiv.org/abs/1611.07…
- CycleGAN: arxiv.org/abs/1703.10…
目标检测
- RCNN: arxiv.org/abs/1311.25…
- Fast-RCNN: arxiv.org/abs/1504.08…
- Faster-RCNN: arxiv.org/abs/1506.01…
- SSD: arxiv.org/abs/1512.02…
- YOLO: arxiv.org/abs/1506.02…
- YOLO9000: arxiv.org/abs/1612.08…
实例分割
- Mask-RCNN: arxiv.org/abs/1703.06…
- YOLACT: arxiv.org/abs/1904.02…
姿势预估
- PoseNet: arxiv.org/abs/1505.07…
- DensePose: arxiv.org/abs/1802.00…
小结
这篇文章是原文作者推荐的入门计算机视觉的一些资源,包括推荐采用的深度学习框架、课程、电子书、查阅论文和代码的网站,以及一个比赛网站,kaggle;
另外还有一条会更加困难的学习路线,也就是阅读经典的论文,从网络结构到常见的计算机视觉方向,检测、分割、GAN以及姿势预估,但完成后收获就会更多,不仅仅是只会运用框架来训练模型,解决问题,还有机会往研究方向发展。
本文的代码可以关注我的公众号,然后后台回复 计算机视觉论文 获取论文。
我的滴滴云专属AI大师码:9192,购买滴滴云GPU等AI产品输入大师码享9折优惠。 点击www.didiyun.com前往滴滴云官网购买。
欢迎关注我的微信公众号--算法猿的成长,或者扫描下方的二维码,大家一起交流,学习和进步!