線性降維-筆記(1)

1 - 線性降維

樣本在高維情形下會出現數據樣本稀疏(由於樣本不是均勻分佈在每一個維度表示的空間中),距離計算困難(歐式距離也不如人想象的那麼有效),可視化困難,容易過擬合等問題。因此不管是機器學習,仍是人類理解角度,高維都是個不喜歡的話題(固然對於低維樣本線性不可分而上升到高維線性可分的情形並非這裏指的狀況)。html

由於基於大多人類觀測和收集到的樣本,與學習任務密切相關的也許只是某些低維分佈。因此若是適當的降維,可讓樣本在所需維度上達到更密集的分佈,且距離計算問題也能緩解很多。
通常來講,想要得到低維子空間,最簡單的是對原始高維空間進行線性變換。給定\(d\)維空間中的樣本\({\bf X}=({\bf x}_1,{\bf x}_2,...,{\bf x}_N)\in R_{d \times N}\),變換後獲得\(d{'} \leq d\)維空間中的樣本:
\[\bf X' = W^TX\]
其中\({\bf W} \in R^{d\times d{'}}\)是變換矩陣,\({\bf X'}\in R^{d{'}\times N}\)是樣本在新座標空間中的表達。變換矩陣\(\bf W\)能夠當作是\(d'\)\(d\)維基向量,\({\bf x'}_i={\bf W}^T{\bf x}_i\)是第\(i\)個樣本(即\(\bf X\)中的第\(i\)個列向量)與這\(d'\)個基向量分別作內積而獲得的\(d'\)維特徵列向量。\({\bf x'}_i\)同時也能夠當作是第\(i\)\(d\)維的樣本\({\bf x}_i\)在新座標系\(\{{\bf w}_1,{\bf w}_2,...,{\bf w}_{d{'}}\}\)中的座標向量,若\({\bf w}_i\)\({\bf w}_j\)\((i\neq j)\),則新的座標系是一個正交座標系(咱們一般的\(x,y,z\)就是一個正交座標系),此時\(\bf W\)爲正交變換。顯然,新空間中的特徵是原空間中特徵的線性組合。
基於線性變換來降維的方法稱爲線性降維方法,不一樣的線性降維方法基本上就是對低維子空間的性質有不一樣要求,對降維效果的評估,就是比較降維先後學習器的性能。其中主成分分析是一種無監督的線性降維方法,線性判別分析(LDA)是一種有監督線性降維方法。app

2 - PCA

PCA是一種降維方法,其能夠用來1)可視化;2)預處理;3)建模;4)壓縮。
假設有\(N\)個樣本\(\{{\bf x}_i\}\),其中每一個樣本都是\(d\)維:\({\bf x}_i\in R^d\)。咱們的目標就是用更低維的樣本表示\(\{{\bf x}_i'\}\)來代替這些高維樣本,其中低維樣本維度爲\(d'\)\(d'<d\)
這能夠當作是一個線性變換的形式:
\[\bf { x = Wx'+b}=\sum_{\cal i=1}^{d'}\bf {w}_{\cal i}x_{\cal i}'+b \tag{2.1}\]
其中\(\bf W\)是一個\(d\times d'\)的變換矩陣;\(x_i\)爲一個低維樣本表示的列向量,\({\bf w}_i\)爲矩陣\(\bf W\)的第\(i\)個列向量。矩陣\(\bf W\)一樣能夠當作是\(d'\)個基向量即\(\bf W=[w_1,...,w_{d'}]\)。若是假定樣本獲取過程當中會混入高斯噪音,那麼該模型就是一個線性迴歸模型了,只是這裏\(\bf x'\)是一個未知的線性參數。
爲了學習這個模型,對該模型創建目標函數,這裏採用最小二乘方法:
\[arg\min_{{\bf W,b},{{\bf x}_i'}}\quad \sum_i||{\bf x}_i-({\bf Wx}_i'+{\bf b})||^2\\ subject \quad to \quad {\bf W}^T{\bf W}=\bf I \tag{2.2}\]
這裏的限制使得求得的變換矩陣式一個正交矩陣,即等同於:
\[{\bf w}_i^T{\bf w}_j=\begin{cases} 1 & i=j\\ 0 & i\neq j \end{cases}\]
其中\(\bf x'\)所在空間的座標系爲潛在座標系。具體過程以下:
1)先計算原有樣本矩陣基於樣本的均值向量:
\[{\bf b}=\frac{1}{N}\sum_i{\bf x}_i\]
2):計算原有樣本矩陣中心化後的協方差均值矩陣:
\[{\bf K}=\frac{1}{N}\sum_i({\bf x}_i-{\bf b})({\bf x}_i-{\bf b})^T\]
3):對上述矩陣進行矩陣分解,並計算其特徵值和特徵向量:
\[{\bf K}={\bf V\Lambda V^T}\]
其中\(\bf \Lambda\)是由特徵值組成的對角矩陣\({\bf \Lambda}=diag(\lambda_1,...\lambda_d)\);\(\bf V\)是對應特徵值的特徵向量,且該矩陣是正交矩陣即,\({\bf V}=[{\bf V}_1,...{\bf V}_d]\)\(\bf V^TV=I\)
對特徵值矩陣進行從大到小排序,選取足夠多精度的特徵值(即丟棄特徵值較小的)
4):用保留的特徵值對應的特徵向量組成正交矩陣\({\bf W}=[{\bf V}_1,...{\bf V}_{d'}]\)
5):從而新的樣本爲\({\bf x}_i'={\bf W}^T({\bf x}_i-{\bf b})\),\(i\in{1,2,...,N}\)機器學習

2.1 爲何選取特徵值較大的,而不是較小的

假設投影后空間的座標系爲\({\bf W} = \{{\bf w}_1,{\bf w}_2,{\bf w}_3,...{\bf w}_{d'}\}\),且其兩兩正交,且原始樣本已經進行了中心化,即均值爲0。原始樣本\(\{{\bf x}_i\}\)在新空間中投影爲\(\{{\bf x}_i'\}\),且\({x}_{ij}'={\bf w}_j^T{\bf x}_i\),是\(\{{\bf x}_i'\}\)在低維座標系下第\(j\)維的座標值。以此重構獲得\(\hat {\bf x}_i={\bf Wx}_i'=\sum_{j=1}^{d'}{ x}_{ij}'{\bf w}_j\)
基於整個訓練集,原樣本點\({\bf x}_i\)與基於新空間樣本點重構的樣本點\(\hat {\bf x}_i\)之間距離爲:
\[\begin{eqnarray}\sum_{i=1}^N\left|\left| \sum_{j=1}^{d'}x_{ij}'{\bf w}_j-{\bf x}_i\right|\right|_2^2 &=& \sum_{i=1}^N{\bf x'}_{i}^T{\bf x'}_i - 2\sum_{i=1}^N{\bf x'}_i^T{\bf W}^T{\bf x}_i+const\\ &=&-\sum_{i=1}^N{\bf x'}_i^T{\bf x'}_i+const\\ &=&-\sum_{i=1}^Ntr({\bf x'}_i{\bf x'}_i^T)+const\\ &=&-tr\left({\bf W}^T\left(\sum_{i=1}^N{\bf x}_i^T{\bf x}_i\right){\bf W}\right)+const\\ &=&-tr\left({\bf W}^T\left({\bf X}{\bf X}^T\right){\bf W}\right)+const \end{eqnarray} \tag{2.1.1}\]
由於訓練集給定,因此基於當前訓練集樣本自我相乘能夠當作是一個固定常數const。上式即PCA的目標函數。
假設當前獲得了低維空間樣本\(X'\),爲了使在低維上儘量分開,則應該使低維樣本集的方差儘量大。
投影到新空間的樣本方差爲:\(\sum_{i=1}^N{\bf x'}_i{\bf x'}_i^T\)\(\sum_{i=1}^N{\bf W}^T{\bf x}_i{\bf x}_i^T{\bf W}\)
等同於求樣本矩陣相乘後的矩陣的跡,即:
\[\max_{\bf w} \quad tr({\bf W}^T{\bf XX}^T{\bf W})\\ s.t.\quad {\bf W}^T{\bf W}={\bf I}\]
經過使用拉格朗日乘子法:
\[f(x)=tr({\bf W}^T{\bf XX}^T{\bf W})+\lambda({\bf W^TW-I})\]
由於有公式\(\frac{dtr(\bf X^TBX)}{d\bf X}=\bf BX+B^TX\),函數

將上式關於\(\bf W\)求導得:
\[2{\bf XX^TW}+2\lambda\bf W=0\]
\[{\bf XX^TW}=\lambda\bf W\]
恰好是求\(\bf XX^T\)的特徵值問題性能

3 - LDA

ps:這裏所說的LDA用來降維指的是1936年fisher的論文
決策分析是分類問題的一個生成模型方法,須要對特徵擬合一個多元高斯變量模型,正如以前說的,這在高維狀況下問題比較棘手,因此若是能將特徵從\(d\)維下降到\(d'\)維,那麼困難就能緩解一些。最簡單的線性投影方法,也就是\({\bf X'}=\bf W^TX\)。PCA是一種尋找\(\bf W\)的無監督方法,但是卻沒利用上當樣本有標籤時候的標籤信息;一種代替方法就是使用高斯條件類別密度模型(gaussian class-conditional density model).該方法的合理之處在於咱們只是計算潛在特徵(非高斯)的線性組合而已。該方法也叫作fisher的線性決策分析(FLDA).
FLDA是一種決策和生成方法的混合模型,它的缺點在於其映射後的維度\(d'<|c|-1\)這裏\(|c|\)是類別個數。例對於2類問題,那麼只能尋找一個向量\(\bf w\)來做爲變化矩陣。學習

3.1 兩類問題

對於2類問題,先分別求出不一樣類別的均值向量:
\[{\bf \mu}_1=\frac{1}{N}\sum_{i:{c_1}}{\bf x}_i;{\bf \mu}_2=\frac{1}{N}\sum_{i:{c_2}}{\bf x}_i\tag{3.1.1}\]
假設均值向量映射在某個1維座標(一條直線)後,得\(m_k={\bf w}^T{\bf \mu}_k\)且每一個樣本映射後\(x'_i={\bf w}^T{\bf x}_i\),那麼投影后新樣本點的方差正比於:
\[s_k^2=\sum_{i:c_k}(x'_i-m_k)^2\tag{3.1.2}\]
當前目標是找到可以讓在新樣本空間中類間距離最大,類內距離最小,即:
\[\max J({\bf w})=\frac{(m_2-m_1)^2}{s_1^2+s_2^2}\tag{3.1.3}\]
將上式寫成關於\(\bf w\)的式子:
\[ \begin{eqnarray}\max J({\bf w}) &=&\frac{({\bf w}^T{\bf \mu}_2-{\bf w}^T{\bf \mu}_1)({\bf w}^T{\bf \mu}_2-{\bf w}^T{\bf \mu}_1)}{\sum_{i:c_1}({\bf w}^T{\bf x}_i-{\bf w}^T{\bf \mu}_1)^2+\sum_{i:c_2}({\bf w}^T{\bf x}_i-{\bf w}^T{\bf \mu}_2)^2}\\ &=&\frac{{\bf w^T\mu}_2{\bf w^T\mu}_2-{\bf w^T\mu}_2{\bf w^T\mu}_1-{\bf w^T\mu}_1{\bf w^T\mu}_2+{\bf w^T\mu}_1{\bf w^T\mu}_1}{\sum_{i:c_1}({\bf w}^T{\bf x}_i-{\bf w}^T{\bf \mu}_1)^2+\sum_{i:c_2}({\bf w}^T{\bf x}_i-{\bf w}^T{\bf \mu}_2)^2}\\ &=&\frac{{\bf w^T\mu}_2\mu_2^T{\bf w}-{\bf w^T\mu}_2\mu_1^T{\bf w}-{\bf w^T\mu}_1\mu_2^T{\bf w}+{\bf w^T\mu}_1\mu_1^T{\bf w}}{...}\\ &=&\frac{{\bf w}^T(\mu_2\mu_2^T-\mu_1\mu_2^T-\mu_2\mu_1^T+\mu_1\mu_1^T){\bf w}}{...}\\ &=&\frac{{\bf w^TS_Bw}}{\bf w^TS_Ww} \end{eqnarray}\tag{3.1.4}\]
上式只作了分子的運算,分母運算省略了,且由於新空間是1維樣本,因此\({\bf w^T\mu}_2=({\bf w^T\mu}_2)^T=\mu_2^T{\bf w}\)
其中\(\bf S_B\)是類別之間的距離矩陣:
\({\bf S_B}=({\bf \mu_2-\mu_1})({\bf \mu_2-\mu_1})^T\tag{3.1.5}\)
\(\bf S_W\)是類間距離矩陣:
\({\bf S_W}=\sum_{i:c_1}({\bf x}_i-\mu_1)({\bf x}_i-\mu_1)^T+\sum_{i:c_2}({\bf x}_i-\mu_2)({\bf x}_i-\mu_2)^T\tag{3.1.6}\)spa

由於式子3.1.3分子分母都是標量,故而,3.1.4能夠表示成:
\[{\bf S_Bw}=\lambda {\bf S_Ww} \]
即轉換成了一個求特徵值的問題,若是\({\bf S_W}\)可逆的話,則:
\[{\bf S_W^{-1}}{\bf S_Bw}=\lambda{\bf w}\]
\({\bf S_Bw}=(\mu_2-\mu_1)(\mu_2-\mu_1)^T{\bf w}=(\mu_2-\mu_1)(m_2-m_1)\)
因此:
\[\lambda{\bf w}={\bf S_W^{-1}}(\mu_2-\mu_1)(m_2-m_1)\]
左右消去標量值,由於只關心座標系,即方向,而不關心縮放因子,即縮放多少,因此:
\[{\bf w}={\bf S_W^{-1}}(\mu_2-\mu_1)\frac{m_2-m_1}{\lambda} \]
故而最後能夠直接取:\({\bf w}={\bf S_W^{-1}}(\mu_2-\mu_1)\)htm

3.2 多類問題

由於主旨仍是爲了新空間中類間最大,類內最小的fisher準則。由於LDA的限制,\(d'\leq |c|-1\)
假定類別\(k\)的樣本均值以及全部類的樣本均值爲:
\[\mu_{c_k}=\sum_{i:c_k}\frac{1}{N_{c_k}}{\bf x}_i;\quad \mu=\sum_{i:c}\frac{1}{N_{c}}{\bf x}_i=\sum_{k=1}^{|c|}P_k\mu_k\tag{3.2.1}\]
假設\({\bf x}_i^k,{\bf x}_j^l\)分別爲類\(c_k,c_l\)類的原始\(d\)維特徵向量,\(\delta({\bf x}_i^k,{\bf x}_j^l)\)爲這兩個向量的距離,則各種特徵向量之間的平均距離爲:
\[D_d({\bf x})=\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\frac{1}{N_kN_l}\sum_{i=1}^{N_k}\sum_{j=1}^{N_l}\delta({\bf x}_i^k,{\bf x}_j^l)\tag{3.2.2}\]
其中\(|c|\)爲類別個數,\(N_k,N_l\)爲對應類別中樣本個數,\(P_k,P_l\)爲對應類別的先驗機率。
對於簡單的歐式距離來講:
\[\delta({\bf x}_i^k,{\bf x}_j^l)=({\bf x}_i^k-{\bf x}_j^l)^T({\bf x}_i^k-{\bf x}_j^l)\tag{3.2.3}\]
將3.2.3,3.2.1帶入3.2.2,得
\[\begin{eqnarray}D_d({\bf x}) &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\frac{1}{N_kN_l}\sum_{i=1}^{N_k}\sum_{j=1}^{N_l}\delta({\bf x}_i^k,{\bf x}_j^l)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\frac{1}{N_kN_l}\sum_{i=1}^{N_k}\sum_{j=1}^{N_l}\left(({\bf x}_i^k)^T{\bf x}_i^k-({\bf x}_i^k)^T{\bf x}_j^l-({\bf x}_j^l)^T{\bf x}_i^k+({\bf x}_j^l)^T{\bf x}_j^l\right)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\frac{1}{N_k}\sum_{i=1}^{N_k}\left(({\bf x}_i^k)^T{\bf x}_i^k-({\bf x}_i^k)^T\mu_l-\mu_l^T{\bf x}_i^k+\frac{1}{N_l}\sum_{j=1}^{N_l}({\bf x}_j^l)^T{\bf x}_j^l\right)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\left(\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k)^T{\bf x}_i^k-2\mu_k^T\mu_l+\frac{1}{N_l}\sum_{j=1}^{N_l}({\bf x}_j^l)^T{\bf x}_j^l\right)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\left(\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k)^T{\bf x}_i^k+\frac{1}{N_l}\sum_{j=1}^{N_l}({\bf x}_j^l)^T{\bf x}_j^l-\mu_k^T\mu_k-\mu_l^T\mu_l+\mu_k^T\mu_k+\mu_l^T\mu_l-2\mu_k^T\mu_l\right)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\left(\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k)^T{\bf x}_i^k+\frac{1}{N_l}\sum_{j=1}^{N_l}({\bf x}_j^l)^T{\bf x}_j^l-\mu_k^T\mu_k-\mu_l^T\mu_l\right)+\sum_{i=1}^{|c|}P_k(\mu_k-\mu)^T(\mu_k-\mu)\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l\left(\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k)^T{\bf x}_i^k-\mu_k^T(\frac{1}{N_k}\sum_{i=1}^{N_k}{\bf x}_i)-(\frac{1}{N_k}\sum_{i=1}^{N_k}{\bf x}_i)^T\mu_k+\mu_k^T\mu_k\right)+與k對稱的l+上面第2項\\ &=&\frac{1}{2}\sum_{k=1}^{|c|}P_k\left(\sum_{l=1}^{|c|}P_l\right)\left(\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k-\mu_k)^T({\bf x}_i^k-\mu_k)\right)+與k對稱的l+上面第3項\\ &=&\sum_{k=1}^{|c|}P_k\left[\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k-\mu_k)^T({\bf x}_i^k-\mu_k)+(\mu_k-\mu)^T(\mu_k-\mu)\right] \end{eqnarray}\]
上式中括號第二項爲第\(k\)類的均值向量與整體均值向量之間的歐式距離,用先驗機率加權平均後能夠表明各種均值向量的平均平方距離,即類間距離:
\[\sum_{i=1}^{|c|}P_k(\mu_k-\mu)^T(\mu_k-\mu)=\frac{1}{2}\sum_{k=1}^{|c|}P_k\sum_{l=1}^{|c|}P_l(\mu_k-\mu_l)^T(\mu_k-\mu_l)\]
令:
\({\bf S_B}= \sum_{i=1}^{|c|}P_k(\mu_k-\mu)(\mu_k-\mu)^T\)
${\bf S_W}=\sum_{k=1}^{|c|}P_k\left[\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k-\mu_k)({\bf x}_i^k-\mu_k)^T\right] $
那麼\(D_d({\bf x})=tr({\bf S_B}+{\bf S_W})\)
由於對於原始空間,\(\max J_d({\bf x})=\frac{tr({\bf S_B})}{tr({\bf S_W})}\)~\(\frac{|{\bf S_B}|}{|{\bf S_W}|}\)

\[\begin{eqnarray}\max J_d'({\bf x}) &=&\frac{|\sum_{i=1}^{|c|}P_k({\bf W}^T\mu_k-{\bf W}^T\mu)({\bf W}^T\mu_k-{\bf W}^T\mu)^T|}{|\sum_{k=1}^{|c|}P_k\left[\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf W}^T{\bf x}_i^k-{\bf W}^T\mu_k)({\bf W}^T{\bf x}_i^k-{\bf W}^T\mu_k)^T\right]|}\\ &=&\frac{|{\bf W}^T\sum_{i=1}^{|c|}P_k(\mu_k-\mu)(\mu_k-\mu)^T{\bf W}|}{|{\bf W}^T\sum_{k=1}^{|c|}P_k\left[\frac{1}{N_k}\sum_{i=1}^{N_k}({\bf x}_i^k-\mu_k)({\bf x}_i^k-\mu_k)^T\right]{\bf W}|}\\ &=&\frac{|{\bf W}^T{\bf S_B}{\bf W}|}{|{\bf W}^T{\bf S_W}{\bf W}|}\\ \end{eqnarray}\]
上式能夠如2類狀況同樣獲得結果:
\[{\bf S_B}{\bf W}=\lambda{\bf S_W}{\bf W}\]
\({\bf S_W}\)非奇異時,可得:
\[{\bf S_W^{-1}}{\bf S_B}{\bf W}=\lambda{\bf W}\]
即。獲得最後的解(我的認爲mlapp這部分有問題,prml這部分是對的):
\({\bf W}\)就是矩陣\({\bf S_W^{-1}}{\bf S_B}\)的前\(d'\)個特徵向量構成的矩陣(從大到小的特徵值排序)blog

ps:矩陣的秩小於等於各個相加矩陣的秩的和,因此一共\(|c|\)類,那麼\({\bf S_B}\)的秩最多爲\(|c|-1\)(第\(|c|\)個矩陣能夠經過前面矩陣線性表示出來)。排序

參考資料:
[] 周志華 機器學習
[] Computer Science Department University of Toronto. Machine Learning and Data Mining Lecture Notes
[] Machine learning A Probabilistic Perspective
[] 邊肇祺,模式識別第二版
[] http://www.cnblogs.com/jerrylead/archive/2011/04/21/2024384.html [] Introduction to Statistical Pattern Recognition 2nd ed. - K. Fukunaga p454 [] prml p192

相關文章
相關標籤/搜索