從大學到現在,課堂上學的和自學的數學其實不算少了,可是在研究的過程中總是發現需要補充新的數學知識。learning和vision都是很多種數學的交匯場。看著不同的理論體系的交匯,對於乙個researcher來說,往往是非常exciting的enjoyable的事情。不過,這也代表著要充分了解這個領域並且取得有意義的進展是很艱苦的。記得在兩年前的一次blog裡面,提到過和learning有關的數學。今天看來,我對於數學在這個領域的作用有了新的思考。對於learning的研究,
1、linear algebra (線性代數) 和 statistics (統計學) 是最重要和不可缺少的。這代表了machine learning中最主流的兩大類方法的基礎。一種是以研究函式和變換為重點的代數方法,比如dimension reduction,feature extraction,kernel等,一種是以研究統計模型和樣本分佈為重點的統計方法,比如graphical model, information theoretical models等。它們側重雖有不同,但是常常是共同使用的,對於代數方法,往往需要統計上的解釋,對於統計模型,其具體計算則需要代數的幫助。以代數和統計為出發點,繼續往深處走,我們會發現需要更多的數學。
2、calculus (微積分),只是數學分析體系的基礎。其基礎性作用不言而喻。learning研究的大部分問題是在連續的度量空間進行的,無論代數還是統計,在研究優化問題的時候,對乙個對映的微分或者梯度的分析總是不可避免。而在統計學中,marginalization和積分更是密不可分——不過,以解析形式把積分匯出來的情況則不多見。
3、partial differential equation (偏微分方程),這主要用於描述動態過程,或者仿動態過程。這個學科在vision中用得比learning多,主要用於描述連續場的運動或者擴散過程。比如level set, optical flow都是這方面的典型例子。
4、functional analysis (泛函分析),通俗地,可以理解為微積分從有限維空間到無限維空間的拓展——當然了,它實際上遠不止於此。在這個地方,函式以及其所作用的物件之間存在的對偶關係扮演了非常重要的角色。learning發展至今,也在向無限維延伸——從研究有限維向量的問題到以無限維的函式為研究物件。kernel learning 和 gaussian process 是其中典型的例子——其中的核心概念都是kernel。很多做learning的人把kernel簡單理解為kernel trick的運用,這就把kernel的意義嚴重弱化了。在泛函裡面,kernel (inner product)是建立整個博大的代數體系的根本,從metric, transform到spectrum都根源於此。
5、measure theory (測度理論),這是和實分析關係非常密切的學科。但是測度理論並不限於此。從某種意義上說,real analysis可以從lebesgue measure(勒貝格測度)推演,不過其實還有很多別的測度體系——概率本身就是一種測度。測度理論對於learning的意義是根本的,現代統計學整個就是建立在測度理論的基礎之上——雖然初級的概率論教科書一般不這樣引入。在看一些統計方面的文章的時候,你可能會發現,它們會把統計的公式改用測度來表達,這樣做有兩個好處:所有的推導和結論不用分別給連續分布和離散分布各自寫一遍了,這兩種東西都可以用同一的測度形式表達:連續分布的積分基於lebesgue測度,離散分布的求和基於計數測度,而且還能推廣到那種既不連續又不離散的分布中去(這種東西不是數學家的遊戲,而是已經在實用的東西,在dirchlet process或者pitman-yor process裡面會經常看到)。而且,即使是連續積分,如果不是在歐氏空間進行,而是在更一般的拓撲空間(比如微分流形或者變換群),那麼傳統的黎曼積分(就是大學一年級在微積分課學的那種)就不work了,你可能需要它們的一些推廣,比如haar measure或者lebesgue-stieltjes積分。
6、topology(拓撲學),這是學術中很基礎的學科。它一般不直接提供方法,但是它的很多概念和定理是其它數學分支的基石。看很多別的數學的時候,你會經常接觸這樣一些概念:open set / closed set,set basis,hausdauf, continuous function,metric space, cauchy sequence, neighborhood, compactness, connectivity。很多這些也許在大學一年級就學習過一些,當時是基於極限的概念獲得的。如果,看過拓撲學之後,對這些概念的認識會有根本性的拓展。比如,連續函式,當時是由epison法定義的,就是無論取多小的正數epsilon,都存在***,使得***。這是需要一種metric去度量距離的,在general topology裡面,對於連續函式的定義連座標和距離都不需要——如果乙個對映使得開集的原像是開集,它就是連續的——至於開集是基於集合論定義的,不是通常的開區間的意思。這只是最簡單的例子。當然,我們研究learning也許不需要深究這些數學概念背後的公理體系,但是,打破原來定義的概念的侷限在很多問題上是必須的——尤其是當你研究的東西它不是在歐氏空間裡面的時候——正交矩陣,變換群,流形,概率分布的空間,都屬於此。
7、differential manifold (微分流形),通俗地說它研究的是平滑的曲面。乙個直接的印象是它是不是可以用來fitting乙個su***ce什麼的——當然這算是一種應用,但是這是非常初步的。本質上說,微分流形研究的是平滑的拓撲結構。乙個空間構成微分流形的基本要素是區域性平滑:從拓撲學來理解,就是它的任意區域性都同胚於歐氏空間,從解析的角度來看,就是相容的區域性座標系統。當然,在全域性上,它不要求和歐氏空間同胚。它除了可以用於刻畫集合上的平滑曲面外,更重要的意義在於,它可以用於研究很多重要的集合。乙個n-維線性空間的全部k-維子空間(k
9、graph theory(圖論),圖,由於它在表述各種關係的強大能力以及優雅的理論,高效的演算法,越來越受到learning領域的歡迎。經典圖論,在learning中的乙個最重要應用就是graphical models了,它被成功運用於分析統計網路的結構和規劃統計推斷的流程。graphical model所取得的成功,圖論可謂功不可沒。在vision裡面,maxflow (graphcut)演算法在影象分割,stereo還有各種能量優化中也廣受應用。另外乙個重要的圖論分支就是algebraic graph theory (代數圖論),主要運用於圖的譜分析,著名的應用包括normalized cut和spectral clustering。近年來在semi-supervised learning中受到特別關注。
這是大牛們做的很好的綜述啊!
據說,是mit一牛人對數學在機器學習中的作用給的評述!
機器學習所需的數學基礎
數學 l1 regularization 這篇文章解釋了l1 regularization為什麼會產生稀疏解,很不錯 拉格朗日乘子法和kkt條件 對偶問題 傅利葉變換 拉普拉斯變換和z變換的意義 特徵值 特徵向量的意義 似然性 最大似然估計 無約束最優化 從線搜尋講到牛頓法 擬牛頓法 bfgs lb...
機器學習所需要的數學知識
第2課 數理統計與引數估計 第3課 線性代數 第4課 凸優化 第5課 回歸 第6課 梯度下降演算法剖析 第7課 最大熵模型 第8課 pca svd lda linear discriminant analysis 第9課 聚類 第10課 決策樹和隨機森林 第11課 adaboost 第12課 svm...
機器學習 數學 機器學習涉及的數學知識
簡單總結 機器學習涉及的數學知識有 線性代數,概率論和統計學,多變數微積分,演算法和複雜優化,以及其他等。原文 在過去幾個月裡,有幾個人聯絡過我,說他們渴望進軍資料科學領域,使用機器學習 ml 技術探索統計規律,並打造資料驅動的完美產品。但是,據我觀察,一些人缺乏必要的數學直覺和框架,無法獲得有用的...