利用Python,四步掌握機器學習

TamNieves 8年前發布 | 98K 次閱讀 機器學習

來自: http://python.jobbole.com/84326/


?

為了理解和應用機器學習技術,你需要學習 Python 或者 R。這兩者都是與 C、Java、PHP 相類似的編程語言。但是,因為 Python 與 R 都比較年輕,而且更加“遠離”CPU,所以它們顯得簡單一些。相對于R 只用于處理數據,使用例如機器學習、統計算法和漂亮的繪圖分析數據, Pthon 的優勢在于它適用于許多其他的問題。因為 Python 擁有更廣闊的分布(使用 Jango 托管網站,自然語言處理 NLP,訪問 推ter、Linkedin 等網站的 API),同時類似于更多的傳統語言,比如 C python 就比較流行。

在Python中學習機器學習的四個步驟

1、首先你要使用書籍、課程、視頻來學習 Python 的基礎知識

2、然后你必需掌握不同的模塊,比如 Pandas、Numpy、Matplotlib、NLP (自然語言處理),來處理、清理、繪圖和理解數據。

3、接著你必需能夠從網頁抓取數據,無論是通過網站API,還是網頁抓取模塊Beautiful Soap。通過網頁抓取可以收集數據,應用于機器學習算法。

4、最后一步,你必需學習機器學習工具,比如 Scikit-Learn,或者在抓取的數據中執行機器學習算法(ML-algorithm)。

1.Python入門指南:

有一個簡單而快速學習Python的方法,是在 codecademy.com  注冊,然后開始編程,并學習 Python 基礎知識。另一個學習Python的經典方法是通過 learnpythonthehardway ,一個為廣大 Python 編程者所推薦的網站。然后還有一個優秀的 PDF, byte?of?python 。python社團還為初學者準備了一個Python資源列表list?of?python?resources。同時,還有來自 O’Reilley 的書籍 《Think Python》,也可以從這里免費下載 。最后一個資源是 Python 用于計量經濟學、統計學和數據分析的介紹:《Introduction?to?Python?for?Econometrics,?Statistics?and?Data?Analysis 》,其中也包含了 Python 的基礎知識。

2.機器學習的重要模塊

關于機器學習最重要的模塊是:NumPyPandasMatplotlib 和 IPython 。有一本書涵蓋了其中一些模塊:《Data?Analysis?with?Open?Source?Tools》 。然后來自于1.的免費書籍《Introduction?to?Python?for?Econometrics,?Statistics?and?Data?Analysis》,同時也包括 Numpy,Pandas,Matplotlib 和 IPython這幾個模塊。還有一個資源是 Python?for?Data?Analysis:?Data?Wrangling?with?Pandas,?NumPy,?and?IPython,也包含了一些很重要的模塊。以下是其他免費模塊的相關鏈接: Numpy (Numerical?PythonNumpy?UserguideGuide?to?NumPy),  Pandas (Pandas,?Powerful?Python?Data?Analysis?ToolkitPractical?Business?PythonIntros?to?Pandas?Data?Structure)  和  Matplotlib?books

其它資源:

3.從網站通過API挖掘和抓取數據

一旦理解了Python的基礎知識和最重要的模塊,你必需要學習如何從不同的源收集數據。這個技術也被稱作網頁抓取。傳統的源是網站文本,通過API進入推ter或linkedin一類網站得到的文本數據。網頁抓取方面的優秀書籍包括:《 Mining?the?Social?Web》 (免費書籍),《Web?Scraping?with?Python》 和《 Web?Scraping?with?Python:?Collecting?Data?from?the?Modern?Web》。

最后這個文本數據必須要轉換為數值數據,通過自然語言處理(NLP)技術完成, Natural?language?processing?with?Python 和 Natural?Language?Annotation?for?Machine?Learning 上面有相應的資料。其它的數據包括圖片和視頻,可以使用計算機圖像技術分析: Programming?Computer?Vision?with?PythonProgramming?Computer?Vision?with?Python:?Tools?and?algorithms?for?analyzing?images  和  Practical?Python?and?OpenCV ,這些是圖片分析方面的典型資源。

以下例子中包括可以用基本的Python命令行實現,有教育意義,而且有趣的例子,以及網頁抓取技術。

4. Python 中的機器學習

機器學習可以分為四組:分類,聚類,回歸和降維。

drop_shadows_background2

“分類”也可以稱作監督學習,有助于分類圖片,用來識別圖片中的特征或臉型,或者通過用戶外形來分類用戶,并給他賦不同的分數值。“聚類”發生在無監督學習的情況,允許用戶在數據中識別組/集群。“回歸”允許通過參數集估算一個值,可以應用于預測住宅、公寓或汽車的最優價格。

modules,?packages?and?techniques 羅列了 Python、C、Scala、Java、Julia、MATLAB、Go、R 和 Ruby等語言中所有學習機器學習的重要模塊、包和技巧。有關Python機器學習的書籍,我特別推薦《Machine?learning?in?action》。盡管有點短,但它很可能是機器學習中的經典,因為它提到了“集體智慧編程時代”:Programming?Collective?Intelligence。這兩本書幫助你通過抓取數據建立機器學習。最近關于機器學習的出版物大多都是基于模塊 scikit-learn 。由于所有的算法在模塊中都已實現,使得機器學習非常簡單。你唯一要做的事就是告訴 Python ,應該使用哪一個機器學習技巧 (ML-technique) 來分析數據。

免費的 scikit-learn教程 可以在 scikit-learn 官方網站上找到。其他的帖子可以通過以下鏈接獲取:

關于機器學習和 Python 中模塊 scikit-learn 的書籍:

接下來數月將要發行的書籍包括:

機器學習相關的課程和博客

你想要得到一個學位,加入在線課程,或者參加線下講習班、大本營或大學課程么?這里有一些關于邏輯分析、大數據、數據挖掘和數據科學的在線教育站點鏈接:Collection?of?links 。另外推薦一些在線課程–來自Udacity的Coursera 課程:machine?learning  和 Data?Analyst?Nanodegree。還有一些關于機器學習的博客列表:List?of?frequently?updated?blogs

最后是來自 Jake Vanderplas 和 Olivier Grisel,關于探索機器學習的優秀 油Tube 視頻課程

機器學習理論

想要學習機器學習的理論?那么,《The?Elements?of?statistical?Learning》和《 Introduction?to?Statistical?Learning》 是常常被引用的經典。然后還有另外兩本書籍:《Introduction?to?machine?learning 》和《 A?Course?in?Machine?Learning》。這些鏈接包括免費的PDF,你不需要付費!如果不想閱讀這些書籍,請觀看視頻:15?hours?theory?of?machine?learning

問啊-一鍵呼叫程序員答題神器,牛人一對一服務,開發者編程必備官方網站:www.wenaaa.com

QQ群290551701 聚集很多互聯網精英,技術總監,架構師,項目經理!開源技術研究,歡迎業內人士,大牛及新手有志于從事IT行業人員進入!

 本文由用戶 TamNieves 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!