8 11 例項 主成分分析

2021-08-04 16:09:21 字數 1799 閱讀 9710

主成分分析(principal components analysis,pca)是乙個簡單的機器學習演算法,可以通過基礎的線性代數知識推導。

假設在r

n 空間中我們有

m 個點

,我們希望對這些點進行有失真壓縮。有失真壓縮表示我們使用更少的記憶體,但損失一些精度去儲存這些點。我們希望損失的精度盡可能少。

一種編碼這些點的方式是用低維表示。對於每個點x(

i)∈r

n ,會有乙個對應的編碼向量c(

i)∈r

l 。如果

l 比

n小,那麼我們便使用了更少的記憶體來儲存原來的資料。我們希望找到乙個編碼函式,根據輸入返回編碼,f(

x)=c

;我們也希望找到乙個解碼函式,給定編碼重構輸入,x≈

g(f(

x))

rn。即g(

c)=d

c ,其中d∈

rn×l

是定**碼的矩陣。

目前為止所描述的問題,可能會有多個解。因為如果我們按比例地縮小所有點對應的編碼向量ci

,那麼我們只需按比例放大d:

,i,即可保持結果不變。為了使問題有唯一解,我們限制

d 中所有列向量都有單位範數。

計算這個解碼器的最優編碼可能是乙個困難的問題。為了使編碼問題簡單一些,pc

a限制d 的列向量彼此正交(注意,除非l=

n,否則嚴格意義上

d 不是乙個正交矩陣)。

為了將這個基本想法變為我們能夠實現的演算法,首先我們需要明確如何根據每乙個輸入

x得到乙個最優編碼c∗

。一種方法是最小化原始輸入向量

x 和重構向量g(

c∗)之間的距離。我們使用範數來衡量它們之間的距離。在pca演算法中,我們使用l2

範數: c∗

=arg

minc||

x−g(

c)||

2 我們可以用平方l2

範數替代l2

範數,因為兩者在相同的值

c 上取得最小值。這是因為l2

範數是非負的,並且平方運算在非負值上是單調遞增的。 c∗

=arg

minc||

x−g(

c)||

22該最小化函式可以簡化成 (x

−g(c

))t(

x−g(

c))

(式l2 範數的定義) =x

tx−x

tg(c

)−g(

c)tx

+g(c

)tg(

c)(分配率) =x

tx−2

xtg(

c)+g

(c)t

g(c)

(因為標量g(

c)tx

的轉置等於自己)

因為第一項xt

x 不依賴於

c ,所以我們可以忽略它,得到如下的優化目標: c∗

=arg

minc−2

xtg(

c)+g

(c)t

g(c)

更進一步,我們代入g(

c)的定義: c∗

=arg

minc−2

xtdc

+ctd

tdc=

argminc−

2xtd

c+ct

ilc

(矩陣d

的正交性和單位範數約束)

=arg

minc−2

xtdc

+ctc

主成分分析

主成分分析 pca 分析乙個隨機向量的中的主成分 主成分一般不是隨機向量中的某乙個分量,而是不同分量的線性組合,根據資訊理論的觀點,資訊的多少與方差有關,所以 主成分是方差最大的幾個成分 主成分分析的方法是求隨機向量的協方差矩陣 用樣本協方差矩陣代替 對於差異較大的資料,可採用相關矩陣代替協方差矩陣...

主成分分析

理論要點 1 主成分分析是一種無監督學習,因此不能用交叉驗證來檢驗誤差 2 在處理資料之前,要對資料做中心化處理 3 p太大的話,做特徵分解用svd 4 一共有min n 1,p 個主成分,因為中心化以後,rank要降一維 5 主成分的載荷向量就是協方差矩陣的特徵向量,對應特徵值最大的是第一主成分,...

主成分分析

1.概念 將一組可能存在相關性的隨機變數轉變成互不相關的隨機變數。這個概念裡有三個地方需要理解清楚。1 隨機變數的指代 在資料集中,每乙個樣本,即將資料集理解成乙個 的話,乙個樣本就是一行,則每一列就是乙個特徵,也就是乙個隨機變數,一列的所有取值就是隨機變數的所有可能取值 說的所有可能取值只針對訓練...