拉普拉斯特征映射(Laplacian Eigenmaps)


拉普拉斯特征映射(Laplacian Eigenmaps)

1、介紹

拉普拉斯特征映射(Laplacian Eigenmaps)是一種不太常見的降維算法,它看問題的角度和常見的降維算法不太相同,是從局部的角度去構建數據之間的關系。也許這樣講有些抽象,具體來講,拉普拉斯特征映射是一種基於圖的降維算法,它希望相互間有關系的點(在圖中相連的點)在降維后的空間中盡可能的靠近,從而在降維后仍能保持原有的數據結構。
本文參考 http://blog.csdn.net/xbinworld/article/details/8855796。

2、推導

拉普拉斯特征映射通過構建鄰接矩陣為WW(鄰接矩陣定義見這里)的圖來重構數據流形的局部結構特征。其主要思想是,如果兩個數據實例ii和jj很相似,那么ii和jj在降維后目標子空間中應該盡量接近。設數據實例的數目為nn,目標子空間即最終的降維目標的維度為mm。定義n×mn×m大小的矩陣YY,其中每一個行向量yTiyiT是數據實例ii在目標mm維子空間中的向量表示(即降維后的數據實例ii)。我們的目的是讓相似的數據樣例ii和jj在降維后的目標子空間里仍舊盡量接近,故拉普拉斯特征映射優化的目標函數如下:

min∑i,j||yi−yj||2Wijmin∑i,j||yi−yj||2Wij

下面開始推導:

∑i=1n∑j=1n||yi−yj||2Wij=∑i=1n∑j=1n(yTiyi−2yTiyj+yTjyj)Wij=∑i=1n(∑j=1nWij)yTiyi+∑j=1n(∑i=1nWij)yTjyj−2∑i=1n∑j=1nyTiyjWij=2∑i=1nDiiyTiyi−2∑i=1n∑j=1nyTiyjWij=2∑i=1n(Dii−−−√yi)T(Dii−−−√yi)−2∑i=1nyTi(∑j=1nyjWij)=2trace(YTDY)−2∑i=1nyTi(YW)i=2trace(YTDY)−2trace(YTWY)=2trace[YT(D−W)Y]=2trace(YTLY)∑i=1n∑j=1n||yi−yj||2Wij=∑i=1n∑j=1n(yiTyi−2yiTyj+yjTyj)Wij=∑i=1n(∑j=1nWij)yiTyi+∑j=1n(∑i=1nWij)yjTyj−2∑i=1n∑j=1nyiTyjWij=2∑i=1nDiiyiTyi−2∑i=1n∑j=1nyiTyjWij=2∑i=1n(Diiyi)T(Diiyi)−2∑i=1nyiT(∑j=1nyjWij)=2trace(YTDY)−2∑i=1nyiT(YW)i=2trace(YTDY)−2trace(YTWY)=2trace[YT(D−W)Y]=2trace(YTLY)

其中WW是圖的鄰接矩陣,對角矩陣DD是圖的度矩陣(Dii=∑nj=1WijDii=∑j=1nWij),L=D−WL=D−W成為圖的拉普拉斯矩陣。

變換后的拉普拉斯特征映射優化的目標函數如下:

mintrace(YTLY),s.t.YTDY=Imintrace(YTLY),s.t.YTDY=I

其中限制條件s.t.YTDY=Is.t.YTDY=I保證優化問題有解,下面用拉格朗日乘子法對目標函數求解:

f(Y)=tr(YTLY)+tr[Λ(YTDY−I)]∂f(Y)∂Y=LY+LTY+DTYΛT+DYΛ=2LY+2DYΛ=0∴LY=−DYΛf(Y)=tr(YTLY)+tr[Λ(YTDY−I)]∂f(Y)∂Y=LY+LTY+DTYΛT+DYΛ=2LY+2DYΛ=0∴LY=−DYΛ

其中用到了矩陣的跡的求導,具體方法見跡求導。ΛΛ為一個對角矩陣,另外LL、DD均為實對稱矩陣,其轉置與自身相等。對於單獨的yy向量,上式可寫為:Ly=λDyLy=λDy, 這是一個廣義特征值問題。。通過求得mm個最小非零特征值所對應的特征向量,即可達到降維的目的。

關於這里為什么要選擇mm個最小非零特征值所對應的特征向量,下面評論中的大佬指出,將LY=−DYΛLY=−DYΛ帶回到mintrace(YTLY)mintrace(YTLY)中,由於有着約束條件YTDY=IYTDY=I的限制,可以得到mintrace(YTLY)=mintrace(−Λ)mintrace(YTLY)=mintrace(−Λ)。即為特征值之和。我們為了目標函數最小化,要選擇最小的mm個特征值所對應的特征向量。

3、步驟

使用時算法具體步驟為:

步驟 1:構建圖

使用某一種方法來將所有的點構建成一個圖,例如使用 KNN 算法,將每個點最近的 K 個點連上邊。K 是一個預先設定的值。

步驟 2:確定權重

確定點與點之間的權重大小,例如選用熱核函數來確定,如果點ii和點jj相連,那么它們關系的權重設定為:

Wij=e−||xi−xj||2tWij=e−||xi−xj||2t

另外一種可選的簡化設定是Wij=1Wij=1如果點ii,jj相連,否則Wij=0Wij=0。

步驟 3:特征映射

計算拉普拉斯矩陣 L 的特征向量與特征值:Ly=λDyLy=λDy

使用最小的 m 個非零特征值對應的特征向量作為降維后的結果輸出。

4、實例

img

上圖所示左邊的圖表示有兩類數據點(數據是圖片),中間圖表示采用拉普拉斯特征映射降維后每個數據點在二維空間中的位置,右邊的圖表示采用 PCA 並取前兩個主要方向投影后的結果,可以清楚地看到,在此分類問題上,拉普拉斯特征映射的結果明顯優於 PCA。

img

上圖說明的是高維數據(圖中 3D)也有可能是具有低維的內在屬性的(圖中 Swiss roll 實際上是 2D 的),但是這個低維不是原來坐標表示,例如如果要保持局部關系,藍色和下面黃色是完全不相關的,但是如果只用任何 2D 或者 3D 的距離來描述都是不准確的。

下面的三個圖是拉普拉斯特征映射在不同參數下的展開結果(降維到 2D),可以看到,似乎是要把整個卷拉平了,藍色和黃色差的比較遠,很好地保留了數據原有的結構。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM