程序員如何搭上人工智慧的快車?大量學習資料推薦
如果您對傳統企業互聯網轉型、大數據、智能製造、企業管理等內容的資料、PPT等感興趣,歡迎關注兮易強企閱聞公眾號
作者/chenjj
眼下,人工智慧已經成為越來越火的一個方向。普通程序員,如何轉向人工智慧方向,是大部分程序員的一個需求。
我推薦的學習路線是這樣的,如下圖:
下面是關於每個階段的具體介紹:
0. 領域了解
在學習任何一門知識之前,首先第一步就是了解這個知識是什麼?它能做什麼事?它的價值在什麼地方?了解這些問題後,你才能培養出興趣,興趣是最好的引路人,學習的動力與持久力才能讓你應付接下來的若干個階段。諸如關於機器學習是什麼,能做什麼,它與深度學習以及人工智慧的關係。
1. 知識準備
如果你離校過久,或者覺得基礎不牢,最好事先做一下準備複習工作。以下的準備工作不多,但足以應付後面階段的學習。
數學:複習以下基本知識。線性代數:矩陣乘法;高數:求導;概率論:條件與後驗概率。
英文:常備一個在線英文詞典,能夠不吃力的看一些英文的資料網頁;
FQ:可以隨時隨地上Google,這是一個很重要的工具。不是說百度查的不能看,而是很多情況下Google搜出來的資料比百度搜的幾十頁的資料還管用,尤其是在查英文關鍵字時。節省時間可是很重要的學習效率提升;
2. 機器學習
機器學習的第一門課程首推Andrew Ng(吳恩達,目前百度首席科學家)的機器學習。這門課程有以下特點:難度適中,同時有足夠的實戰例子,非常適合第一次學習的人。
cs229 這門課程我這裡不推薦,為什麼,原因有以下:
時間:cs229 的時間太早,一些知識已經跟不上當今的發展,目前最為火熱的神經網路一筆帶過。
教學:Ng在cs229 時候的教學稍顯青澀,可能是面對網路教學的原因。有很多問題其實他都沒有講清楚,而且下面的人的提問其實也很煩躁,你往往不關心那些人的問題。這點在Coursera上就明顯得到了改善,你會發現Ng的教學水平大幅度改善了,他會對你循循善誘,推心置腹,由淺入深的教學,在碰到你不明白的單詞術語時也會叫你不要擔心,更重要的,推導與圖表不要太完善,非常細緻清晰,這點真是強力推薦;
字幕:cs229 的字幕質量比Coursera上的差了一截。
作業:cs229 沒有作業,雖然你可以做一些,但不會有人看。這點遠不如Coursera上每周有deadline的那種作業,而且每期作業提交上去都有打分。
3. 實踐做項目
這裡需要選擇一個應用方向,是圖像(計算機視覺),音頻(語音識別),還是文本(自然語言處理)。這裡推薦選擇圖像領域,這裡面的開源項目較多,入門也較簡單,可以使用OpenCV做開發,裡面已經實現好了神經網路,SVM等機器學習演算法。項目做好後,可以開源到到 Github 上面,然後不斷完善它。實戰項目做完後,你可以繼續進一步深入學習,這時候有兩個選擇,深度學習和繼續機器學習。
4. 深度學習
深度學習:深度學習是目前最火熱的研究方向。有以下特點:知識更新快,較為零碎,沒有系統講解的書。因此學習的資源也相對零散,下面是一些資源介紹。
其中不推薦的部分並不代表不好,而是在這個初學階段不合適:
推薦,UFLDL: 非常好的DL基礎教程,也是Andrew Ng寫的。有很詳盡的推導,有翻譯,且翻譯質量很高;
推薦,Deep learning (paper):2015年Nature上的論文,由三深度學習界的大牛所寫,讀完全篇論文,給人高屋建瓴,一覽眾山小的感覺,強烈推薦。如果只能讀一篇論文了解深度學習,我推薦此篇。這篇論文有同名的中文翻譯;
推薦,Neural networks and deep learning:這本書的作者非常擅長以淺顯的語言表達深刻的道理,雖然沒有翻譯,但是閱讀並不困難;
推薦,Recurrent Neural Networks: 結合一個實際案例告訴你RNN是什麼,整篇教程學完以後,會讓你對RNN如何產生作用的有很清晰的認識,而這個效果,甚至是讀幾篇相關論文所沒有的;
不推薦,Neural Networks for Machine Learning – University of Toronto | Coursera:深度學習創始人教的課,最大的問題是太難,而且老先生的吐字有時不是很標準;
不推薦,Deep Learning (book):同樣也是由深度學習大牛所寫的書,但感覺就像是第二作者,也就是他的學生所寫的。很多內容都講了,但是感覺也沒講出什麼內容來,只是告訴你來自那篇論文,這樣的話可能直接閱讀論文更合適。
不推薦,cs231n:李菲菲的課程,很有名,專門講CNN。但是這門課程有一個最大的問題,就是沒有字幕,雖然有youtube的自動翻譯字幕,但有還不如沒有。
5. 繼續機器學習
深度學習未必就是未來的一定主流,至少一些大牛是這麼認為的。傳統的機器學習有如下特點,知識系統化,有相對經典的書。其中統計學習(代表SVM)與集成學習(代表adaboost)是在實踐中使用非常多的技術。
推薦,機器學習(周志華):如果是在以前,機器學習方面的經典教材首推PRML,但現在周老師的書出來以後,就不再是這樣了。首先推薦讀周老師的書。這本書有一個特點,那就是再難的道理也能用淺顯精鍊的語言表達出來。正如周老師的名言:「體現你水平的地方是把難的東西講容易了,而不是把容易的東西講難,想把一個東西講難實在太簡單」;
不推薦,Pattern Recognition And Machine Learning:當前階段不推薦。PRML是以貝葉斯的觀點看待很多機器學習方法,這也是它的一大特色。但對於初學者來說,這種觀點其實並無必要。而且此書沒有中文翻譯,當前階段硬啃很容易放棄;
6. 開源項目
當知識儲備較為充足時,學習可以再次轉入實踐階段。這時候的實踐仍然可以分兩步走,學習經典的開源項目或者發表高質量的論文。開源項目的學習應該以盡量以優化為目的,單純為讀代碼而學習效果往往不太好。好的開源項目都可以在Github 里搜索。這裡以深度學習為例。深度學習的開源優秀庫有很多,例如torch,theano等等,這裡列舉其中的兩個:
推薦,DeepLearnToolbox:較早的一個深度學習庫,用matlab語言撰寫,較為適合從剛學習的課程轉入學習。遺憾的是作者不再維護它了;
推薦,tensorflow:Google的開源庫,時至今日,已經有40000多個star,非常驚人,支持移動設備。
7. 會議論文
關於在哪裡看論文,可以看一下CCF推薦排名,了解一下這個領域裡有哪些優秀的會議。
下面介紹兩個圖像與機器學習領域的著名頂級會議:
CVPR:與另兩個會議ICCV和ECCV合稱計算機視覺領域的三大會,注意會議每年的主頁是變動的,因此搜索需要加上年份;
Conference on Neural Information Processing Systems:簡稱NIPS,許多重要的工作發表在這上面,例如關於CNN的一篇重要論文就是發表在上面。
8. 自由學習
到這裡了,可以說是進入這個門了。下面可以依據興趣來自由學習。前階段不推薦的學習資源也可隨意學習,下面是點評:
cs229 :Ng寫的講義很不錯,其中關於SVM的推導部分很清晰,想學習SVM推薦;
Neural Networks for Machine Learning:大牛的視角跟人就是不一樣,看看Hinton對神經網路是怎麼看的,往往會讓你有種原來如此的感悟。其實看這門課程也等同於讀論文,因為幾乎每節課的參考資料里都有論文要你讀;
CS231n: Convolutional Neural Networks for Visual Recognition:最新的知識,還有詳細的作業。國內應該有團隊對字幕進行了翻譯,可以找找;
PRML:作為一門經典的機器學習書籍,是很有閱讀必要的,會讓你對機器學習擁有一個其他的觀察視角。
點擊展開全文
※這個有病的日本綜藝一出招,我的人生觀似乎又被刷新了!
※「無子老齡化時代」的日本什麼樣
※一個只有49名員工的日本公司,承包了中國高鐵的所有螺母
TAG:兮易強企 |
※編程大牛推薦,每個程序員都應該了解的學習資料、代碼技巧
※找資料的是個機器人?人工智慧AI編輯助手不簡單!
※你需要的人工智慧學習資料,都在這裡附下載
※醫療人工智慧長期大量搜集患者敏感資料 AI醫療亟須打消疑慮
※企業上雲的背後 看新數科技如何推動資料庫創新?
※【重磅更新】工業設計師必備資料精選
※你真的了解資料庫工程師嗎?寫給想從事資料庫方面工作的朋友
※大興國際機場通行全流程無紙化,還將研究建設旅客面像信息資料庫
※工業設計師必備資料精選
※木工門框刀具應用技術資料
※如何落地資料庫智能化運維?
※打造學習型組織「資料庫」
※木工敏仔刀選用技術資料
※微軟刪除人臉資料庫;中信原董事長王軍去世;三大運營商合資入局新能源
※PHP學習資料推薦
※木工刀具生產技術資料
※淺談資料庫高可用性技術
※步兵武器資料大全
※詳解關係型資料庫運作機制
※中國影響力人物資料庫醫藥行業顧問——王青松