我看到有人在問,Andrew Ng的視頻,還有代碼這些的資料。再次整理一下:php
一、機器學習實戰的書:《機器學習實戰 (圖靈程序設計叢書 72)》 [美]Peter Harrington, 李銳, 李鵬, 曲亞東, 王斌 書評 簡介 電子書下載 Kindle電子書html
二、Andrew Ng老師的視頻教程:Machine Learning:斯坦福大學機器學習我的筆記完整版(附全部視頻和字幕) (如今Andrew Ng老師沒開新課了,這是一個同窗本身下載的全部視頻和相關資料,你們能夠自行下載)git
三、Andrew Ng老師早期的一個機器學習公開課:斯坦福大學公開課 :機器學習課程github
四、Andrew Ng老師機器學習課的代碼。Python版本:icrtiou/Coursera-ML-AndrewNg算法
Matlab版本:vugsus/coursera-machine-learning編程
另外,鑑於如今深度學習這麼的火熱,並且如今作機器學習也避免不了瞭解及應用深度學習,我這裏也加入一些深度學習的內容。網絡
一、入門的數學和編程基礎和機器學習的要求是同樣的。框架
二、入門讀物仍是推薦Andrew Ng老師組織的一個WIKI,UFLDL Tutorial - Ufldl , 很是建議你們老老實實花兩個星期的時間把這個wiki的內容和相關程序本身實現一次。並且,這個wiki是有中文版本的,在每一個頁面的最下面均可以點擊查看中文版本。(PS:我還很榮幸的當時參與了當時的翻譯工做,爲內容的中文化作了一點點微小的工做。)。機器學習
三、如今的深度學習應用最爲普遍的就是卷積神經網絡(Convolutional neural network, CNN),因此建議你們能夠多看看這個方面的內容。正好這幾天Fei Fei Li老師的CNN課程又開課了,你們有興趣能夠去看看。這個網站會同步更新,並且有中文翻譯。【中文字幕】2017春季CS231n 斯坦福深度視覺識別課。ide
四、作深度學習避免不了的要選擇一個平臺,Tensorflow,Caffe,Torch,MxNet等等都是選擇。若是是新手,尤爲是基於Windows平臺的新手,我仍是比較建議用Tensorflow。具體的內容能夠參見這個莫煩系列教程 - Tensorflow教程。
五、最後,就是勤聯繫、勤聯繫、勤聯繫啦。
六、最後的最後,若是沒有項目參與,那麼最好的檢驗本身的學習成果的手段就是參加比賽啦。國外的Kaggle,KDD CUP,...。國內的天池大數據競賽,...。
這幾年,機器學習絕對是計算機領域最熱門的話題和方向。筆者不屬於專門研究機器學習,可是平時的工做會常常用到一些相關的算法。所以,對於機器學習也僅僅是入門的水平。可是我想也正是由於我只是一個入門漢,因此可以從咱們入門者的角度來總結如何入門,但願對還在門外的同窗有一些幫助。
數 學
不少人翻看任何一本機器學習的書,看到一推的數學公式就開始打退堂鼓了。開始搜索,提問「機器學習須要哪些數學知識?」而後獲得的結果可能會是「矩陣分析,機率論,優化設計……」並且還會有大量的人推薦一些例如「All of Statistics」,「Convex Optimation」等等外文教材。至少我當時面對的狀況就是這樣的。這種狀況極可能後面會朝如下畫風發展。
看到上述推薦的那些經典教材,你像看待聖經同樣看待他們。抱着一種學會了那些課,我再看機器學習的書簡直就會是探囊取物的想法,你下載了巨多相關材料。可是,慢慢你會發現,除了把他們下載了下來,你並無任何的進步。你並無完完整整的看完一本,你並無在機器學習方面卓越超羣。
入門階段真的須要這麼多的數學儲備嗎?未必。
入門階段我感受你只要有普通工科專業大一大二那幾門基礎數學課「線性代數」,「高數」,「機率論與數理統計」就可讓你入門了。
因此,千萬別被機器學習中的數學所嚇倒而不知道該如何下手。
只要有上述的幾門課的基礎,你徹底能夠看懂很大一部分機器學習算法。
程序語言
機器學習入門最佳的方法其實就是理論和代碼一塊兒學習。一邊看相應的理論推導,一邊看而且實踐經典代碼。因此,爲了更快入門,我推薦你最好可以懂點MATLAB或者是Python語言。
Matlab和Python說實話作高端的機器學習確定是不推薦的,可是若是你想的是機器學習快速入門,那這兩門語言絕對是絕佳選擇。
第一步
有了上述基礎後,你能夠開始看點機器學習的相關內容了。我看不少人推薦elements of machine learning。我想說,你想讓一個基礎爲零的人去看這本書,真的合適嗎???
因此,我推薦的是Machine Learning in action,(這裏面的完成語言爲Python)這是英文版本的。固然若是你以爲英文對你是一個徹底過不去的坎,(雖然我建議作技術的人都必須至少要看得懂英文)如今有中文版本,叫「機器學習實踐」。
這本書用盡可能少的公式把機器學習的基本算法都過了一遍,並且還講得很清楚,更爲重要的是他將公式和代碼結合了起來。所以,你的機器學習並無那麼的抽象了,你知道算法裏的公式如何的轉化爲代碼。
因此,第一步,你能夠耐着性子將這本書看完。反正我當時,把書中的代碼本身敲了一次,雖然代碼有的下載,你也能夠選擇只是把代碼看懂完事。但我仍是建議,本身敲一次,運行運行,這樣你會獲得不同的體會。
第二步
學習Coursera上面Andrew Ng老師的machine learning的課程。這門課造福了衆多機器學習的入門者,不只僅是由於課程全面,內容由淺入深。更加劇要的是這門課程每次課都有課堂做業,做業不須要你寫出來全部的代碼,可是關鍵代碼要你寫出來,並且還會教你如何調試代碼。
初學者學這門課的時候極可能會買有耐心,又是英文的,又有進度要求,又有做業。不要緊,你能夠把視頻下載下來(不少網盤裏都有下載好的視頻),而後慢慢的去啃。做業也是,可能你本身不能一口氣寫出來,不要緊,在本身作了大量嘗試後,去Github上面下載一些別人寫好的代碼看一看,找找本身的問題到底出在了哪裏。
總之,必定要耐着性子過一遍甚至是幾面這個課程。
第三步
這時候你已經對機器學習不少簡單的算法比較清楚了,可是可能尚未一種大的全局觀。因此,我建議你們能夠看看這兩本中文教材。周志華老師的西瓜書《機器學習》和李航老師的《統計學習方法》,這兩本書都是做者花了大量心思編寫的,也是在中國衆多科技書籍中可貴的兩本佳做。
英文書籍,能夠推薦《Patten Recognition and Machine Learning》,《Elements
of Statistical Learning》(可是這本書難度比較大,若是你有足夠的耐心,能夠慢慢啃,屢次的啃。相信每次都會有不一樣的收穫。我本身已經看了好幾回,可是確實每次都沒有徹底看完,可是目前我遇到不少問題,我去翻這本書,仍是能找到不少答案,尤爲是我作稀疏相關的工做,裏面的相關內容講解很是清楚。)
第四步
這時候,機器學習你已經能夠說大概入門了。後面的事情,就得根據你的需求來制定相關的學習路線。
好比,作大數據分析的,得去學學spark,Hadoop等計算框架;
另外,圖模型,深度學習……等等內容,都是一些方向。
天然語言處理、圖像識別、語音識別等等也是一些應用方向,更有大量的領域知識須要結合。
在前沿部分和第一到第三步的內容,若是你能按照這幾步走下來,入門是確定能夠的。至於後面的機器學習精通部分,我也只能說:Good Luck and Have Fun
廣告時間:機器學習、將來智能、機器人相關話題,可關注公衆號:
平衡小車之家