天天看點

2020年計算機視覺學習指南

作者:insaf ashrapov

譯者:kbsc13(公衆号:算法猿的成長)

本文推薦的教程資源都是基于我個人的經驗,它們對增加你的計算機視覺理論知識非常有幫助 。 另外,在學習計算機視覺的理論前,先了解和學習機器學習和 python 方面的知識是更好的做法。

不需要在開始學習計算機視覺的時候,就選擇使用架構,但應用新獲得的知識是必要的。

對于架構的推薦,沒有其他的推薦:

pytorch:https://pytorch.org/tutorials/

keras(tensorflow):https://www.tensorflow.org/guide/keras

pytorch 可能需要寫更多的代碼,但是它更加靈活,是以最好選擇使用它,并且越來越多的深度學習研究者都開始采用這個架構。

albumentation(圖像增強)和 catalyst(一個封裝 pytorch 的進階 api 的架構)也同樣是非常有幫助的,是以也可以使用它們,特别是第一個圖像增強的架構--albumentation。

nvidia gpu 10xx+ 型号已經足夠使用了(大約 300$)

kaggle 的 kernels:https://www.kaggle.com/kernels,每周免費使用 30 個小時;

谷歌的 colab:https://colab.research.google.com/,每個會話有 12 個小時的限制,每周免費時長限制未知。

cs231n:http://cs231n.stanford.edu/,是首選的網上課程,它介紹了計算機視覺的所有必須掌握的基礎知識。在 youtube 上有課程視訊,它們還有課後練習,但不建議去完成它們(盡管是免費的);

fast.ai:https://course.fast.ai/,第二門應該看的課程。fast.ai 也是一個封裝了 pytorch 的進階架構,但它們很頻繁更改它們的 api 接口,并且缺乏文檔,這都是它不被推薦采用的原因。但觀看它們的課程視訊是可以了解到理論和有趣的技巧,這是值得花費時間的。

當學習這些課程的時候,推薦将這些理論通過推薦的架構來進行實作。

https://arxiv.org/:免費擷取最新論文的網站

https://paperswithcode.com/sota:展示了深度學習最新的性能最佳的論文,不僅僅是計算機視覺方面的;

https://github.com/topics/computer-vision?l=python:可以在這找到代碼實作的算法

并沒有太多書需要閱讀的,除了下面兩本我覺得是非常有用的書,可以任選 pytorch 或者 keras 來實作代碼

deep learning with python:https://www.amazon.com/deep-learning-python-francois-chollet/dp/1617294438,作者是 keras 的開發者、谷歌 ai 研究者--françois chollet。這不是一本免費的書,但這本書易于了解,并且可以學到很多之前不知道的知識點;

deep learning with pytorch:https://pytorch.org/deep-learning-with-pytorch-thank-you,免費的書籍,來自 pytorch 團隊的 eli stevens & luca antiga

網址:https://www.kaggle.com/competitions

kaggle 是一個著名的機器學習比賽線上平台,它包含了各種類型的比賽,其中很多都是計算機視覺方面的比賽。在沒有學完課程的時候,就可以開始參加比賽了,因為從比賽開始,可以免費運作很多公開的 kernels(公開的端到端的代碼)。

另外一條學習路徑可能是非常困難,但是你不僅可以學到隻是做訓練模型并預測結果的知識,還可以實作自己的研究,參考自sergei belousov aka bes。

需要做的就是閱讀并實作下面的所有論文,當然僅僅讀完也是非常棒的。

alexnet: https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks

zfnet: https://arxiv.org/abs/1311.2901

vgg16: https://arxiv.org/abs/1505.06798

resnet: https://arxiv.org/abs/1704.06904

googlenet: https://arxiv.org/abs/1409.4842

inception: https://arxiv.org/abs/1512.00567

xception: https://arxiv.org/abs/1610.02357

mobilenet: https://arxiv.org/abs/1704.04861

fcn: https://arxiv.org/abs/1411.4038

segnet: https://arxiv.org/abs/1511.00561

unet: https://arxiv.org/abs/1505.04597

pspnet: https://arxiv.org/abs/1612.01105

deeplab: https://arxiv.org/abs/1606.00915

icnet: https://arxiv.org/abs/1704.08545

enet: https://arxiv.org/abs/1606.02147

gan: https://arxiv.org/abs/1406.2661

dcgan: https://arxiv.org/abs/1511.06434

wgan: https://arxiv.org/abs/1701.07875

pix2pix: https://arxiv.org/abs/1611.07004

cyclegan: https://arxiv.org/abs/1703.10593

rcnn: https://arxiv.org/abs/1311.2524

fast-rcnn: https://arxiv.org/abs/1504.08083

faster-rcnn: https://arxiv.org/abs/1506.01497

ssd: https://arxiv.org/abs/1512.02325

yolo: https://arxiv.org/abs/1506.02640

yolo9000: https://arxiv.org/abs/1612.08242

mask-rcnn: https://arxiv.org/abs/1703.06870

yolact: https://arxiv.org/abs/1904.02689

posenet: https://arxiv.org/abs/1505.07427

densepose: https://arxiv.org/abs/1802.00434

這篇文章是原文作者推薦的入門計算機視覺的一些資源,包括推薦采用的深度學習架構、課程、電子書、查閱論文和代碼的網站,以及一個比賽網站,kaggle;

另外還有一條會更加困難的學習路線,也就是閱讀經典的論文,從網絡結構到常見的計算機視覺方向,檢測、分割、gan以及姿勢預估,但完成後收獲就會更多,不僅僅是隻會運用架構來訓練模型,解決問題,還有機會往研究方向發展。

最後,也可以通過下方搜尋框搜尋公衆号更新過的計算機視覺、深度學習和pytorch相關的文章,了解更多相關的知識。

2020年計算機視覺學習指南