1. 程式人生 > >LLE((locally linear embedding) 區域性線性嵌入演算法,一種降維方法

LLE((locally linear embedding) 區域性線性嵌入演算法,一種降維方法

原始特徵的數量可能很大,或者說樣本是處於一個高維空間中,通過對映或變換的方法,降高維資料降低到低維空間中的資料,這個過程叫特徵提取,也稱降維。

   特徵提取得基本任務研究從眾多特徵中求出那些對分類最有效的特徵,從而實現特徵空間維數的壓縮。傳統的降維技術可以分為線性和非線性兩類。

(1)線性降維演算法主要有PCA(Principal Component Analysis)、MDS(Multidimensional Scaling)及ICA;

(2)非線性降維演算法主要有自組織影射網路(Self-organising map, 生成拓撲對映(Generative Topographic mapping), 主曲線和表面(Principal Curves and Surfaces), 自編碼神經網路(Auto-encoder Neural Networks)和線性混合模型(Mixtures of Linear Models)。 其中LLE,作為一種新的降維方法,既有非線性的特點,又有線性方法的優點,這幾年成為人們研究的熱點。

   Sam T.Roweis 和 Lawrence K.Saul最近提出LLE演算法,它是針對非線性資料的一種新的降維技術,並且能夠使降維後的資料保持原有的拓撲結構。 LLE演算法可以廣泛的應用於非線性資料的降維、聚類以及影象分割等領域。 圖1是一個將LLE應用於降維的例子, 它將三維空間中的資料(圖1中的B)對映到二維空間中(圖1中的C)。 如果把圖1(B)中紅顏色和藍顏色的資料分別看成是分佈在三維空間中的兩類資料,通過LLE演算法降維後, 則資料在二維空間中仍能保持相對獨立的兩類。由此LLE演算法可以應用於樣本的聚類。

LLE - 往事隨風 - 行者隨風

   LLE是最新提出的非線性降維方法。該演算法即具有處理非線性資料的優點又有線性降維方法計算效能的優越性。 簡單的講,該方法是將高維流型用剪刀剪成很多的小塊,每一小塊可以用平面代替,然後再低維中重新拼合出來, 且要求保留各點之間的拓撲關係不變。整個問題最後被轉化為兩個二次規劃問題。

   LLE演算法可以歸結為三步:

  • (1) 尋找每個樣本點的k個近鄰點;
  • (2)由每個樣本點的近鄰點計算出該樣本點的區域性重建權值矩陣;
  • (3)由該樣本點的區域性重建權值矩陣和其近鄰點計算出該樣本點的輸出值。LLE - 往事隨風 - 行者隨風
    演算法的第一步是計算出每個樣本點的k個近鄰點。把相對於所求樣本點距離最近的k個樣本點規定為所求樣本點的k個近鄰點。k是一個預先給定值。Sam T.Roweis 和 Lawrence K.Saul演算法採用的是歐氏距離,則減輕複雜的計算。然而本文是假定高維空間中的資料是非線性分佈的,採用了diijstra距離。Dijkstra 距離是一種測地距離,它能夠保持樣本點之間的曲面特性,在ISOMAP演算法中有廣泛的應用。針對樣本點多的情況,普通的dijkstra演算法不能滿足LLE演算法的要求。

    LLE演算法的第二步是計算出樣本點的區域性重建權值矩陣。這裡定義一個誤差函式,如下所示:

     其中 為 的k個近鄰點, 是 與 之間的權值,且要滿足條件: 。這裡求取W矩陣,需要構造一個區域性協方差矩陣 。

    將上式與相結合,並採用拉格朗日乘子法,即可求出區域性最優化重建權值矩陣:

    在實際運算中,可能是一個奇異矩陣,此時必須正則化,如下所示:

其中r是正則化引數,I是一個kxk的單位矩陣。

    LLE演算法的最後一步是將所有的樣本點對映到低維空間中。對映條件滿足如下所示:

其中,為損失函式值,是的輸出向量,是的k個近鄰點,且要滿足兩個條件,即:

其中I是的單位矩陣。這裡的可以儲存在的稀疏矩陣W中,當是的近鄰點時,,否則,。則損失函式可重寫為:

其中M是一個的對稱矩陣,其表示式為:

要使損失函式值達到最小, 則取Y為M的最小m個非零特徵值所對應的特徵向量。在處理過程中,將M的特徵值從小到大排列,第一個特徵值幾乎接近於零,那麼捨去第一個特徵值。通常取第間的特徵值所對應的特徵向量作為輸出結果。