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