機器學習的最佳入門學習資源
這是一篇很難寫的文章,因為我希望這篇文章能對學習者有所啟發。我在空白頁前坐下,並且問自己了一個很難的問題:什麼樣的庫、課程、論文和書籍對於機器學習的初學者來說是最好的。
文章裡到底寫什麼、不寫什麼,這個問題真的讓我很煩惱。我必須把自己當做一個程式設計師和一個機器學習的初學者,站在這個角度去考慮最合適的資源。
我找出了每個型別中最適合的資源。如果你是一個真正的初學者,並且樂意於開始瞭解機器學習領域的相關知識,我希望,你可以在我的文章中找到有用的資料。我的建議是,從中挑出一件來,一本書或者是一個庫,反覆閱讀或者認真學習所有的相關教程。挑出一個並且堅持學習,直到你完全掌握,再重新選擇一個,重複這個學習過程。現在就讓我們開始吧!
Programming Libraries 程式設計庫資源
我是一個“學習要敢於冒險和嘗試”觀念的倡導者。這是我學習程式設計的方式,我相信很多人也是這樣學習程式設計的。先了解你的能力極限,然後去拓展你的能力。如果你瞭解如何程式設計,可以將程式設計經驗很快借鑑到深入學習機器學習上。在你實現一個實際的產品系統之前,你必須遵循一些規則、學習相關數學知識。
找到一個庫並且仔細閱讀相關文件,根據教程,開始嘗試實現一些東西。下面列出的是開源的機器學習庫中最好的幾種。我認為,並不是他們中的每一種都適合用在你的系統中,但是他們是你學習、探索和實驗的好材料。
你可以從一個由你熟悉的語言編寫的庫開始學習,然後再去學習其他功能強大的庫。如果你是一個優秀的程式設計師,你會知道怎樣從一種語言,簡單合理地遷移到另一種語言。語言的邏輯都是相同的,只是語法和API稍有不同。
- R Project for Statistical Computing:這是一個開發環境,採用一種近似於Lisp的指令碼語言。在這個庫中,所有你想要的與統計相關的功能都通過R語言提供,包括一些複雜的圖示。CRAN(你可以認為是機器學弟的第三方包)中的機器學習目錄下的程式碼,是由統計技術方法和其他相關領域中的領軍人物編寫的。如果你想做實驗,或是快速拓展知識,R語言都是必須學習的。但它可能不是你學習的第一站。
- WEKA:這是一個數據挖掘工作平臺,為使用者提供數一系列據挖掘全過程的API、命令列和圖形化使用者介面。你可以準備資料、視覺化、建立分類、進行迴歸分析、建立聚類模型,同時可以通過第三方外掛執行其他演算法。除了WEKA之外,
- Scikit Learn:這是用Python編寫的,基於NumPy和SciPy的機器學習庫。如果你是一個Python或者Ruby語言程式設計師,這是適合你用的。這個庫很使用者介面友好,功能強大,並且配有詳細的文件說明。如果你想試試別的庫,你可以選擇Orange。
- Octave:如果你很熟悉MatLab,或者你是尋求改變的NumPy程式設計師,你可以考慮 Octave。這是一個數值計算環境,與MatLab像是,藉助Octave你可以很方便地解決線性和非線性問題,比如機器學習演算法底層涉及的問題。如果你有工程背景,那麼你可以由此入手。
- BigML:可能你並不想進行程式設計工作。你完全可以不通過程式碼,來使用 WEKA那樣的工具。你通過使用BigMLS的服務來進行更加深入的工作。BigML通過Web頁面,提供了機器學習的介面,因此你可以通過瀏覽器來建立模型。
挑選出一個平臺,並且在你實際學習機器學習的時候使用它。不要紙上談兵,要去實踐!
Video Courses視訊課程
很多人都是通過視訊資源開始接觸機器學習的。我在YouTube和VideoLectures上看了很多於機器學習相關的視訊資源。這樣做的問題是,你可能只是觀看視訊而並不實際去做。我的建議是,你在觀看視訊的時候,應該多記筆記,及時後來你會拋棄你的筆記。同時,我建議你將學到的東西付諸實踐。
坦白講,我沒有看見特別合適初學者的視訊資源。視訊資源都需要你掌握一定的線性代數、概率論等知識。Andrew Ng在斯坦福的講解可能是最適合初學者的,下面是我推薦的一些視訊資源。
- Stanford Machine Learning斯坦福的機器學習課程:可以在Coursera上觀看,這門課是由 Andrew Ng講解的。只要註冊,你可以隨時觀看所有的課程視訊,從Stanford CS229 course下載講義和筆記。這門課包括了家庭作業和小測試,課程主要講解了線性代數的知識,使用Octave庫。
- Caltech Learning from Data加利福尼亞理工學院的資料分析課程:你可以在edX上學習這門課程,課程是由Yaser Abu-Mostafa講解的。所有的課程視訊和資料都在加利福尼亞理工學院的網站上。與斯坦福的課程類似,你可以根據自己的情況安排學習進度,完成家庭作業和小論文。它與斯坦福的課程主題相似,關注更多的細節和數學知識。對於初學者來說,家庭作業可能稍有難度。
- Machine Learning Category on VideoLectures.Net網站中的機器學習目錄:這是個很容易令人眼花繚亂的資源庫。你可以找出比較感興趣的資源,並且深入學習。不要糾結於不適合你的視訊,或者對於感興趣的內容你可以做筆記。我自己會一直重複深入學習一些問題,同時發現新的話題進行學習。此外,在這個網站上你可以發現是這個領域的大師是什麼樣的。
- “Getting In Shape For The Sport Of Data Science” – 由Jeremy Howard講授:這是與機器學習競賽者的對話,他們是一些實踐中的R語言使用者。這是非常珍貴的資源,因為很少有人會討論研究一個問題的完整過程和究竟怎樣做。我曾經幻想過在網上找到一個TV秀,記錄機器學習競賽的全過程。這就是我開始學習機器學習的經歷!
Overview Papers綜述論文
如果你並不習慣閱讀科研論文,你會發現論文的語言非常晦澀難懂。一篇論文就像是一本教科書的片段,但是論文會介紹一個實驗或者是領域中其他的前沿知識。然而,如果你準備從閱讀論文開始學習機器學習的話,你還是可以找到一些很有意思的文章的。
- The Discipline of Machine Learning機器學習中的規則:這是由Tom Mitchell編著的白皮書,其中定義了機器學習的規則。Mitchell在說服CMU總裁為一個百年內都存在的問題建立一個獨立的機器學習部門時,也用到了這本書中的觀點。
我只是列出了兩篇重要的論文,因為閱讀論文會讓你陷入困境。
Beginner Machine Learning Books給機器學習初學者的書
關於機器學習的書有很多,但是幾乎沒有為初學者量身定做的。什麼樣的人才是初學者呢?最有可能的情況是,你從另外一個完全不同的領域比如:電腦科學、程式設計或者是統計學,來到機器學習領域。那麼,大部分的書籍要求你有一定的線性代數和概率論的基礎。
但是,還有一些書通過講解最少的演算法來鼓勵程式設計師學習機器學習,書中會介紹一些可以使用工具、程式設計函式庫來讓程式設計師嘗試。其中最有代表性的書是:《Programming Collective Intelligence》,《Machine Learning for Hackers》,《Hackersand Data Mining: Practical Machine Learning Tools and Techniques》(Python版, R版, 以及Java版)。如果感到迷惑的話,你可以選擇其中一本開始學習。
- Machine Learning for Hackers (中文版:機器學習:實用案例解析 ):我建議你在閱讀了《Programming Collective Intelligence》一書之後,再閱讀這本書。這本書中也提供了很多實踐練習,但是涉及更多的資料分析,並且使用R語言。我個人很喜歡這本書!
- Machine Learning: An Algorithmic Perspective:這本書是《Programming Collective Intelligence》的高階版本。它們目的相同(讓程式設計師開始瞭解機器學習),但是這本書包括一些數學知識,參考樣例和phython程式片段。如果你有興趣的話,我建議你在看完《Programming Collective Intelligence》之後來閱讀這本書。
- 資料探勘:實用機器學習工具與技術(英文版·第3版) :我自己是從這本書開始瞭解機器學習的,那時是2000年這本書還是第一版。我那時是Java程式設計師,這本書和WEKA庫為我的學習和實踐提供了一個很好的環境。我通過這樣的平臺和一些外掛,實現我的演算法,並且真正開始實踐機器學習和資料探勘的過程。我強烈推薦這本書,和這樣的學習過程。
- Machine Learning(中文版:電腦科學叢書:機器學習 ):這是一本很老的書,包括了一些規則和很多參考資料。這是一本教科書,為每個演算法提供了相關講解。
有一些人認為那些經典的機器學習教科書很了不起。 我也贊同,那些書的確非常好。但是,我認為,對於初學者來說,這些書可能並不合適。
Further Reading 繼續閱讀
在寫這篇文章時,我認真思考了相關問題,同時也參考了其他人推薦的資料,以確保我沒有遺漏任何重要參考資料。為了確保文章的完整性,下面也列出了一些網上流行的,可以供初學者使用的材料。.
- Overwhelmed by Machine Learning: is there an ML101 book:這是StackOverflow上的問題。並且提供了一系列機器學習推薦書籍。Jeff Moser提供的第一個答案是很有用的,其中有課程視訊和講座的連結。
你是不是以及讀過或者用過上面的一些資源了呢?你怎麼看這個問題?
我是不是如願為那些對機器學習有興趣的初學者提供了重要、有用的資源呢?請留下你的建議,讓我們分享!
相關推薦
機器學習最佳入門學習資源
原文連結: Jason Brownlee 翻譯: 伯樂線上 - programmer_lin %-------------------------------------------------------------------% 這是一篇很難寫的文章,因為我希
機器學習最佳入門學習資料匯總
行程 view 概率 應該 mic 時有 挖掘 書包 發現 譯者:teyla 原文作者:Jasonb 發布:2014-06-05 13:54:15 挑錯 這篇文章的確很難寫,因為我希望它真正地對初學者有幫助。面前放著一張空白的紙,我坐下來問自己一個難題:面對一個對機器學習
機器學習的最佳入門學習資源
這是一篇很難寫的文章,因為我希望這篇文章能對學習者有所啟發。我在空白頁前坐下,並且問自己了一個很難的問題:什麼樣的庫、課程、論文和書籍對於機器學習的初學者來說是最好的。 文章裡到底寫什麼、不寫什麼,這個問題真的讓我很煩惱。我必須把自己當做一個程式設計師和一個機器學習
Andrew Ng機器學習(ML)入門學習筆記(三)
一.分類問題和邏輯迴歸 1.邏輯迴歸的提出 前面舉例較多的房價問題屬於監督學習中的線性迴歸問題,因為需要預測的變數是連續的。對於另一類問題,需要預測的變數是離散的,稱為分類問題。 根據分類種類的多少,又有兩類分類問題和多類分類問題之分。 例如現在有一些腫
機器學習入門學習資源
這是一篇很難寫的文章,因為我希望這篇文章能對學習者有所啟發。我在空白頁前坐下,並且問自己了一個很難的問題:什麼樣的庫、課程、論文和書籍對於機器學習的初學者來說是最好的。 文章裡到底寫什麼、不寫什麼,這個問題真的讓我很煩惱。我必須把自己當做一個程式設計師和一個機器學習的初學者,站在這個角度去考慮最合適的資
機器學習如何入門
應用 內容 png 相關 作業 公式 hadoop log src 作者:Leon鏈接:https://www.zhihu.com/question/20691338/answer/102249162來源:知乎著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請
Python數據挖掘與機器學習技術入門實戰
機器學習摘要: 什麽是數據挖掘?什麽是機器學習?又如何進行Python數據預處理?本文將帶領大家一同了解數據挖掘和機器學習技術,通過淘寶商品案例進行數據預處理實戰,通過鳶尾花案例介紹各種分類算法。 課程主講簡介:韋瑋,企業家,資深IT領域專家/講師/作家,暢銷書《精通Python網絡爬蟲》作者,阿裏雲社區技術
入門機器(深度)學習的書籍及學習資料推薦
原理 .com 部分 nump 個人學習 概率論 並且 實驗 matplot (第一次寫博客,如有什麽地方寫得不對的,或者意見相左的,還請見諒!) 工作了一段時間,又重新回來讀書(本科計算機專業,第一個研究生是商科,現讀回了計算機專業)了,最開始想著走APP研發路線的,但是
機器學習和python學習之路吐血整理技術書從入門到進階(珍藏版)
轉載自某大佬部落格:https://pymlovelyq.github.io/2018/10/15/machineLearning/ “機器學習/深度學習並不需要很多數學基礎!”也許你在不同的地方聽過不少類似這樣的說法。對於鼓勵數學基礎不好的同學入坑機器學習來說,這句話是挺不錯的
python、機器學習、深度學習資源推薦
一、公眾號資源推薦——公眾號“勇敢AI” “勇敢AI”——一個專注於人工智慧的微信公眾平臺。 本人新開創了一個公眾號,經過長時間的積累,也積累了大量的資源,有眾多的福利與大家分享,希望有興趣的關注一下 福利如下: 1、海量電子書資源 &nbs
機器學習怎麼入門——自學篇
轉自:https://blog.csdn.net/lsc989818/article/details/78817348 時也勢也,最近因為機緣巧合,下定主意要從專案管理領域跳轉到機器學習領域(人工智慧/深度學習),為了更快更高效的進入學習狀態,我對這一塊的培訓市場和自學方法也做了一些調研。上一篇
Java,大資料,機器學習,深度學習,學習資源
Java,大資料,機器學習,深度學習,學習資源 Java 基礎 Java 程式設計思想 Java Web 和大資料 Spark 中文文件 Storm 中文文件 Kafka 中文文件 Flink 中文文件 Beam 中
機器學習和python學習之路精心整理技術書從入門到進階
“機器學習/深度學習並不需要很多數學基礎!”也許你在不同的地方聽過不少類似這樣的說法。對於鼓勵數學基礎不好的同學入坑機器學習來說,這句話是挺不錯的。不過,機器學習理論是與統計學、概率論、電腦科學、演算法等方面交叉的領域,對這些技術有一個全面的數學理解對理解演算法的內部工作機制、獲取好的結果是有必要的
轉:圖解十大經典機器學習演算法入門
原文:https://blog.csdn.net/jrunw/article/details/79205322 弱人工智慧近幾年取得了重大突破,悄然間,已經成為每個人生活中必不可少的一部分。以我們的智慧手機為例,看看到底溫藏著多少人工智慧的神奇魔術。 下圖是一部典型的智慧手機上安裝的一些常
機器學習---基礎----圖解十大經典機器學習演算法入門
轉自:https://blog.csdn.net/jrunw/article/details/79205322 弱人工智慧近幾年取得了重大突破,悄然間,已經成為每個人生活中必不可少的一部分。以我們的智慧手機為例,看看到底溫藏著多少人工智慧的神奇魔術。 下圖是一部典型的智慧手機上安裝的一些常見應用程式,可能
SLS機器學習最佳實戰:時序預測
為何需要預測? 通過分析序列進行合理預測,做到提前掌握未來的發展趨勢,為業務決策提供依據,這也是決策科學化的前提。時間序列就是按時間順序排列的一組資料序列。時間序列分析就是發現這組資料的變動規律並用於預測的統計技術。 明天的賬單大約多少??(根據在各個雲產品中資源消耗量進行預測 ---> 業務
林軒田機器學習基石入門(二)
上一節中我們主要講到機器學習的應用場景,而這一節主要向大家介紹我們身邊機器學習的例子,讓大家對機器學習有更多的直觀瞭解。 機器學習如今已滲透在我們的日行中,這很讓人驚訝,你每天都能夠接觸到它。 對於人們來說“衣食住行”是每天的基礎要求。 當你肚子餓想
林軒田機器學習基石入門(三)
上一節我們主要向大家介紹我們身邊機器學習的例子,這一節我們將探討機器學習由什麼元素組成(機器學習的模型結構)。 首先我們先看個信用卡的例子。 假設我們想用機器學習來判斷“是否同意貸款給這個客戶?”,我們會將使用者的資訊資料輸給模型(比如年齡,性別,職業,工
機器學習、深度學習資源分享
https://a.eqxiu.com/s/fAx28a7m?eqrcode=1&share_level=2&from_user=cc272326-7e97-4826-b47d-6e4f42862bc6&from_id=706a4124-49f8-4da2-b800-
halcon如何學習?怎麼學習halcon快速入門?什麼是機器視覺?可以用來做什麼?
什麼是機器視覺?可以用來做什麼? 我導師的研究方向是機器視覺及其應用。但機器視覺到底是什麼呢?具體學習或研究什麼呢?完全不懂,我感覺機器視覺是一個大的方向,具體點是什麼呢?畢業出來能做什麼呢? (這是一個在讀碩士諮詢我的問題,現在有很多本科生或者碩士生在學習