作者: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相關的文章,了解更多相關的知識。