在分析複雜的多變量資料集時,降低次元往往是必要的,因為這樣的資料集總是以高維形式呈現。是以,舉例來說,從大量變量來模組化的問題和基于定性資料多元分析的資料挖掘任務。同樣,有很多方法可以用來對定性資料進行資料降維。
降低次元的目标就是通過兩個或者多個比原先矩陣小很多的矩陣來取代大型矩陣,但原始矩陣可以被近似重構。通常是選取這些小矩陣的乘積來重構原始的矩陣,這一般會損失一些次要資訊。
一個矩陣的特征向量是指該矩陣(下述方程中的a)乘以該特征向量(下述方程中的v)的結果為一個常數乘以該特征向量。這個常數就是關于該特征向量的特征值。一個矩陣可能有好幾個特征向量。
av=λv
一個特征對就是特征向量及其特征值,也就是上式中的(v, λ)。
用于降維的主成分分析(principal component analysis,pca)技術将多元空間中的點集所構成的資料視為一個矩陣,其中行對應于點,列對應于次元。
該矩陣與其轉置的乘積具有特征向量和特征值,其主特征向量可以看作空間中的方向,且沿着該方向,點排成最佳的直線。第二特征向量表示的方向使得源于主特征向量的偏差在該方向上是最大的。
主成分分析降維是通過最小化表示矩陣中給定列數的均方根誤差來近似資料,用其少數的特征向量來表示矩陣中的點。
一個矩陣的奇異值分解(singular value decomposition,svd)由以下3個矩陣構成:
u
Σ
v
u和v是列正交的,其列向量是正交的且它們的長度為1。Σ是一個對角矩陣,其對角線上的值稱為奇異值。原始矩陣等于u、Σ和v的轉置的乘積。
當連接配接原始矩陣的行和列的概念較少時,奇異值分解是有用的。
當矩陣u和v通常與原始矩陣一樣大時,采用奇異值分解降維。為了使用較少列的u和v,删除u、v和Σ中與最小奇異值對應的列。這樣根據修正後的u、Σ和v重構原始矩陣時就最小化了誤差。
cur分解旨在将一個稀疏矩陣分解成更小的稀疏矩陣,這些小矩陣的乘積近似于原始矩陣。
cur從一個給定的稀疏矩陣中選擇一組列構成矩陣c和一組行構成矩陣r,c和r的作用就相當于奇異值分解中的u和v?t。行與列是根據一個分布随機選擇的,該分布取決于元素平方和的平方根。在矩陣c和r之間有一個方陣稱為u,它是由所選擇的行與列的交集的僞逆(pseudo-inverse)所構造出來的。