生活随笔
收集整理的這篇文章主要介紹了
图˙谱˙马尔可夫过程˙聚类结构(转自MIT的中国留学生博客)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目中所說到的四個詞語,都是 Machine Learning 以及相關領域中熱門的研究課題。表面看屬于不同的 topic ,實際上則是看待同一個問題的不同角度。不少文章論述了它們之間的一些聯系,讓大家看到了這個世界的奇妙。 從圖說起 這里面,最簡單的一個概念就是 “ 圖 ”(Graph) ,它用于表示事物之間的相互聯系。每個圖有一批節點 (Node) ,每個節點表示一個對象,通過一些邊 (Edge) 把這些點連在一起,表示它們之間的關系。就這么一個簡單的概念,它對學術發展的意義可以說是無可估量的。幾乎所有領域研究的東西,都是存在相互聯系的,通過圖,這些聯系都具有了一個統一,靈活,而又強大的數學抽象。因此,很多領域的學者都對圖有著深入探討,而且某個領域關于圖的研究成果,可以被其它領域借鑒。 矩陣表示:讓代數進入圖的世界 在數學上,一種被普遍使用的表達就是鄰接矩陣 (Adjacency Matrix) 。一個有 N 個節點的圖,可以用一個 N x N 的矩陣 G 表示, G(i, j) 用一個值表示第 i 個節點和第 j 個節點的聯系,通常來說這個值越大它們關系越密切,這個值為 0 表示它們不存在直接聯系。這個表達,很直接,但是非常重要,因為它把數學上兩個非常根本的概念聯系在一起: “ 圖 ”(Graph) 和 “ 矩陣 ”(Matrix) 。矩陣是代數學中最重要的概念,給了圖一個矩陣表達,就建立了用代數方法研究圖的途徑。數學家們幾十年前開始就看到了這一點,并且開創了數學上一個重要的分支 —— 代數圖論 (Algebraic Graph Theory) 。 代數圖論通過圖的矩陣表達來研究圖。熟悉線性代數的朋友知道,代數中一個很重要的概念叫做 “ 譜 ”(Spectrum) 。一個矩陣的很多特性和它的譜結構 —— 就是它的特征值和特征向量是密切相關的。因此,當我們獲得一個圖的矩陣表達之后,就可以通過研究這個矩陣的譜結構來研究圖的特性。通常,我們會分析一個圖的鄰接矩陣 (Adjacency Matrix) 或者拉普拉斯矩陣 (Laplace Matrix) 的譜 —— 這里多說一句,這兩種矩陣的譜結構剛好是對稱的。 譜: “ 分而治之 ” 的代數 譜,這個詞匯似乎在不少地方出現過,比如我們可能更多聽說的頻譜,光譜,等等。究竟什么叫 “ 譜 ” 呢?它的概念其實并不神秘,簡單地說,譜這個概念來自 “ 分而治之 ” 的策略。一個復雜的東西不好直接研究,就把它分解成簡單的分量。如果我們把一個東西看成是一些分量疊加而成,那么這些分量以及它們各自所占的比例,就叫這個東西的譜。所謂頻譜,就是把一個信號分解成多個頻率單一的分量。 矩陣的譜,就是它的特征值和特征向量,普通的線性代數課本會告訴你定義:如果 A v = c v ,那么 c 就是 A 的特征值, v 就叫特征向量。這僅僅是數學家發明的一種數學游戲么? —— 也許有些人剛學這個的時候,并一定能深入理解這么個公式代表什么。其實,這里的譜,還是代表了一種分量結構,它為使用 “ 分而治之 ” 策略來研究矩陣的作用打開了一個重要途徑。這里我們可以把矩陣理解為一個操作 (operator) ,它的作用就是把一個向量變成另外一個向量: y = A x 。對于某些向量,矩陣對它的作用很簡單, A v = cv ,相當于就把這個向量 v 拉長了 c 倍。我們把這種和矩陣 A 能如此密切配合的向量 v1, v2, ... 叫做特征向量,這個倍數 c1, c2, ... 叫特征值。那么來了一個新的向量 x 的時候,我們就可以把 x 分解為這些向量的組合, x = a1 v1 + a2 v2 + ... ,那么 A 對 x 的作用就可以分解了: A x = A (a1 v1 + a2 v2 + ...) = a1 c1 v1 + a2 c2 v2 ... 所以,矩陣的譜就是用于分解一個矩陣的作用的。 這里再稍微延伸一點。一個向量可以看成一個關于整數的函數,就是輸入 i ,它返回 v( i ) 。它可以延伸為一個連續函數(一個長度無限不可數的向量,呵呵),相應的矩陣 A 變成一個二元連續函數(面積無限大的矩陣)。這時候矩陣乘法中的求和變成了積分。同樣的, A 的作用可以理解為把一個連續函數映射為另外一個連續函數,這時候 A 不叫矩陣,通常被稱為算子。對于算子,上面的譜分析方法同樣適用(從有限到無限,在數學上還需要處理一下,不多說了) —— 這個就是泛函分析中的一個重要部分 —— 譜論( Spectral Theory )。 馬爾可夫過程 —— 從時間的角度理解圖 回到 “ 圖 ” 這個題目,那么圖的譜是干什么的呢?按照上面的理解,似乎是拿來分解一個圖的。這里譜的作用還是分治,但是,不是直觀的理解為把圖的大卸八塊,而是把要把在圖上運行的過程分解成簡單的過程的疊加。如果一個圖上每個節點都有一個值,那么在圖上運行的過程就是對這些值進行更新的過程。一個簡單,大家經常使用的過程,就是馬爾可夫過程 (Markov Process) 。 學過隨機過程的朋友都了解馬爾可夫過程。概念很簡單 ——“ 將來只由現在決定,和過去無關 ” 。考慮一個圖,圖上每個點有一個值,會被不斷更新。每個點通過一些邊連接到其它一些點上,對于每個點,這些邊的值都是正的,和為 1 。在圖上每次更新一個點的值,就是對和它相連接的點的值加權平均。如果圖是聯通并且非周期(數學上叫各態歷經性 , ergodicity) ,那么這個過程最后會收斂到一個唯一穩定的狀態(平衡狀態 ) 。 圖上的馬爾可夫更新過程,對于很多學科有著非常重要的意義。這種數學抽象,可以用在什么地方呢? (1) Google 對搜索結果的評估 (PageRank) 原理上依賴于這個核心過程, (2) 統計中一種廣泛運用的采樣過程 MCMC ,其核心就是上述的轉移過程, (3) 物理上廣泛存在的擴散過程(比如熱擴散,流體擴散)和上面的過程有很重要的類比, (4) 網絡中的信息的某些歸納與交換過程和上述過程相同 ( 比如 Random Gossiping) ,還有很多。非常多的實際過程通過某種程度的簡化和近似,都可以歸結為上述過程。因此,對上面這個核心過程的研究,對于很多現象的理解有重要的意義。各個領域的科學家從本領域的角度出發研究這個過程,得出了很多實質上一致的結論,并且很多都落在了圖的譜結構的這個關鍵點上。 圖和譜在此聯姻 根據上面的定義,我們看到鄰接矩陣 A 其實就是這個馬爾可夫過程的轉移概率矩陣。我們把各個節點的值放在一起可以得到一個向量 v ,那么我們就可以獲得對這個過程的代數表示, v(t+1) = A v(t) 。穩定的時候, v = A v 。我們可以看到穩定狀態就是 A 的一個特征向量,特征值就是 1 。這里譜的概念進來了。我們把 A 的特征向量都列出來 v1, v2, ... ,它們有 A vi = ci vi 。 vi 其實就是一種很特殊,但是很簡單的狀態,對它每進行一輪更新,所有節點的值就變成原來的 ci 倍。如果 0 < ci < 1 ,那么,相當于所有節點的值呈現指數衰減,直到大家都趨近于 0 。 一般情況下,我們開始于一個任意一個狀態 u ,它的更新過程就沒那么簡單了。我們用譜的方法來分析,把 u 分解成 u = v1 + c2 v2 + c3 v3 + ... (在數學上可以嚴格證明,對于上述的轉移概率矩陣,最大的特征值就是 1 ,這里對應于平衡狀態 v1 ,其它的特征狀態 v2, v3, ..., 對應于特征值 1 > c2 > c3 > ... > -1) 。那么,我們可以看到,當更新進行了 t 步之后,狀態變成 u(t) = v1 + c2^t v2 + c3^t v3 + ... ,我們看到,除了代表平衡狀態的分量保持不變外,其它分量隨著 t 增長而指數衰減,最后,其它整個趨近于平衡狀態。 從上面的分析看到,這個過程的收斂速度,其實是和衰減得最慢的那個非平衡分量是密切相關的,它的衰減速度取決于第二大特征值 c2 , c2 的大小越接近于 1 ,收斂越慢,越接近于 0 ,收斂越快。這里,我們看到了譜的意義。第一,它幫助把一個圖上運行的馬爾可夫過程分解為多個簡單的字過程的疊加,這里面包含一個平衡過程和多個指數衰減的非平衡過程。第二,它指出平衡狀態是對應于最大特征值 1 的分量,而收斂速度主要取決于第二大特征值。 我們這里知道了第二大特征值 c2 對于描述這個過程是個至關重要的量,究竟是越大越好,還是越小越好呢?這要看具體解決的問題。如果你要設計一個采樣過程或者更新過程,那么就要追求一個小的 c2 ,它一方面提高過程的效率,另外一方面,使得圖的結構改變的時候,能及時收斂,從而保證過程的穩定。而對于網絡而言,小的 c2 有利于信息的迅速擴散和傳播。 聚類結構 —— 從空間的角度理解圖 c2 的大小往往取決于圖上的聚類結構。如果圖上的點分成幾組,各自聚成一團,缺乏組與組之間的聯系,那么這種結構是很不利于擴散的。在某些情況下,甚至需要 O(exp(N)) 的時間才能收斂。這也符合我們的直觀想象,好比兩個大水缸,它們中間的只有一根很細的水管相連,那么就需要好長時間才能達到平衡。有興趣的朋友可以就這個水缸問題推導一下,這個水缸系統的第二大特征值和水管流量與水缸的容積的比例直接相關,隨比例增大而下降。 對于這個現象進行推廣,數學上有一個重要的模型叫導率模型 (Conductance) 。具體的公式不說了,大體思想是,節點集之間的導通量和節點集大小的平均比例和第二大特征值之間存在一個單調的上下界關系。導率描述的是圖上的節點連接的空間結合,這個模型把第二特征值 c2 和圖的空間聚集結構聯系在一起了。 圖上的聚類結構越明顯, c2 越大;反過來說, c2 越大,聚類的結構越明顯, (c2 = 1) 時,整個圖就斷裂成非連通的兩塊或者多塊了。從這個意義上說, c2 越大,越容易對這個圖上的點進行聚類。機器學習中一個重要課題叫做聚類,近十年來,基于代數圖論發展出來的一種新的聚類方法,就是利用了第二大特征值對應的譜結構,這種聚類方法叫做譜聚類 (Spectral Clustering) 。它在 Computer Vision 里面對應于一種著名的圖像分割方法,叫做 Normalized Cut 。很多工作在使用這種方法。其實這種方法的成功,取決于 c2 的大小,也就是說取決于我們如何構造出一個利于聚類的圖,另外 c2 的值本身也可以作為衡量聚類質量,或者可聚類性的標志。遺憾的是,在 paper 里面,使用此方法者眾,深入探討此方法的內在特點者少。 歸納起來 ??? * 圖是表達事物關系和傳遞擴散過程的重要數學抽象 ??? * 圖的矩陣表達提供了使用代數方法研究圖的途徑 ??? * 譜,作為一種重要的代數方法,其意義在于對復雜對象和過程進行分解 ??? * 圖上的馬爾可夫更新過程是很多實際過程的一個重要抽象 ??? * 圖的譜結構的重要意義在于通過它對馬爾可夫更新過程進行分解分析 ??? * 圖的第一特征值對應于馬爾可夫過程的平衡狀態,第二特征值刻畫了這個過程的收斂速度(采樣的效率,擴散和傳播速度,網絡的穩定程度)。 ??? * 圖的第二特征分量與節點的聚類結構密切相關。可以通過譜結構來分析圖的聚類結構。
?
總結
以上是生活随笔 為你收集整理的图˙谱˙马尔可夫过程˙聚类结构(转自MIT的中国留学生博客) 的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網站內容還不錯,歡迎將生活随笔 推薦給好友。