要理解和掌握絕大部分機(jī)器學(xué)習(xí)算法和理論,尤其是對(duì)做工程應(yīng)用的人而言,所需要的數(shù)學(xué)知識(shí)大學(xué)數(shù)學(xué)老師已經(jīng)給你了:
先說(shuō)微積分/高等數(shù)學(xué)。在機(jī)器學(xué)習(xí)中,微積分主要用到了微分部分,作用是求函數(shù)的極值,就是很多機(jī)器學(xué)習(xí)庫(kù)中的求解器(solver)所實(shí)現(xiàn)的功能。在機(jī)器學(xué)習(xí)里會(huì)用到微積分中的以下知識(shí)點(diǎn):
其中最核心的是記住多元函數(shù)的泰勒展開(kāi)公式,根據(jù)它我們可以推導(dǎo)出機(jī)器學(xué)習(xí)中常用的梯度下降法,牛頓法,擬牛頓法等一系列最優(yōu)化方法:
相比之下,線性代數(shù)用的更多。在機(jī)器學(xué)習(xí)的幾乎所有地方都有使用,具體用到的知識(shí)點(diǎn)有:
機(jī)器學(xué)習(xí)算法處理的數(shù)據(jù)一般都是向量、矩陣或者張量。經(jīng)典的機(jī)器學(xué)習(xí)算法輸入的數(shù)據(jù)都是特征向量,深度學(xué)習(xí)算法在處理圖像時(shí)輸入的2維的矩陣或者3維的張量。掌握這些知識(shí)會(huì)使你游刃有余。
如果把機(jī)器學(xué)習(xí)所處理的樣本數(shù)據(jù)看作隨機(jī)變量/向量,我們就可以用概率論的觀點(diǎn)對(duì)問(wèn)題進(jìn)行建模,這代表了機(jī)器學(xué)習(xí)中很大一類(lèi)方法。在機(jī)器學(xué)習(xí)里用到的概率論知識(shí)點(diǎn)有:
這些知識(shí)不超出普通理工科概率論教材的范圍。
最后要說(shuō)的是最優(yōu)化,因?yàn)閹缀跛袡C(jī)器學(xué)習(xí)算法歸根到底都是在求解最優(yōu)化問(wèn)題。求解最優(yōu)化問(wèn)題的指導(dǎo)思想是在極值點(diǎn)出函數(shù)的導(dǎo)數(shù)/梯度必須為0。因此你必須理解梯度下降法,牛頓法這兩種常用的算法,它們的迭代公式都可以從泰勒展開(kāi)公式中得到。如果能知道坐標(biāo)下降法、擬牛頓法就更好了。
凸優(yōu)化是機(jī)器學(xué)習(xí)中經(jīng)常會(huì)提及的一個(gè)概念,這是一類(lèi)特殊的優(yōu)化問(wèn)題,它的優(yōu)化變量的可行域是凸集,目標(biāo)函數(shù)是凸函數(shù)。凸優(yōu)化最好的性質(zhì)是它的所有局部最優(yōu)解就是全局最優(yōu)解,因此求解時(shí)不會(huì)陷入局部最優(yōu)解。如果一個(gè)問(wèn)題被證明為是凸優(yōu)化問(wèn)題,基本上已經(jīng)宣告此問(wèn)題得到了解決。在機(jī)器學(xué)習(xí)中,線性回歸、嶺回歸、支持向量機(jī)、logistic回歸等很多算法求解的都是凸優(yōu)化問(wèn)題。
拉格朗日對(duì)偶為帶等式和不等式約束條件的優(yōu)化問(wèn)題構(gòu)造拉格朗日函數(shù),將其變?yōu)樵瓎?wèn)題,這兩個(gè)問(wèn)題是等價(jià)的。通過(guò)這一步變換,將帶約束條件的問(wèn)題轉(zhuǎn)換成不帶約束條件的問(wèn)題。通過(guò)變換原始優(yōu)化變量和拉格朗日乘子的優(yōu)化次序,進(jìn)一步將原問(wèn)題轉(zhuǎn)換為對(duì)偶問(wèn)題,如果滿(mǎn)足某種條件,原問(wèn)題和對(duì)偶問(wèn)題是等價(jià)的。這種方法的意義在于可以將一個(gè)不易于求解的問(wèn)題轉(zhuǎn)換成更容易求解的問(wèn)題。在支持向量機(jī)中有拉格朗日對(duì)偶的應(yīng)用。
KKT條件是拉格朗日乘數(shù)法對(duì)帶不等式約束問(wèn)題的推廣,它給出了帶等式和不等式約束的優(yōu)化問(wèn)題在極值點(diǎn)處所必須滿(mǎn)足的條件。在支持向量機(jī)中也有它的應(yīng)用。
如果你沒(méi)有學(xué)過(guò)最優(yōu)化方法這門(mén)課也不用擔(dān)心,這些方法根據(jù)微積分和線性代數(shù)的基礎(chǔ)知識(shí)可以很容易推導(dǎo)出來(lái)。如果需要系統(tǒng)的學(xué)習(xí)這方面的知識(shí),可以閱讀《凸優(yōu)化》,《非線性規(guī)劃》兩本經(jīng)典教材。
下面我們來(lái)看典型算法和理論結(jié)論所用到的數(shù)學(xué)知識(shí):
除流形學(xué)習(xí)需要簡(jiǎn)單的微分幾何概念之外,深層次的數(shù)學(xué)知識(shí)如實(shí)變函數(shù),泛函分析等主要用在一些基礎(chǔ)理論結(jié)果的證明上,即使不能看懂證明過(guò)程,也不影響我們使用具體的機(jī)器學(xué)習(xí)算法。概率圖模型、流形學(xué)習(xí)中基于圖的模型會(huì)用到圖論的一些基本知識(shí),如果學(xué)習(xí)過(guò)離散數(shù)學(xué)或者數(shù)據(jù)結(jié)構(gòu),這些概念很容易理解。
聯(lián)系客服