介紹
如今有大量的資源可以用來學習計算機視覺技術,那我們如何從衆多教程中進行選擇呢?哪個值得我們去投入時間呢?
如果你也遇到這些問題,那麼恭喜你來對地方了。我們通過理解數百種資源來選擇值得你花費時間的資源-這就是我們首先推出本文的主要原因之一。
去年,我們廣泛地專注於兩個技術的學習方法——機器學習和深度學習,但是我們的社區需要更細化的學習路徑——一個結構化的計算機視覺學習路徑。
這是可以理解的,因爲計算機視覺專家的需求和價值在業界遙遙領先。專門研究計算機視覺及其不同方面,你會看到大量招聘人員試圖接近你。
我記得當我開始自己的計算機視覺之旅時,我同時參考了多種資源——書籍、文章(當時並不多)、YouTube視頻等等。
因此,我很高興有機會爲你整理這種結構化的計算機視覺學習路徑。在開始學習之前,讓我們瞭解一下爲簡化你的學習過程而構建的框架。
我們的計算機視覺學習路徑框架
每個月都要有其對應的學習結構,這是我們對每個月需要了解的不同方面進行分類的方式:
- 目標:這個月你會學到什麼?關鍵要點是什麼?你的計算機視覺之旅將如何進行?我們會在每個月初提及此問題,以確保你知道該月底的立場以及所處的位置
- 建議時間:你每週平均應在該部分上花費多少時間
- 學習資源:該月你將學習的計算機視覺主題的頂級資源集合,其中包括文章,教程,視頻,研究論文和其他類似資源
你可以在此處下載該學習路徑的相應信息圖。 - https://discuss.analyticsvidhya.com/t/heres-your-learning-path-to-master-computer-vision-in-2020/87785
在數據科學領域尋找其他學習途徑?別擔心,我們爲你提供了: - 2020年成爲數據科學家和掌握機器學習的學習之路
https://www.analyticsvidhya.com/blog/2020/01/learning-path-data-scientist-machine-learning-2020 - 2020年掌握深度學習的學習道路
https://www.analyticsvidhya.com/blog/2020/01/comprehensive-learning-path-deep-learning-2020 - 自然語言處理(NLP)學習路徑
https://www.analyticsvidhya.com/blog/2020/01/learning-path-nlp-2020
第1個月 – 涵蓋基礎知識:Python與統計
目標:到第一個月末,你將對什麼是計算機視覺有基本的瞭解。你還將對Python和Statistics(計算機視覺之旅中的兩個核心主題)有一定的知識儲備。
建議時間:每週5-6小時
計算機視覺的介紹和動機:SAS計算機視覺教程:它是什麼,它爲什麼重要:https://www.sas.com/en_in/insights/analytics/computer-vision.html
OpenCV中文官方教程v4.1(可選):
先決條件:
Python:Analytics Vidhya撰寫的Python課程
- https://courses.analyticsvidhya.com/courses/introduction-to-data-science
統計:可汗學院的描述性統計 - https://www.khanacademy.org/math/engageny-alg-1/alg1-2
第2個月 – 使用機器學習解決圖像分類問題
目標:你將對機器學習有基本的瞭解。你應該熟悉不同的圖像預處理技術,並能夠使用機器學習模型解決圖像分類問題。
建議時間:每週5-6小時
機器學習基礎: - 機器學習基礎
https://www.analyticsvidhya.com/blog/2015/06/machine-learning-basics/ - sklearn中文官方教程0.22.1(可選):
http://sklearn123.com - 線性迴歸
https://www.analyticsvidhya.com/blog/2017/06/a-comprehensive-guide-for-linear-ridge-and-lasso-regression/ - 邏輯迴歸
https://www.analyticsvidhya.com/blog/2015/10/basics-logistic-regression/ - 斯坦福大學-機器學習的動機與應用
https://see.stanford.edu/Course/CS229/47 - 斯坦福大學的“過擬合”和“過擬合”的概念
https://see.stanford.edu/Course/CS229/42
圖像預處理: - 從圖像中提取特徵的3種技術
https://www.analyticsvidhya.com/blog/2019/08/3-techniques-extract-features-from-image-data-machine-learning-python/ - HOG特徵
https://www.analyticsvidhya.com/blog/2019/09/feature-engineering-images-introduction-hog-feature-descriptor/ - SIFT特徵
https://www.analyticsvidhya.com/blog/2019/10/detailed-guide-powerful-sift-technique-image-matching-python/
使用機器學習進行圖像分類: - 使用邏輯迴歸進行圖像分類
https://www.kaggle.com/gulsahdemiryurek/image-classification-with-logistic-regression - 使用Logistic迴歸進行圖像分類
https://mmlind.github.io/Using_Logistic_Regression_to_solve_MNIST/ - 項目:識別服裝
https://datahack.analyticsvidhya.com/contest/practice-problem-identify-the-apparels/
第三個月 – Keras和神經網絡簡介
目標:你將學習最常用的深度學習工具之一-Keras,你還將瞭解什麼是神經網絡以及它們如何工作,到三月底,你將能夠使用神經網絡解決圖像分類問題。
建議時間:每週4-5小時
學習Keras: - Keras文檔
https://keras.io/ - 使用Keras構建神經網絡
https://www.analyticsvidhya.com/blog/2016/10/tutorial-optimizing-neural-networks-using-keras-with-image-recognition-case-study/
神經網絡簡介: - 從零開始的神經網絡
https://www.analyticsvidhya.com/blog/2017/05/neural-network-from-scratch-in-python-and-r/ - 斯坦福大學神經網絡簡介
https://youtu.be/d14TUNcbn1k - 3Blue1Brown的神經網絡:
https://youtu.be/aircAruvnKk
項目:識別服裝
https://datahack.analyticsvidhya.com/contest/practice-problem-identify-the-apparels/
第4個月 – 瞭解卷積神經網絡(CNN),遷移學習和參加比賽
目標:我想將其稱爲計算機視覺之旅中的“進階”月份。隨着卷積神經網絡(CNNs)的引入,學習也更上一層樓,這些cnn是我們最近看到的許多計算機視覺應用的幕後推手,包括目標檢測。在你的旅程中,你也應該通過參加比賽來鍛鍊自己。
建議時間:每週6-7小時
卷積神經網絡(CNN)簡介: - 卷積神經網絡(CNN)簡化
https://www.analyticsvidhya.com/blog/2017/06/architecture-of-convolutional-neural-networks-simplified-demystified - 斯坦福大學的卷積神經網絡:
https://youtu.be/bNb2fEVKeEo
遷移學習簡介: - 掌握遷移學習
https://www.analyticsvidhya.com/blog/2017/06/transfer-learning-the-art-of-fine-tuning-a-pre-trained-model - 斯坦福大學實踐中的ConvNets:
https://youtu.be/dUTzeP_HTZg
項目:識別數字:https://datahack.analyticsvidhya.com/contest/practice-problem-identify-the-digits
參加比賽: - DataHack
https://datahack.analyticsvidhya.com/contest/all - Kaggle
https://www.kaggle.com/competitions
第5個月 – 解決對象檢測問題
目標:對象檢測是一種廣泛使用的計算機視覺技術(也許是使用最廣泛的技術)。這是吸引我使用計算機視覺的原因!這個月就是要熟悉不同的對象檢測算法。另外,我強烈建議你撰寫到目前爲止所學概念的文章。
建議時間:每週6-7小時
解決對象檢測問題: - 目標檢測技術的分步介紹
https://www.analyticsvidhya.com/blog/2018/10/a-step-by-step-introduction-to-the-basic-object-detection-algorithms-part-1 - 實現faster RCNN用於目標檢測
https://www.analyticsvidhya.com/blog/2018/11/implementation-faster-r-cnn-python-object-detection - 使用YOLO進行物體檢測
https://www.analyticsvidhya.com/blog/2018/12/practical-guide-object-detection-yolo-framewor-python - 斯坦福大學的物體檢測:
https://youtu.be/nDPWywWRIRo - YOLO論文
https://arxiv.org/pdf/1506.02640.pdf - YOLO預訓練模型
- https://pjreddie.com/darknet/yolo/
項目: - 數臉挑戰
https://datahack.analyticsvidhya.com/contest/vista-codefest-computer-vision-1 - COCO物體檢測挑戰
http://cocodataset.org/#download
開始撰寫文章,與社區互動吧!
第6個月 – 瞭解圖像分割和注意力模型
目標:六月,你將學習如何解決圖像分割問題,同時你還將瞭解什麼是注意力模型(無論在理論上還是在實踐上)。在這裏,你對計算機視覺的深入瞭解才真正開始獲得回報。
建議時間:每週6-7小時
圖像分割簡介: - 圖像分割技術的分步介紹
https://www.analyticsvidhya.com/blog/2019/04/introduction-image-segmentation-techniques-python - 實現Mask R-CNN進行圖像分割
https://www.analyticsvidhya.com/blog/2019/07/computer-vision-implementing-mask-r-cnn-image-segmentation - Mask R-CNN論文
https://arxiv.org/pdf/1703.06870.pdf - Mask R-CNN GitHub存儲庫
https://github.com/matterport/Mask_RCNN
項目:COCO分割挑戰
http://cocodataset.org/#download
Attention 模型: - Sequence-to-Sequence Modeling with Attention
https://www.analyticsvidhya.com/blog/2018/03/essentials-of-deep-learning-sequence-to-sequence-modelling-with-attention-part-i - Sequence-to-Sequence Models by Stanford
https://nlp.stanford.edu/~johnhew/public/14-seq2seq.pdf
第7個月 – 探索深度學習工具
目標:這是一個非常有趣的學習月!到目前爲止,我們已經涵蓋了許多計算機視覺概念,現在是時候動手使用最先進的深度學習框架了!這取決於你自己的選擇,但我們建議你現在使用行業中最常見的兩種工具——PyTorch和TensorFlow。嘗試使用這兩種工具中的任何一種來實現你到目前爲止所涵蓋的所有概念。
建議時間:每週6-7小時
PyTorch: - PyTorch教程
https://pytorch.org/tutorials/ - PyTorch的初學者友好指南
https://www.analyticsvidhya.com/blog/2019/09/introduction-to-pytorch-from-scratch -
PyTorch中文官方教程(可選)
http://pytorch123.com
TensorFlow: - TensorFlow教程
https://www.tensorflow.org/tutorials - TensorFlow簡介
https://www.analyticsvidhya.com/blog/2016/10/an-introduction-to-implementing-neural-networks-using-tensorflow
第8個月 – 瞭解NLP和圖像字幕的基礎
目標:這是你專業化的開始。這是將你的深度學習知識與自然語言處理(NLP)概念結合起來來解決圖像字幕項目。
建議時間:每週6-7小時
自然語言處理(NLP)的基礎知識: - 斯坦福-詞嵌入:
https://youtu.be/ERibwqs9p38 - 遞歸神經網絡(RNN)簡介:
https://youtu.be/UNmqTiOnRfg - RNN教程
http://www.wildml.com/2015/10/recurrent-neural-networks-tutorial-part-3-backpropagation-through-time-and-vanishing-gradients/
瞭解圖像字幕 - 自動圖像字幕
https://cs.stanford.edu/people/karpathy/sfmltalk.pdf - 使用深度學習的圖像字幕
https://www.analyticsvidhya.com/blog/2018/04/solving-an-image-captioning-task-using-deep-learning
項目:COCO字幕挑戰賽
http://cocodataset.org/#download
第9個月 – 熟悉生成對抗網絡(GAN)
目標:9月,你將瞭解生成對抗網絡(GAN)。自從Ian Goodfellow於2014年正式推出GAN以來,GANs就火爆了起來。目前,GANs的實際應用很多,包括修復、生成圖像等。
建議時間:每週6-7小時
瞭解生成對抗網絡(GAN): - Ian Goodfellow的生成對抗網絡(GAN):
https://youtu.be/HGYYEUSm-0Q - GAN 論文
https://arxiv.org/pdf/1406.2661.pdf - 生成對抗網絡的最新進展
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8667290 - Keras-GAN
https://github.com/eriklindernoren/Keras-GAN
第10個月 – 視頻分析簡介
目標:視頻分析是計算機視覺中一個蓬勃發展的應用。到2020年(及以後),對這項技能的需求只增不減,因此學習如何使用視頻數據集的知識是必要的。
建議時間:每週5-6小時
視頻分析簡介: - 計算視頻中演員的放映時間
https://www.analyticsvidhya.com/blog/2018/09/deep-learning-video-classification-python - 建立視頻分類模型
https://www.analyticsvidhya.com/blog/2019/09/step-by-step-deep-learning-tutorial-video-classification-python - 通過視頻進行人臉檢測
https://www.analyticsvidhya.com/blog/2018/12/introduction-face-detection-video-deep-learning-python
第11個月和第12個月 – 解決項目並參加競賽
目標:最後兩個月都是關於參加多個項目和競賽來獲得實踐經驗的。到目前爲止,我們除了學習概念外,還涵蓋了多個項目——現在是時候在真實的數據集上檢驗你的學習成果了。
建議時間:每週5-6小時 - 數字識別器
https://www.kaggle.com/c/digit-recognizer - ImageNet對象定位挑戰
https://www.kaggle.com/c/imagenet-object-localization-challenge - 年齡檢測
https://datahack.analyticsvidhya.com/contest/practice-problem-age-detection - 空中仙人掌鑑定
https://www.kaggle.com/c/aerial-cactus-identification - 超聲神經分割
https://www.kaggle.com/c/ultrasound-nerve-segmentation - 對抗性***防禦
https://www.kaggle.com/c/nips-2017-defense-against-adversarial-attack/overview
信息圖– 2020年計算機視覺學習之路
學習新事物時跟蹤進度是結構化學習過程的關鍵。爲了方便在深入研究領域時勾選所有事項。還有什麼比一個有插圖的清單更好的呢?它逐月列出了計算機視覺學習的路徑,請看下圖:
參考鏈接:https://www.analyticsvidhya.com/blog/2020/01/computer-vision-learning-path-2020/