PCA·1——主成分分析 . 主成分分析 ( Principal Component Analysis , PCA )是一種掌握事物主要矛盾的統計分析方法,它可以從多元事物中解析出主要影響因素,揭示事物的本質,簡化複雜的問題。計算主成分的目的是將高維資料投影到較低維空間。給定 n 個變數的 m 個觀察值,形成一個 n ′ m 的資料矩陣, n 通常比較大。對於一個由多個變數描述的複雜事物,人們難以認識,那麼是否可以抓住事物主要方面進行重點分析呢?如果事物的主要方面剛好體現在幾個主要變數上,我們只需要將這幾個變數分離出來,進行詳細分析。但是,在一般情況下,並不能直接找出這樣的關鍵變數。這時我們可以用原有變數的線性組合來表示事物的主要方面, PCA 就是這樣一種分析方法。 PCA 主要 用於資料降維,對於一系列例子的特徵組成的多維向量,多維向量裡的某些元素本身沒有區分性,比如某個元素在所有的例子中都為1,或者與1差距不大,那麼這個元素本身就沒有區分性,用它做特徵來區分,貢獻會非常小。所以我們的目的是找那些變化大的元素,即方差大的那些維,而去除掉那些變化不大的維,從而使特徵留下的都是“精品”,而且計算量也變小了。 對於一個k維的特徵來說,相當於它的每一維特徵與其他維都是正交的(相當於在多維座標系中,座標軸都是垂直的),那麼我們可以變化這些維的座標系,從而使這個特徵在某些維上方差大,而在某些維上方差很小。例如,一個45度傾斜的橢圓,在第一座標系,如果按照x,y座標來投影,這些點的x和y的屬性很難用於區分他們,因為他們在x,y軸上座標變化的方差都差不多,我們無法根據這個點的某個x屬性來判斷這個點是哪個,而如果將座標軸旋轉,以橢圓長軸為x軸,則橢圓在長軸上的分佈比較長,方差大,而在短軸上的分佈短,方差小,所以可以考慮只保留這些點的長軸屬性,來區分橢圓上的點,這樣,區分性比x,y軸的方法要好! 所以我們的做法就是求得一個k維特徵的投影矩陣,這個投影矩陣可以將特徵從高維降到低維。投影矩陣也可以叫做變換矩陣。新的低維特徵必須每個維都正交,特徵向量都是正交的。透過求樣本矩陣的協方差矩陣,然後求出協方差矩陣的特徵向量,這些特徵向量就可以構成這個投影矩陣了。特徵向量的選擇取決於協方差矩陣的特徵值的大小。 舉一個例子: 對於一個訓練集,100個物件模板,特徵是10維,那麼它可以建立一個10*100的矩陣,作為樣本。求這個樣本的協方差矩陣,得到一個10*10的協方差矩陣,然後求出這個協方差矩陣的特徵值和特徵向量,應該有10個特徵值和特徵向量,我們根據特徵值的大小,取前四個特徵值所對應的特徵向量,構成一個10*4的矩陣,這個矩陣就是我們要求的特徵矩陣,100*10的樣本矩陣乘以這個10*4的特徵矩陣,就得到了一個100*4的新的降維之後的樣本矩陣,每個特徵的維數下降了。 當給定一個測試的特徵集之後,比如1*10維的特徵,乘以上面得到的10*4的特徵矩陣,便可以得到一個1*4的特徵,用這個特徵去分類。 所以做PCA實際上是求得這個投影矩陣,用高維的特徵乘以這個投影矩陣,便可以將高維特徵的維數下降到指定的維數。 PCA 的目標是尋找 r ( r<n )個新變數,使它們反映事物的主要特徵,壓縮原有資料矩陣的規模。每個新變數是原有變數的線性組合,體現原有變數的綜合效果,具有一定的實際含義。這 r 個新變數稱為“主成分”,它們可以在很大程度上反映原來 n 個變數的影響,並且這些新變數是互不相關的,也是正交的。透過主成分分析,壓縮資料空間,將多元資料的特徵在低維空間裡直觀地表示出來。例如,將多個時間點、多個實驗條件下的基因表達譜資料( N 維)表示為 3 維空間中的一個點,即將資料的維數從 RN 降到 R3 。 在進行基因表達資料分析時,一個重要問題是確定每個實驗資料是否是獨立的,如果每次實驗資料之間不是獨立的,則會影響基因表達資料分析結果的準確性。對於利用基因晶片所檢測到的基因表達資料,如果用 PCA 方法進行分析,可以將各個基因作為變數,也可以將實驗條件作為變數。當將基因作為變數時,透過分析確定一組“主要基因元素”,它們能夠很好地說明基因的特徵,解釋實驗現象;當將實驗條件作為變數時,透過分析確定一組“主要實驗因素”,它們能夠很好地刻畫實驗條件的特徵,解釋基因的行為。下面著重考慮以實驗條件作為變數的 PCA 分析方法。假設將資料的維數從 R N 降到 R 3 ,具體的 PCA 分析步驟如下: (1) 第一步計算矩陣 X 的樣本的協方差矩陣 S : (2) 第二步計算協方差矩陣S的本徵向量 e1,e2,…,eN的本徵值 , i = 1,2,…,N 。本徵值按大到小排序: ; (3)第三步投影資料到本徵矢張成的空間之中,這些本徵矢相應的本徵值為 。現在資料可以在三維空間中展示為雲狀的點集。 對於 PCA ,確定新變數的個數 r 是一個兩難的問題。我們的目標是減小 r ,如果 r 小,則資料的維數低,便於分析,同時也降低了噪聲,但可能丟失一些有用的資訊。究竟如何確定 r 呢?這需要進一步分析每個主元素對資訊的貢獻。 貢獻率表示所定義的主成分在整個資料分析中承擔的主要意義佔多大的比重,當取前 r 個主成分來代替原來全部變數時,累計貢獻率的大小反應了這種取代的可靠性,累計貢獻率越大,可靠性越大;反之,則可靠性越小。一般要求累計貢獻率達到 70% 以上。 經過 PCA 分析,一個多變數的複雜問題被簡化為低維空間的簡單問題。可以利用這種簡化方法進行作圖,形象地表示和分析複雜問題。在分析基因表達資料時,可以針對基因作圖,也可以針對實驗條件作圖。前者稱為 Q 分析,後者稱為 R 分析。
PCA·1——主成分分析 . 主成分分析 ( Principal Component Analysis , PCA )是一種掌握事物主要矛盾的統計分析方法,它可以從多元事物中解析出主要影響因素,揭示事物的本質,簡化複雜的問題。計算主成分的目的是將高維資料投影到較低維空間。給定 n 個變數的 m 個觀察值,形成一個 n ′ m 的資料矩陣, n 通常比較大。對於一個由多個變數描述的複雜事物,人們難以認識,那麼是否可以抓住事物主要方面進行重點分析呢?如果事物的主要方面剛好體現在幾個主要變數上,我們只需要將這幾個變數分離出來,進行詳細分析。但是,在一般情況下,並不能直接找出這樣的關鍵變數。這時我們可以用原有變數的線性組合來表示事物的主要方面, PCA 就是這樣一種分析方法。 PCA 主要 用於資料降維,對於一系列例子的特徵組成的多維向量,多維向量裡的某些元素本身沒有區分性,比如某個元素在所有的例子中都為1,或者與1差距不大,那麼這個元素本身就沒有區分性,用它做特徵來區分,貢獻會非常小。所以我們的目的是找那些變化大的元素,即方差大的那些維,而去除掉那些變化不大的維,從而使特徵留下的都是“精品”,而且計算量也變小了。 對於一個k維的特徵來說,相當於它的每一維特徵與其他維都是正交的(相當於在多維座標系中,座標軸都是垂直的),那麼我們可以變化這些維的座標系,從而使這個特徵在某些維上方差大,而在某些維上方差很小。例如,一個45度傾斜的橢圓,在第一座標系,如果按照x,y座標來投影,這些點的x和y的屬性很難用於區分他們,因為他們在x,y軸上座標變化的方差都差不多,我們無法根據這個點的某個x屬性來判斷這個點是哪個,而如果將座標軸旋轉,以橢圓長軸為x軸,則橢圓在長軸上的分佈比較長,方差大,而在短軸上的分佈短,方差小,所以可以考慮只保留這些點的長軸屬性,來區分橢圓上的點,這樣,區分性比x,y軸的方法要好! 所以我們的做法就是求得一個k維特徵的投影矩陣,這個投影矩陣可以將特徵從高維降到低維。投影矩陣也可以叫做變換矩陣。新的低維特徵必須每個維都正交,特徵向量都是正交的。透過求樣本矩陣的協方差矩陣,然後求出協方差矩陣的特徵向量,這些特徵向量就可以構成這個投影矩陣了。特徵向量的選擇取決於協方差矩陣的特徵值的大小。 舉一個例子: 對於一個訓練集,100個物件模板,特徵是10維,那麼它可以建立一個10*100的矩陣,作為樣本。求這個樣本的協方差矩陣,得到一個10*10的協方差矩陣,然後求出這個協方差矩陣的特徵值和特徵向量,應該有10個特徵值和特徵向量,我們根據特徵值的大小,取前四個特徵值所對應的特徵向量,構成一個10*4的矩陣,這個矩陣就是我們要求的特徵矩陣,100*10的樣本矩陣乘以這個10*4的特徵矩陣,就得到了一個100*4的新的降維之後的樣本矩陣,每個特徵的維數下降了。 當給定一個測試的特徵集之後,比如1*10維的特徵,乘以上面得到的10*4的特徵矩陣,便可以得到一個1*4的特徵,用這個特徵去分類。 所以做PCA實際上是求得這個投影矩陣,用高維的特徵乘以這個投影矩陣,便可以將高維特徵的維數下降到指定的維數。 PCA 的目標是尋找 r ( r<n )個新變數,使它們反映事物的主要特徵,壓縮原有資料矩陣的規模。每個新變數是原有變數的線性組合,體現原有變數的綜合效果,具有一定的實際含義。這 r 個新變數稱為“主成分”,它們可以在很大程度上反映原來 n 個變數的影響,並且這些新變數是互不相關的,也是正交的。透過主成分分析,壓縮資料空間,將多元資料的特徵在低維空間裡直觀地表示出來。例如,將多個時間點、多個實驗條件下的基因表達譜資料( N 維)表示為 3 維空間中的一個點,即將資料的維數從 RN 降到 R3 。 在進行基因表達資料分析時,一個重要問題是確定每個實驗資料是否是獨立的,如果每次實驗資料之間不是獨立的,則會影響基因表達資料分析結果的準確性。對於利用基因晶片所檢測到的基因表達資料,如果用 PCA 方法進行分析,可以將各個基因作為變數,也可以將實驗條件作為變數。當將基因作為變數時,透過分析確定一組“主要基因元素”,它們能夠很好地說明基因的特徵,解釋實驗現象;當將實驗條件作為變數時,透過分析確定一組“主要實驗因素”,它們能夠很好地刻畫實驗條件的特徵,解釋基因的行為。下面著重考慮以實驗條件作為變數的 PCA 分析方法。假設將資料的維數從 R N 降到 R 3 ,具體的 PCA 分析步驟如下: (1) 第一步計算矩陣 X 的樣本的協方差矩陣 S : (2) 第二步計算協方差矩陣S的本徵向量 e1,e2,…,eN的本徵值 , i = 1,2,…,N 。本徵值按大到小排序: ; (3)第三步投影資料到本徵矢張成的空間之中,這些本徵矢相應的本徵值為 。現在資料可以在三維空間中展示為雲狀的點集。 對於 PCA ,確定新變數的個數 r 是一個兩難的問題。我們的目標是減小 r ,如果 r 小,則資料的維數低,便於分析,同時也降低了噪聲,但可能丟失一些有用的資訊。究竟如何確定 r 呢?這需要進一步分析每個主元素對資訊的貢獻。 貢獻率表示所定義的主成分在整個資料分析中承擔的主要意義佔多大的比重,當取前 r 個主成分來代替原來全部變數時,累計貢獻率的大小反應了這種取代的可靠性,累計貢獻率越大,可靠性越大;反之,則可靠性越小。一般要求累計貢獻率達到 70% 以上。 經過 PCA 分析,一個多變數的複雜問題被簡化為低維空間的簡單問題。可以利用這種簡化方法進行作圖,形象地表示和分析複雜問題。在分析基因表達資料時,可以針對基因作圖,也可以針對實驗條件作圖。前者稱為 Q 分析,後者稱為 R 分析。