微積分、概率和線性代數,分別在機器學習中扮演了什麼角色?

  • 2020 年 2 月 26 日
  • 筆記

張雨萌

清華大學碩士畢業

機器學習書籍作者

人工智能領域吸引了許多有志者投身其中,也有許多非科班出身或從其他行業切換賽道轉行而來的朋友。大家在學習的過程中經常會感覺學習曲線陡峭、難度較大,而機器學習之所以這麼難,首要原因就是覺得數學知識需要得太多了!

數學體系非常龐大,但實際上,機器學習真正用得到的只佔據了其中「很小的一部分」。學機器學習的數學,只要你具備高等數學的初級能力就可以。

一位外國網友在自學人工智能的100天期間,記錄了自己的學習感受:

「人工智能沒有魔法,一切只有數學。」 「在開始100天的學習之前,我就知道機器學習與數學有關,只是不知道關係有多大。對任何一個個入門者來說,學習微積分和線性代數都是非常有幫助的。而且幸運的是,不是數學專業的人也能夠掌握的了這些知識,而且隨着各種框架的進程和發展,機器學習全民化進程正在不斷推進中。」

來源:https://medium.com/swlh/

機器學習是一個綜合性強、知識棧長的學科,當然也需要大量的前序知識作為鋪墊。其中最核心的就是:絕大多數算法模型和實際應用都依賴於以概率統計、線性代數和微積分為代表的數學理論和思想方法

比方說吧:

  • 想理解神經網絡的訓練過程,離不開多元微分和優化方法;
  • 想過濾垃圾郵件,不具備概率論中的貝葉斯思維恐怕不行;
  • 想試着進行一段語音識別,則必須要理解隨機過程中的隱馬爾科夫模型;
  • 想通過一個數據樣本集推測出這類對象的總體特徵,統計學中的估計理論和大數定理的思想必須得建立。

所以說,數學基礎是機器學習繞不開的重要陣地。

01

機器學習中,三部分數學知識各自扮演什麼角色?

1. 概率統計是利用數據發現規律、推測未知的思想方法

「發現規律、推測未知」也正是機器學習的目標,所以兩者的目標高度一致。機器學習中的思想方法和核心算法大多構築在統計思維方法之上。

2. 線性代數是利用空間投射和表徵數據的基本工具

通過線性代數,我們可以靈活地對數據進行各種變換,從而直觀清晰地挖掘出數據的主要特徵和不同維度的信息。整個線性代數的主幹就是空間變換,從構築空間、近似擬合、相似矩陣、數據降維這四大板塊,環環相扣地呈現出與機器學習算法緊密相關的最核心內容。

3. 微積分與最優化是機器學習模型中最終解決方案的落地手段

當我們建立好算法模型之後,問題的最終求解往往都會涉及到優化問題。在探尋數據空間極值的過程中,如果沒有微分理論和計算方法作為支撐,任何漂亮的模型都無法落地。

因此,夯實多元微分的基本概念,掌握最優化的實現方法,是通向最終解決方案的必經之路。

02

機器學習中使用最多的線性代數有什麼用?

作為利用空間來投射和表徵數據的基本工具,線性代數可以靈活地對數據進行各種變換,從而讓研究人員更為直觀、清晰地探查到數據的主要特徵和不同維度所需的信息。因此,線性代數的核心地位不言而喻,只有熟練運用好這個工具,才能搭建起攀登機器學習的牢固階梯。

機器學習和數據分析中究竟會有哪些地方需要用到線性代數?

舉例來說:

  • 量化描述日常生活中的事物,比如個體的不同屬性、自然語言中的詞語、句子等等,用於支撐我們所要進行的算法分析;
  • 將待處理的數據在不同維度的空間中進行變換處理,以找到最佳的觀測角度,使得數據處理達到最好效果;
  • 從採樣的海量數據中提取出主要特徵成分,梳理出數據的主要脈絡,從而指導你對一個文本進行主題建模,幫助你利用協同過濾技術成功給用戶推薦最喜愛的菜肴;
  • 用數字表示圖像,並且在不太影響觀察效果的前提下,利用很小的存儲空間近似達到原有圖像的視覺效果;
  • 對採集到的觀測數據進行擬合,幫助我們找到其中暗含的規律,指導對未知數據的預測;
  • 在實際的數據採樣分析過程中,在無法找到精確解的情況下,探索到最接近真相的近似解;

這些實用而有趣的問題,我們在數據分析和機器學習中幾乎時時都會遇到。