資料降維(四)ISOMAP
阿新 • • 發佈:2018-12-27
流形學習——ISOMAP演算法
Isomap(Isometric Feature Mapping)是流行學習的一種,用於非線性資料降維,是一種無監督演算法.
流形
流形是一個區域性具有歐式空間性質的拓撲空間,流形能很好地近似任意高維的子空間.
測地線距離
測地距離(Geodesic Distance),在高維空間中度量距離不應當直接使用歐式距離,而應當使用測地距離.
測地線距離定義
- 鄰近的點:輸入空間的歐式距離提供一個測地線距離的近似.
- 最遠的點:測地線距離通過一些列鄰域點之間的歐式距離的累加近似得到.
舉例: 在一個流形中,相距很遠的兩個點,有可能歐式距離很近.
ISOMAP演算法
ISOMAP(Isometric Feature Mapping, 等距離特徵對映),是一種非線性降維方法,其基於度量MDS,試圖保留資料內在的由測地線距離蘊含的幾何結構.
演算法步驟
- 構建鄰接圖
- 通過連線距離小於 的兩個點 和 在N個數據點上定義圖 ( ),或者點 是點 的 近鄰之一(K-Isomap).
- 設定邊的長度為 .
- 計算最短路徑
- 初始化 ,如果 和 相連線,否則
- 對於每一個 ,替換所有的 為 .那麼 包含G中所有點對的最短路徑
- 構建低維嵌入
- 通過MDS構建低維的資料嵌入
瓶頸
- 最短路徑的計算
- Floyd演算法:
- Dijkstra演算法(Fibonacci堆實現): ,K是最近鄰的個數
- 特徵分解: