有許多python機器學習資源在線免費提供,從哪開始?如何進行?從零到python機器學習大神只要7個步驟。
入門,在英語中最打擊人的兩個單詞,第一部往往是最難的,當在這方面有太多選擇,通常讓人崩。
從哪開始?
這篇文章旨在用7個不走帶領python機器學習知識最少的新人成為知識淵博從業者,使用免費材料和資源.這個綱要主要目標是幫你選擇可用的眾多選項.可以確定有很多,但是哪個是最好的?它們之間是相輔相成?使用選擇資源的最好順序是什么?
進一步,我做出假設你不是下列的專家:
機器學習
Python
任何Python的機器學習,科學計算,或者數據分析庫
他有可能幫助你對第一或第二或二者有一個基本的認識,但不是必需的.在前面的步驟花費一些額外的時間有可能彌補。
第一步 基本Python技能
如果我們打算利用Python進行機器學習,對Python有一些基本認識是至關重要的.幸運的是,由于其作為一種廣泛普及的通用編程語言,并應用于科學計算和機器學習,發現初學者的教程并不困難.Python經驗和編程水平一般是選擇出發點的重點。
首先,你需要安裝Python.因為在有些時候我們需要使用科學計算和機器學習庫,我建議你安裝Anaconda.這是一個具有工業強度用于Linux,OSX和Windows的Python實現,為機器學習安裝需要的包,包括Numpy,scikit-learn和Matplotlib(這是作者的觀點,我認為pandas,scipy這種包也是必不可少的).它同樣包含Ipython notebook,一個交互式環境.我建議使用Python2.7(譯者言:當全世界都是3.X的時候再說改Python3吧),它仍是占主導地位的安裝版本沒有其他原因。
如果你沒有編程知識,我的建議是用下面免費的在線書開始,然后學習隨后的材料。
Python The Hard Way?by Zed A. Shaw
如果你有變成經驗,但是不是Python,或者你剛學Python,我建議學習下面其中一個或全部:
Google Developers Python Course?(視覺學習者強烈推薦,五星好評)
An Introduction to Python for Scientific Computing (from UCSB Engineering)?by M. Scott Shell (神奇的Python科學介紹,60頁)
對于那些尋求Python30分鐘速成班的可以去(某寶):
Learn X in Y Minutes (X = Python)
當然,如果你有Python編程經驗,你可以跳過這步.即使這樣,我建議你繼續閱讀Python文檔.
第二步 基礎機器學習技能
KDnuggets’的創始人 Zachary Lipton指出人們對數據科學家的認識非常不同.實際上是機器學習領域的反映,因為數據科學家的工作包含使用機器學習算法多樣化程度.是否有必要深刻了解算法,從而更有效的創建SVM機器模型并從中獲取信息?當然不是,就像生活中幾乎所有東西,理論理解的深度的要求相對與實際應用(這是作者的一家之言哈~,譯者是不支持的,不了解你怎么調參,優化模型呢?哈~).獲得機器學習算法的深刻理解已經超出了本書范圍,一般需要大量的時間投資在學術中,或者通過高強度的自學。
好消息是你不需要擁有PhD水平的機器學習理論方面的理解,才能用于實踐.并不是所有碼農都為了有效的編碼需要理論的計算機科學教育.這兩點是相同的(所以我翻譯的是碼農.對,我就是在吐槽~自己. :( )。
Andrew Ng的Course課程經常獲得五星好評.但是我的建議是,瀏覽在線課程以前學生編制的課程筆記.跳過關于Octave的筆記(類似Matlab語言,和我們追求的Python無關.譯者注,從用詞上我就能感到作者對Matlab弄弄的厭惡).但是要注意這些不是官方的筆記,但是似乎能捕獲Andrew Ng課程材料的相關內容.當然,如果你有時間和興趣,可以參加Andrew Ng Coursera的機器學習課程。
Unofficial Andrew Ng course notes
如果你喜歡各種視頻講座,可以看Tom Mitchell的演講視頻.下面是是他最近的演講視頻,我(不是我)感覺他非常平易近人,我是他的腦殘粉(沒搞錯的話,網上流行的***國立大學的機器學習視頻是模仿Tom Mitchell的,Logo都差不多就左下角右上角加了個東西.是的,我又在吐槽了)。
Tom Mitchell Machine Learning Lectures
在這里,你不需要所有筆記和視頻.一個有效的策略包含實戰演練,適當時候參考上面筆記和視頻.例如,當你遇到回歸模型是現實,閱讀Ng筆記的回歸部分或看Mtichell的回歸視頻.
第三步 科學Python庫概率
好吧.有了一點Python編程經驗和機器學習理解后.除了Python還有很多開源的庫用于處理機器學習實踐.通常,這些是執行基本機器學習任務主要使用的Python庫。
numpy?- N維數組是非常有用的
pandas?- Python數據分析庫,包括結構例如dataframes
matplotlib?- 2D 繪圖庫生成出版質量圖片
scikit-learn?- 用于數據分析和數據挖掘任務的機器學習算法.
學習這些的優秀資料如下:
Scipy Lecture Notes?by Ga?l Varoquaux, Emmanuelle Gouillart, and Olav Vahtras
這個pandas的教程非常棒:
10 Minutes to Pandas
評論
查看更多