如何從一個「行業小白」走進「機器學習、CV、深度學習等」這個行業,並取得一定的成績?

如何從一個「行業小白」走進「機器學習、CV、深度學習等」這個行業,並取得一定的成績?

來自專欄 深度學習乾貨鋪

如果大家看過了之前的文章,

kuki:寫給那些準備入坑機器學習、計算機視覺、深度學習等相關領域的人,包括:讀研、轉行等不同人群,同行勿噴

應該是決定開始走緊這坑了。而且最近大家問得也比較多,也是比較關心的問題,如果從一個零基礎的行業小白,走進這個坑?我從自身的角度,結合自己目前的認知來進行一些分析、介紹,也許不適用於太多的人,但總會對一些人有幫助吧。好了,不比比了,直接上乾貨。

首先,我們解釋一下我是×××專業,我能不能學?什麼人能學?

1)有可能你不是計算機專業的,沒關係,但是你要具備一定的數學基礎,本科學得忘乾淨了也沒關係,可以在學會來,反正當初考試也就用了幾天時間。

2)計算機專業的,具備編程基礎,只是沒做過領域研究,這都不算行業小白了,已經算半個行業人士了。

3)通信、電氣、自動化專業的,沒問題,只要能學數學和英語,都沒問題

4)其他工科類的,還是數學!英語!能學就行!

5)文科類的,如果真的想學,反正我學英語的同學,考上北大計算機,在做知識圖譜,都是可能的!!

綜上,只要具備學習能力+肯學的+有時間學得,基本都能可以入行,當然,越年輕越好,由於本人還不過30歲,30以後的想轉行的,建議還是不要諮詢我了。。真的沒有這個生活經歷。只能說,有夢想是好的,加油!

2)什麼是行業大牛?

吳恩達,李飛飛這樣的我就不提了,看幾個大牛的主頁,你就知道了。

看到那幾個不顯眼的CVPR、PAMI了嗎???2018年的,就這麼多了??現在幾號??2018年4月17日??這就這麼多了????

看到這裡,在想想自己,還有什麼資格吹牛。。。趕緊去看論文,碼代碼去了!!

3)入門CV、機器學習、深度學習等行業你需要什麼基礎

這個。。。我在kuki:寫給那些準備入坑機器學習、計算機視覺、深度學習等相關領域的人,包括:讀研、轉行等不同人群,同行勿噴,又提過,在提一遍:

  1. 首先你需要掌握幾種編程語言:python首選,然後是c/c++,然後是matlab,因為對於很多計算機視覺的任務,python和matlab寫的源碼會比較多,而工程實施有需要c/c++。所以這幾門語言是必不可少的;
  2. 入門課程:
    1. 首先是線性代數,看麻省理工的,你會發現和我們本科學得線性代數好像不太一樣,這個講解的更加容易理解!!不再是挺在做計算題的層次,是真的有用!!麻省理工公開課:線性代數_全35集_網易公開課
    2. 斯坦福機器學習:斯坦福大學公開課 :機器學習課程,這個就不強調了,NG的課程,一般這個行業的都會學習下吧!
    3. 張志華老師的統計機器學習,機器學習導論:ocw.sjtu.edu.cn/G2S/OCW,這個課程涉及到更加深入的統計機器學習理論,看完以後你會對概率論有更深入的了解!!
    4. 周志華老師的西瓜書,這個對於機器學習整體的介紹還是比較基礎的!!這本書,記得找工作時候,每次面試前都會看一遍!!
  3. 進階課程:這兩本是字典一樣的存在,每次寫文章的時候都會翻一翻,把自己的理論拔高升級下,很難,至今很多沒看懂。。!
    1. 矩陣論
    2. 凸優化理論
  4. 關於深度學習的東西,我主要是通過調試模型,熟悉的caffe,對於tensorflow則是通過keras了解和針對不同計算機視覺的任務,跑嚮應的模型,一點點熟悉的,後面我會針對這些東西更加詳細的給大家介紹怎麼用,目前比較好的書,我也不好推薦,自己主要是看一些博客了解的。
  5. 你還需要讀英文文獻!!!關注頂會議,頂級期刊的文章:我是最計算機視覺的,關注的CVPR、ICCV、ECCV、IJCAI、AAAI、ICML等,期刊的主要是TPAMI、TMM、TCSVCT、TIP等等,另外,不得不提的就是arxiv,這裡會有很多最新的工作,好多大牛在發表前都會丟在這個上面,每天刷一刷,作為你的日常!!
  6. 最後就是追蹤一些學術大牛!多看看他們的主頁,看看他們滿屏幕的頂會和頂刊的文章,一方面能下載到源碼,另一方面,激勵下自己,看看自己和大牛的差距,很多文章就是他們的學生的一作,了解了解自己和同齡人的差距!

