零基礎的新手,如何入門機器學習?

機器學習和人工智能是如今的最熱門的學習方向,但是大家都不知道該怎麼入手。今天,通過這篇文章,我們來告訴大家機器學習的應該如何入門。

 

機器學習的第一課

機器學習的本質是通過數學模型的搭建框架,並依靠機器本身不斷的自行優化,最終得最優解。因此,我們的第一課最好以數學爲基礎,進行學習實踐。

 在整個學習過程中,你可以會遇到以下幾種數學知識:

1.線性代數:矩陣/張量乘法、求逆,奇異值分解/特徵值分解,行列式,範數等

2.統計與概率:概率分佈,獨立性與貝葉斯,最大似然(MLE)和最大後驗估計(MAP)等

3.優化:線性優化,非線性優化(凸優化/非凸優化)以及其衍生的求解方法如梯度下降、牛頓法、基因算法和模擬退火等

4.微積分:偏微分,鏈式法則,矩陣求導等

5.信息論、數值理論等

而這些數學理論對初學者來講,是一個巨大的門檻。因此,這裏需要注意的點是:如果數學對你基本爲勸退效果,那麼就先放下這些東西,從機器學習十大算法本身去學習,在學習的過程去,去彌補自己的不足。畢竟數學知識只是認知算法的一種工具,而不是算法本身。

機器學習十大算法

作爲最有名,且最重要的機器學習十大算法,你雖然不說完全認知,但是,你必須要對裏面的東西進行很深刻的瞭解。只有這樣,才能讓你對機器學習有一個系統的瞭解和認識。這裏推薦周志華老師的《機器學習》一書,相當經典的一本。

在這個階段學習過程中,你可以會遇到的十大算法:

(由於網上可以找到很多的數據,我這裏只列舉名稱,後續有機會,在給大家挨個分析每一個算法)

1. 線性迴歸2. Logistic 迴歸3. 線性判別分析4. 分類和迴歸樹5. 樸素貝葉斯6. K 最近鄰算法7. 學習向量量化8. 支持向量機9. 袋裝法和隨機森林10. Boosting 和 AdaBoost

從機器學習算法本身來看,算法模型主要分爲2個流派,一個是以隨機森林爲主的“vote派”,簡單來說,就是將樣本文件隨機分塊,然後分別投入算法中,以結果數量多的爲最終結果。另一種流派爲“反饋派”,得到一個結果後,不斷的反饋至模型,模型通過不斷的調整參數,最終輸出最優解。

 

當然,在這個基礎上,很多人很難去靜下心來一一學習,在這裏可以推薦一下重點關照的算法,樹結構,支持向量機,隨機森林和Boosting。

 

騙人的深度學習

 

深度學習的本質是不斷的反饋,然後深度學習模型通過反饋結果不斷的調整參數,最終得到一個最優解。因此,這裏特別強調的一個點是,深度學習本身就是一種黑盒算法,過分的學習理論其實並沒有任何作用。你唯一能做的,就是學習市面上別人已經寫好的框架,然後努力的調整自己的參數。而且由於深度學習需要很高性能的硬件設備,對於一般人來講,其實並不是特別友好。

當然,這裏並不是貶低深度學習算法,這裏僅僅強調的一點是,深度學習的算法大部分是存在於調整參數的方法上,如果快速的調整參數,達到最優的結果,纔是你最需要做的事情。

機器學習的相關硬件和語言選擇

如果要做深度學習,Linux還是首選,因爲其對很多學習模型支持比較好(主要是深度學習的Library)。但即使你使用的是Windows系統,也可以用虛擬機裝Ubuntu來進行學習。小型的深度學習模型足夠了,大型的深度學習我們很少在本地/個人計算機上運行。至於編程語言,首推Python,因爲其良好的拓展支持性,主流的工具包都有Python版本。在特定情況下,選擇R作爲編程語言也是可以的。其他可能的語言還包括C++、Java和Matlab,但我個人不大推薦。不推薦的理由,主要是因爲語言本身依賴的底層環境較多,對性能很難保證。


最後推薦點基礎導向的資料吧:

《Programming Collective Intelligence》(《集體智慧編程》)

作者Toby Segaran也是《BeautifulData : The Stories Behind Elegant Data Solutions》(《數據之美:解密優雅數據解決方案背後的故事》)的作者。這本書最大的優勢就是裏面沒有理論推導和複雜的數學公式,是很不錯的入門書。

《機器學習》

這本書非常適合作爲機器學習入門的書籍,因而周志華老師的《機器學習》也被大家親切的叫做“西瓜書”。雖然只有幾百頁,但內容涵蓋比較廣泛。

《Python機器學習》

這本書出版於2015年並多次再版,作者是Sebastian Raschka。這本書去掉了大量的數學推導的部分,僅保留了機器學習的核心應用。本書涉及的內容很廣泛,涉及了數據預處理(Data Preprocessing), 維度壓縮和核函數(Dimension Reduction & Kernel),評估方法如交叉驗證,集成學習,情感分析,聚類,甚至還包括了神經網絡和Theano。

《Introduction to Machine Learning》

一本比較精簡的機器學習數據,介紹了很多全面並且基礎的機器學習理論,很基礎。

《Machine Learning Theory: An Introductory Primer》

機器學習最基本的入門文章,適合零基礎者

 

更多消息,可以微信搜索“計算機俱樂部”!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章