非線性降維也稱作流形學習，為各種相關技術中的一種，是將高維資料投射到低維潛流形上，目的是在低維空間中實現資料視覺化，或學習對映（高維到低維嵌入或反之）本身。下面介紹的技術可理解概括用於降維的線性分解法（如奇異值分解、主成分分析）。 非線性降維的應用 考慮以矩陣（或資料庫）表示的資料集，其中每行都代表描述某物特定例項的一組屬性（或特徵）。如果屬性的數量很大，那麼可行行空間的增長速度是指數級的（例如有 f 個屬性，每個屬性均具有 k 種可能的選擇，則所有可能的屬性為 kf）。維度越大，對空間進行取樣就越困難。這導致了處理高維資料的演算法時間複雜性非常高。許多機器學習演算法在處理高維資料時很吃力，而將資料縮降維會使演算法更有效率，並能幫助機器學習演算法做出更準確的預測。 人類往往難以理解高維資料。因此將資料減進行降維對於視覺化非常有用。 資料的降維表示通常被稱為 內蘊變數（intrinsic variable），即它們是資料產生的價值。例如，考慮一個包含字母 A 經過縮放和旋轉的影像的資料集，每張圖片有 3232 畫素，可以表示為長度為 1024 的向量；每行都是 1024 維的空間中，二維流形上的一個樣本。由於資料僅透過縮放和旋轉得到，所以內蘊維度是 2；而字母 A 的形狀或外觀則不是內蘊變數（因為資料集中所有元素該特徵均相同）。非線性降維將拋棄相關資訊（字母 A），只保留變化的資訊（縮放和旋轉）。右圖展示了該資料集的部分樣本，及透過使用非線性降維演算法（Manifold Sculpting）將資料降到二維的結果散點圖。 作為對比，右圖使用線性降維演算法 PCA（主成分分析），將同樣的資料集降為二維，可以發現結果並沒有採用非線性降維演算法好。這表明從該流形上取樣得到的高維向量以一種非線性的方式變化。 非線性降維在計算機視覺領域有所應用。例如一個使用相機在封閉的靜態環境中導航的機器人，相機得到的影像可以視為從高維空間流形取樣得到的樣本，流形的內蘊變數代表機器人的位置和朝向。 不變流形對動力系統中的模型降階具有普遍意義。特別是，若相空間中存在吸引不變流形，附近的軌跡便會匯聚其上並停留，使其稱為動力系統降維的候選流形。一般情形下不能保證存在這樣的流形，不過譜子流形理論給出了一大類動力系統中存在唯一吸引不變物件的條件。非線性降維的積極研究旨在展開與動力系統相關的觀測流形，以開發建模技術。 下面列舉了一些非線性降維技巧。 重要概念 薩蒙對映 是最早也是最流行的非線性降維技術之一。 thumb200pxleft1 維 SOM 的主曲線近似圖（紅色方格折線，20 個節點）。第一主成分表為藍色直線。資料點為灰色圓圈。對 PCA，此例中的未解釋方差比是 2323，而 SOM 則是 686。The illustration is prepared using free software 自組織對映 自組織對映（SOM，也稱作科赫寧對映，Kohonen map）及其機率變體生成拓撲圖（GTM）使用嵌入空間中的點表示，根據從嵌入空間到高位空間的非線性對映形成潛變數模型。這些技術與同樣基於機率模型的密度網路相關。 核主成分分析 核主成分分析可能是應用最廣泛的降維演算法。PCA 首先要計算 m times n 矩陣 mathbf X 的協方差矩陣 C frac 1msum_i1m mathbf x_imathbf x_imathsf T 然後將資料投影到矩陣的前 k 個特徵向量上。相比之下，KPCA 首先計算資料轉換到高維空間後的協方差矩陣 C frac 1msum_i1m Phi mathbf x_iPhi mathbf x_imathsf T 然後將變換後的資料投影到矩陣的前 k 個特徵向量上，這一步與 PCA 相同。它用核技巧將大部分計算分解，這樣整個過程就可在不實際計算 Phi mathbf x 的情況下完成。當然 Phi 必須選擇已知的對應核，不幸的是為已知問題找到好的核並不容易，因此 KPCA 用標準核時對某些問題的處理並不理想。例如，在瑞士捲流形上便表現不佳。不過，可構造與資料相關的核矩陣，將某些在此類環境中表現良好的其他方案（如拉普拉斯特徵對映、LLE）視作核 PCA 的特例。 KPCA 有內部模型，因此可用於將訓練時未見的點對映到其嵌入上。 主曲線與流形 主曲線與流形給出了非線性降維的自然幾何框架，並透過明確構建嵌入流形、使用流形上的標準幾何投影進行編碼，推廣了 PCA 的幾何解釋。這種方法最早由 Trevor Hastie 1984 提出，在 1989 年正式引入了這一方法。許多學者對這一想法進行了進一步探索。 如何定義流形的 簡單性 取決於具體問題，常用流形的內蘊維度和 或光滑度來衡量。通常主流形定義為最佳化問題的解，目標函式如資料近似的質量和流形彎曲的一些懲罰項。常用的初始近似值由線性 PCA 和 Kohonen SOM 生成。 拉普拉斯特徵對映 拉普拉斯特徵對映用譜技術降維。這種技術依賴於一個基本假設：資料位於高維空間的低維流形之中。 Matlab code for Laplacian Eigenmaps can be found in algorithms at Ohiostateedu 這種演算法無法嵌入樣本外的點，但基於再生核希爾伯特空間正則化的技術可以增加這種能力。這種技術也可用於其他非線性降維演算法。 主成分分析等傳統技術不考慮資料的內蘊幾何。拉普拉斯特徵對映根據資料集的鄰域資訊構造了圖，資料點是圖中的節點，連通性取決於鄰點的距離（如用 k 鄰近演算法），生成的圖可視作低維流形在高位空間中的離散近似。基於圖的代價函式最小化確保流形上相近的點對映到低維空間也相近，從而保留了區域性距離。流形上拉普拉斯 貝爾特拉米運算元的特徵函式可作為嵌入維度，因為在溫和的條件下運算元具有可數譜，是流形上平方可積函式的基礎（與單位圓流形上的傅立葉級數比較）。拉普拉斯特徵對映的理論化取得了部分成功，因為在某些非限制性假設下，隨著點數趨向無窮多，已經證明圖拉普拉斯矩陣收斂到拉普拉斯 貝爾特拉米運算元。 等距特徵對映 等距特徵對映是 FloydWarshall 演算法與經典多維標度（MDS）的結合。經典 MDS 採用所有點之間的成對距離矩陣，計算每個點的位置；等距特徵對映假設只知道相鄰點之間的成對距離，並用 FloydWarshall 演算法計算其他點的距離，這樣就能有效估算出所有點之間的成對測地距離矩陣。然後等距特徵對映用經典 MDS 計算所有點的降維位置。地標等距特徵對映是這種演算法的變體，用地標提高計算速度，但會犧牲一定精度。 流形學習中，輸入資料被假定是從嵌入高維向量空間的低維流形中取樣的。MVU 背後的主要原理是利用流形的區域性線性，在底流形的每點建立保留區域性鄰域的對映。 區域性線性嵌入 區域性線性嵌入（LLE）與等距特徵對映大約同時問世。與等距特徵對映相比，LLE 有幾個優點，如利用係數矩陣演算法時最佳化速度更快、很多問題上的結果更好等等。LLE 也始於尋找每個點的最近鄰點，接著為每個點計算一組權重，其能將點描述為鄰點的線性組合。最後用基於特徵向量的最佳化技術，求得點的低維嵌入，這樣每個點仍用鄰點的相同線性組合描述。LLE 處理非均勻樣本密度時往往效果不佳，因為沒有固定單位防止權重漂移。LLE 沒有內蘊模型。 LLE 根據點 X_i 的鄰域計算其重心座標。原始點由鄰點的權重矩陣 W_ij 給出的線性組合構建，誤差表為成本函式 E W。 E W sum_i leftmathbf X_i sum_j mathbf W_ijmathbf X_jright2 權重 W_ij 指 X_j 點在構建 X_i 時的貢獻量。成本函式的最小化有兩條約束： a 資料點 X_i 只從其鄰點構建，因此若點 X_j 不是 X_i 的鄰點，則 W_ij 必為 0； b 權重矩陣每行之和都為 1。 sum_j mathbf W_ij 1 原資料點是 D 維空間中收集的，演算法的目標是將維度降低到 d 使 Dd。在 D 維空間構建第 i 個數據點的權重 W_ij 將用於在 d 維空間中構建同一點。基於這種想法，我們建立了一個保鄰域對映：D 維空間中的每點 X_i 都對映到 d 維空間中的某點 Y_i，並使成本函式最小化： C Y sum_i leftmathbf Y_i sum_j mathbf W_ijmathbf Y_jright2 這個成本函式中，權重 W_ij 是固定的，最小化在 Y_i 上進行以最佳化座標。此最小化問題可由求解稀疏 N 階特徵值問題（N 為資料點數量）解決，其底部 d 個非零特徵向量提供了座標的一組正交集。一般來說，資料點是根據歐氏距離測量的 K 個最近鄰點構建的，這時演算法只有一個自由引數 K，可透過交叉驗證來選擇。 黑塞區域性線性嵌入（Hesian LLE） 黑塞 LLE 也是基於稀疏矩陣技術，結果質量往往比 LLE 高得多。遺憾的是，其計算複雜度非常高，不適合樣本數較多的流形。黑塞 LLE 沒有內蘊模型。 改進區域性線性嵌入（MLLE） 改進區域性線性嵌入（MLLE）是另一種 LLE 變體，在每個鄰域用多重權重解決權重矩陣的區域性調節。大致說，多重權重是原 LLE 權重的區域性正交投影。MLLE 的創造者也是區域性切空間對齊（LTSA）的作者，認識到每個權重向量的正交投影的全域性最佳化本質上是對齊每個資料點的區域性切空間時，LTSA 就蘊含於 MLLE 的表述中。正確應用此演算法的理論與經驗意義深遠。 區域性切空間對齊 區域性切空間對齊（LTSA）是基於這樣一種直覺：流形正確展開時，所有切超平面都會對齊。它首先計算每個點的 k 個最近鄰域。透過計算每個區域性鄰域中的前 d 個主成分，獲得每個點的切空間。然後進行最佳化，找到能使切空間對齊的嵌入。 最大方差展開 最大方差展開、等距特徵對映、LLE 有共同的直覺：若流形被適當展開，則各點的方差會最大化。第一步是找到每個點的最近鄰點；然後最大化所有非鄰點間距離，約束是鄰點間距不變。此演算法的主要貢獻在於將問題轉化為半定規劃問題。然而，半定規劃求解器的計算成本很高。與 LLE 類似，最大方差展開沒有內蘊模型。 自編碼器 自編碼器是一個前饋神經網路，其訓練目標為恆等對映，即從向量對映到同一個向量。用於降維時，其部分隱藏層只包含少量神經元。此時，網路必須學會用較少的維度編碼向量，並同時能將將其解碼。因此，網路的前半部分（編碼器，Encoder）從高維空間對映到低維空間，後半部分（解碼器，Decoder）從低維空間對映到高維空間。自編碼器的概念由來已久，不過深度自編碼器的訓練到最近才由受限玻爾茲曼機和堆疊降噪自編碼器成為可能。與自編碼器相關的是 NeuroScale 演算法，其使用多維標度和薩蒙對映學習高維空間到嵌入空間的非線性對映。mappings in NeuroScale 中的對映基於徑向基函式網路。 高斯過程潛變數模型 高斯過程潛變數模型（GPLVM）是一種機率降維方法，用高斯過程（GPs）求高維資料的低維非線性嵌入，是 PCA 機率公式的推廣。模型以機率方式定義，並將潛變數邊緣化（marginalize），用最大似然法獲得引數。與核 PCA 類似，用核函式形成非線性對映（高斯過程形式）。不過，GPLVM 中，對映是從嵌入（潛）空間到資料空間（如密度網路與 GTM），而在核 PCA 中，對映方向正好相反。它最初是為高維空間的視覺化提出的，但已被推廣為構造兩觀測空間中間的共享流形模型。GPLVM 及其許多變體都是專為人類運動建模而提出的，如後約束 GPLVM、GP 動態模型（GPDM）、平衡 GPDM（BGPDM）、拓撲約束 GPDM 等等。為在步態分析中捕捉姿態與步態流形的耦合效應，提出了多層步態 姿態聯合流形。 t 分佈隨機鄰域嵌入 t 分佈隨機鄰域嵌入（tSNE）被廣泛應用。它是一種隨機鄰域嵌入法，計算高位空間中資料點對相關的機率，然後選擇產生相似分佈的低維嵌入。 其他演算法 關係透視對映 關係透視對映是一種多維標度演算法。演算法透過模擬閉流形上的多粒子動態系統，在流形上找到資料點的構型，其中資料點被對映為粒子，間距（或差異）表為排斥力。隨著流形逐漸增大，多粒子系統逐漸冷卻，收斂到反映資料點距離資訊的構型。 關係透視對映的靈感來自物理模型，當中帶正電的粒子在球表面自由移動。在庫侖力的引導下，粒子的最小能量構型將反映粒子間斥力的強度。 關係透視對映是 1976 年提出的。 演算法最初用平面環面作為像流形，後來 VisuMap 軟體中進行了擴充套件，使用球面、射影空間、克萊因瓶等其他閉流形作為像流形。 傳播圖 傳播圖使用網路上的多個傳播源，將節點對映為點雲。在全域性級聯模型中，傳播速度可透過閾值引數 t in 01 進行調整。對 t0 ，傳播圖等同於等距特徵對映演算法。 曲線成分分析 曲線成分分析（CCA）在輸出空間中尋找點的構型，儘可能保留原始距離，並關注輸出空間中的小距離（與薩蒙對映相反，後者關注原空間的小距離） 注意 CCA 作為一種迭代學習演算法，實際上是先關注大距離（與薩蒙對映類似），逐漸轉向小距離。若要在兩者間做出妥協，小距離資訊將覆蓋大距離資訊。 CCA 的壓力函式與右 Bregman 散度之和有關。 曲線距離分析 CDA 訓練一個自組織神經網路來擬合流形，併力求在其嵌入中保留測地距離。它基於曲線成分分析（推廣了薩蒙對映），但使用測地距離。 微分同胚降維 微分同胚降維或 Diffeomap 學習光滑的微分同胚對映，將資料轉移到低維線性子空間。此方法求解光滑的時間索引向量場，這樣以資料點為起點的向量場流將以低維線性子空間為終點，從而試圖在正、逆對映下保留逐對差。 流形對齊 流形對齊利用的假設是：相似過程產生的資料集將共享相似的底流形表示。學習從原空間到共享流形的投影，可以恢復對應關係，並可將知識在領域間轉移。大多數流形對齊技術只考慮兩個資料集，不過遮蓋奶奶可推廣到任意多的初資料集。 擴散對映 擴散對映利用熱擴散與隨機遊走（馬爾可夫鏈）之間的關係；流形上的擴散運算元類似於對圖上的函式進行操作的馬爾可夫轉移矩陣，圖的節點從流形中取樣而來。具體說，將資料集表為 mathbf X x_1x_2ldotsx_n in Omega subset mathbf RD。擴散對映的基本假設是高維資料位於 mathbf d 維流形上。令 X 表示資料集， mu 表示 X 上的資料點分佈，定義核代表 X 中點的某種相似性（affinity）。核 mathit k 具有如下性質 k xy k yx k 對稱 k xy geq 0qquad forall xy k k 是保正的 因此可將單個數據點視作圖的節點，核 k 則定義了圖上的某種親和性（affinity）。由於核對稱，圖在構造上也是對稱的。從這裡不難看出，透過元組 mathbf X mathbf k 可以構造可逆馬爾可夫鏈。這種技術在很多領域都有應用，稱作圖拉普拉斯（graph Laplacian）。 例如，圖 mathbf KX E 可由高斯核構造。 K_ij begin cases ex_i x_j2_2sigma 2 text if x_i sim x_j 0 text otherwise end cases 上式中， x_i sim x_j 表示 x_i 是 x_j 的最近鄰點。更嚴謹地說，測地距離應用來實際測量流形上的距離。由於不能獲得流形的精確結構，對於最近鄰點，測地距可用歐氏距離近似表示。 sigma 的選擇可以調節相鄰的概念：若 x_i x_j_2 gg sigma ，則 K_ij 0 ；若 x_i x_j_2 ll sigma ，則 K_ij 1 。前者意味著幾乎沒有發生擴散，後者則意味著擴散基本完成。選擇 sigma 的不同策略可參看。 要忠實表示馬爾可夫矩陣，K 必須被相應的度數矩陣 D 歸一化： P D1 K 現在 P 表示馬爾可夫鏈。 P x_ix_j 是在一個時間步內從 x_i 轉移到 x_j 的機率。同樣，在 t 時間步內從 x_i 轉移到 x_j 的機率表為 Pt x_ix_j ，其中 Pt 是矩陣 P 的 t 次冪。 馬爾可夫矩陣 P 構成了資料集 X 的某種區域性集合概念。擴散對映與主成分分析的主要區別在於，前者只考慮資料的區域性特徵，而不考慮整個資料集的相關性。 K 定義了資料集上的隨機遊走，這是說核捕捉到了資料集的某些區域性幾何特徵。馬爾可夫鏈定義了透過核值傳播的快慢方向：遊走在時間上向前傳播時，區域性幾何資訊會以與動力系統的區域性變換（由微分方程定義）相同的方式聚集起來。擴散的隱喻來自族擴散距離 D_t _t in N D_t2 xy p_t xcdot p_t ycdot2 對固定的 t 值， D_t 根據路徑連通性定義了資料集中任意兩點的距離：x 和 y 間相連的路徑越多， D_t xy 值就越小，反之亦然。由於 D_t xy 的量設計長度為 t 的所有路徑綜合，因此 D_t 比測地距更能抵禦噪聲。 D_t 在計算距離時考慮 x、y 點之間的所有關係，是比歐氏距離、甚至測地距離更好的鄰近度概念。 區域性多維標度 區域性多維標度在區域性進行多維標度，再用凸最佳化將所有小塊拼接在一起。 非線性 PCA 非線性 PCA（NLPCA）用反向傳播演算法訓練多層感知機（MLP），使其與流形相匹配。不同於只更新權重的典型 MLP，NLPCA 同時會更新權重和輸入：權重和輸入都被視作潛值。訓練後，潛輸入是觀測向量的低維表示，MLP 從低維表示對映到高維觀測空間。 資料驅動的高維縮放 資料驅動的高維縮放（DDHDS）S Lespinats M Verleysen A Giron B Fertil DDHDS a tool for visualization and exploration of highdimensional data IEEE Transactions on Neural Networks 18 5 2007 12651279 與薩蒙對映與曲線成分分析密切相關，不同之處在於：1 DDHDS 會關注原空間與輸出空間中的小距離，同時懲罰假鄰域與撕裂；2 DDHDS 透過距離分佈調整權函式，以考慮度量集中現象。 流形雕刻 流形雕刻（manifold sculpting）Gashler M and Ventura D and Martinez T Iterative Nonlinear Dimensionality Reduction with Manifold Sculpting In Platt JC and Koller D and Singer Y and Roweis S editor Advances in Neural Information Processing Systems 20 pp 513520 MIT Press Cambridge MA 2008 用分級最佳化尋找嵌入。與其他演算法類似，它也會計算 k 個最近鄰點，並試圖求出能保留區域性鄰域關係的嵌入。流形雕刻可以緩慢地將方差從高維縮放出來，同時調整低維的點，以保留其關係。若縮放率很小，則就能找到很精確的嵌入。流形雕刻與其他演算法相比，在解決部分問題時表現出更高的經驗精度，還可完善其他流形學習演算法的結果。不過，除非哦用非常慢的縮放速率，否則展開某些流形時會非常吃力。流形雕刻沒有內蘊模型。 RankVisu RankVisuLespinats S Fertil B Villemain P and Herault J Rankvisu Mapping from the neighbourhood network Neurocomputing vol 72 1315 pp 29642978 2009 設計的目的是保留鄰域的秩，而非距離，因此特別適用於對保距困難的任務。事實上，鄰域秩的資訊量比距離小（秩可從距離中推匯出來，反之則不行），因此保留鄰域秩是更容易的。 拓撲約束等距嵌入 拓撲約束等距嵌（TCIE）是一種基於濾去與歐氏度量不一致的測地線後近似測地距的演算法。TCIE 用加權最小二乘 MDS 獲得更精確的對映，只在糾正等距特徵對映用於非凸資料時產生的扭曲。TCIE 演算法首先檢測資料中可能存在的邊界點，並在計算測地距時標出不一致的測地線，以便在之後的加權壓力最大化中基於較小的權重。 均勻流形近似與投影 均勻流形近似與投影（UMAP）從外觀上看與 tSNE 很像，但它嘉定資料均勻分佈在區域性連通的黎曼流形上，且黎曼度量是區域性常或近似區域性常的。 基於近似矩陣的方法 基於近似矩陣的方法是指資料以相似性矩陣或距離矩陣的形式呈現給演算法。這些方法都屬於度量多維縮放（metric multidimensional scaling），主要差別在於如何計算近似，如等距特徵對映、區域性線性嵌入、最大方差展開、薩蒙對映（實際上不是對映）等等，都屬於度量多維縮放。 另見 流形假設 譜子流形 塔肯斯定理 惠特尼嵌入定理 生長自組織對映 GSOM 線性判別分析 彈性對映 表徵學習 逐對距離法 自組織對映 SOM 引用 閱讀更多 外部連結 Isomap Generative Topographic Mapping Mike Tippings Thesis Gaussian Process Latent Variable Model Locally Linear Embedding Relational Perspective Map Waffles is an open source C library containing implementations of LLE Manifold Sculpting and some other manifold learning algorithms Efficient Dimensionality Reduction Toolkit homepage DDHDS homepage RankVisu homepage Short review of Diffusion Maps Nonlinear PCA by autoencoder neural networks Category 維度 Category 多變數統計