4)我要怎麼選方向?

在前面說了太多的基礎的東西,你可能已經具備了相應的武器,還需要用這些武器去做一些事情,產生一些成果,這樣才能激勵大家繼續學下去(大概什麼偉人說過吧),因此,你需要選一個方向,去實踐,收穫,在實踐,在收穫。。那怎麼選呢?

我自己做CV的,雖然做過一些NLP,但是CV的最熟悉,就以此為例:

首先cv主要處理的是圖片信號,給你一副圖片,你要考慮一副圖片你能做什麼事情,會有那些任務,從原始圖片開始,包括了低解析度和高解析度下。包括了各種條件下採集到的圖片有可能會有遮擋,有可能會有很強的光照,有可能會有很暗的光照等等,針對不同的場景,你需要做不同的處理,這時候就有了圖像降噪,超解析度重構,圖像質量恢復還原等等,再結合具體的任務,比如人臉,行人,車輛,醫學圖像,服裝,工業界的裂紋,很多演算法會嘗試解決在這個惡劣條件下的識別,分類,檢測的任務。

解決這些任務一般有幾個過程,預處理階段---》特徵工程,表示學習----》決策分析

圖像降噪這些就是預處理階段

人臉識別的任務,更多的看中表示學習,特徵工程階段

目標跟蹤問題則關注特徵工程+決策分析階段,尤其多目標跟蹤問題,數據關聯、決策分析十分重要;

特徵工程又包括了全局的、局部的和關鍵點的、

還有根據採集到的圖像數據,又可以分成二維和三維的問題

對於二維圖像任務,包括了:圖像生成、還原、恢復、降噪、檢測、識別、分類、聚類、描述、方法分別涉及到深度學習、優化理論(表示學習、度量學習)等等

處理的對象可以包括人臉、行人、車、服裝、自然場景、醫學影像、工業裂紋等等

對於三維圖像問題包括了深度估計、障礙物檢測、三維重建等等

深度學習的話、需要調網路、設計loss、設計層、提高網路的性能和可解釋性

優化演算法則包括了稀疏表示、稀疏,低秩,優化模型求解,當然,一般優化問題求解都有相應的套路,比如ADMM、拉格朗日等等

  1. 首先,你要先了解下上面這些都是什麼東西??然後,再想想自己喜歡哪個階段的任務!最後在看看論文,看看目前的比賽,結合導師的項目和已經有的開源數據集,再去定最終的研究方向!
  2. 最後,你還需要一個GTX1080!!!老闆窮或者自己窮,就放棄深度學習,和我以前一樣做優化吧!!哈哈哈

5)如何閱讀論文,並對某一個方向進行深入的了解和調研!

(我曾經的學術之路是怎麼走的)

今天大概先寫這麼多,明天在整理下!!!困!!

最後,希望每一個準備入坑的朋友,能夠從上面的內容中有所收穫,並且找到自己的方向,多發paper!!!做產品的,把技術做好,用在工程上!!推動,智能社會的發展!!!另外,有人工智慧、機器學習創業的想法,也歡迎和我一起討論!!大佬們帶我一起共同富裕!!

如有問題,歡迎入群!

QQ群:745224003,目前群人數較少,希望後面慢慢壯大,想加微信,入群私聊~


推薦閱讀:

EdX-Columbia機器學習課第8講筆記:線性分類器與感知機
機器學習各種熵:從入門到全面掌握
山田的ML日記(1)-ML中的小技巧鏈接合集
線性支持向量機(soft-margin SVM)

TAG:機器學習 | 深度學習DeepLearning | 計算機視覺 |