【机器学习】机器学习的学习经验总结!
作者:王茂霖,華中科技大學,Datawhale成員
本文分享了機器學習概念,學習路線和知識體系,希望幫助大家更好地入門機器學習。
Part 1 機器學習相關概念
現如今,關于人工智能(AI)領域出現了很多眼花繚亂的名詞,包括機器學習,統計學習,數據科學,數據分析,數據挖掘,深度學習等。這些名詞都是什么意思?有什么作用?這里區分介紹下。
如果大家沒有接觸過人工智能的話,大家可能最熟悉的就是統計學了,在大學期間就學習的概率論就是統計學的相關知識,所以首先我們介紹一下統計學和統計學習。統計學和統計學習并非承接或者包含關系,兩者可以看作兩個不同的學科,不過統計學習中運用到了很多統計學的相關基礎數學知識。
后臺回復關鍵詞'210531'可下載完整PPT
在介紹完這兩個區別后,我們進一步來看一下機器學習,什么是機器學習,能不能用一句話來概括?
我們用一個脫離具體算法的視角來看:機器學習就是一套計算機機器利用數據來學習規則/映射關系的固定算法/方法。每一種機器用來從數據學習規則的方法,我們都可以視為一種機器學習算法,而機器學習最初的發展是由統計學習方法支撐的,所以很多時候機器學習(除開深度學習之外)和統計學習基本是等同的。
而數據科學,數據分析的概念可以大概解釋如下:
對于統計學習和機器學習,深度學習的一些區別和性質,我們可以大體介紹如下:
Part 2 機器學習的整體學習流程
在對于機器學習的名詞基本概念有了理解后,我們來介紹一下機器學習的整體學習流程,我們可以把機器學習分為三個板塊,數學基礎,機器學習算法和編程實踐。
但大家需要注意的是,三個版本并非承接關系,也就是說并非學完了數學才能學算法,學了算法才能編程實踐——這也是極其不推薦的路徑,除非本身是數學系的同學或者今后期望進行相關方面理論研究的同學,否則這條路徑是很不友好的。
舉個例子,我們其實可以先了解相關算法的概念和應用的方面然后直接學編程實踐,在實踐過程中學習理論,不清楚的理論知識再補充相應的數學基礎,或者先學習相關機器學習算法理論,然后過程中進行實踐和相關數學基礎補充。
所以,可以把三者視為相互關聯的,數學基礎有助于我們更好的理解機器學習算法,而對于機器學習算法的理解能指導我們更好第進行編程實踐。
數學基礎部分
我們首先需要的是基礎數學的相關知識,但這部分知識并非我們所有的知識點都會在機器學習中運用到,例如我們一般運用到的是微積分中的導數,線性代數中的矩陣計算,概率論中的全概率公式,條件概率等。當大家有了這些基礎知識后就可以去看機器學習的相關算法理論了。
在學習算法理論的同時再進一步補充相關知識,例如決策樹,優化方法等就涉及到的信息論中的信息熵,最優化中的梯度下降法,SVM涉及到對偶問題,KKT條件等。
一般機器學習算法理論的數學基礎學習到基礎數學衍生這一層就可以了,而如果大家有興趣涉獵機器學習理論的研究,例如可學性,復雜度,泛化性,穩定性等的研究或者變分方法,隨機分析方法等相關研究,那大家就需要學習進階的相關知識了。
機器學習算法部分
對于機器學習算法部分,我們可以把整體的機器學習算法分為傳統機器學習部分和深度學習部分,兩個部分可以獨立的學習,而傳統機器學習部分,我們又可以分為多個模型,每個部分也可以單獨學習,例如可以學習完最小二乘方法后學習邏輯回歸。每個部分都是相對較為獨立的。
對于深度學習領域,一般是先學習機器學習的基礎網絡ANN, CNN, RNN,然后結合一個具體的領域深入研究的。
編程實踐部分
對于編程實踐部分,對于機器學習的實踐來說,個人認為現在Python是最容易上手和對于機器學習的相關學習支持最好的編程語言,大家可以先從python的基礎語法入門,了解一些Numpy,Pandas的常規函數,然后學習scikit-learn機器學習算法框架,而對于深度學習部分可以從keras入門,然后在后續的學習中轉移到另外的框架。
在學習過程中也建議大家邊學習邊實踐,然后專心學1-2個系統的資料和書籍就好,一點一點學習,不斷補充自己的知識體系。
Part 3 機器學習的知識體系
大家對于機器學習有一定的學習后就要形成自己的相關學習體系,同之前的我也把整體的學習體系分為了三部分,機器學習理論,機器學習算法和機器學習實踐,對于各個部分,我也列出了推薦和Datawhale團隊在相應部分做的項目實踐(文字版課程鏈接見下方),希望能有助于大家的學習。
學習資料鏈接:
鑰匙書(機器學習理論導引補充):https://github.com/datawhalechina/key-book
南瓜書(周志華西瓜書詳細解讀補充):https://github.com/datawhalechina/pumpkin-book
Easy-RL(深度強化學習教程):https://github.com/datawhalechina/easy-rl
LeeML-Notes(李宏毅老師-機器學習課程筆記):https://github.com/datawhalechina/leeml-notes
總結
以上是生活随笔為你收集整理的【机器学习】机器学习的学习经验总结!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 积米浏览器如何清除浏览数据
- 下一篇: 【论文解读】通过知识蒸馏促进轻量级深度估