人工智能之PCA算法
PCA算法本質:
本文引用地址:http://m.butianyuan.cn/article/201806/381803.htmPCA算法本質就是找一些投影方向,使得數(shù)據(jù)在這些投影方向上的方差最大,而且這些投影方向是相互正交的。這其實就是找新的正交基的過程,計算原始數(shù)據(jù)在這些正交基上投影的方差,方差越大,就說明在對應正交基上包含了更多的信息量。原始數(shù)據(jù)協(xié)方差矩陣的特征值越大,對應的方差越大,在對應的特征向量上投影的信息量就越大。反之,如果特征值較小,則說明數(shù)據(jù)在這些特征向量上投影的信息量很小,可以將小特征值對應方向的數(shù)據(jù)刪除,從而達到了降維的目的。
PCA把可能具有相關性的高維變量合成線性無關的低維變量,稱為主成分( principal components)。新的低維數(shù)據(jù)集會盡可能保留原始數(shù)據(jù)的變量。
簡而言之,PCA本質上是將方差最大的方向作為主要特征,并且在各個正交方向上將數(shù)據(jù)“離相關”,也就是讓它們在不同正交方向上沒有相關性。
PCA算法中術語:
1、樣本“信息量”
樣本的“信息量”指的是樣本在特征方向上投影的方差。方差越大,則樣本在該特征上的差異就越大,因此該特征就越重要。在分類問題里,樣本的方差越大,越容易將不同類別的樣本區(qū)分開。
2、方差
希望投影后投影值盡可能分散,而這種分散程度,可以用數(shù)學上的方差來表述。在統(tǒng)計描述中,方差用來計算每一個變量(觀察值)與總體均數(shù)之間的差異。此處,一個字段的方差可以看做是每個元素與字段均值的差的平方和的均值,即:
3、協(xié)方差
對于二維降成一維的問題來說,找到使得方差最大的方向就可以了。但是對于更高維的問題,需要用到協(xié)方差來表示其相關性。即:
PCA理論基礎:
PCA理論基礎如下:
1)最大方差理論。
2)最小錯誤理論。
3)坐標軸相關度理論。
PCA算法流程:
1)去平均值,即每一位特征減去各自的平均值;
2)計算協(xié)方差矩陣;
3)計算協(xié)方差矩陣的特征值與特征向量;
4)對特征值從大到小排序;
5)保留最大的個特征向量;
6)將數(shù)據(jù)轉換到個特征向量構建的新空間中。
PCA降維準則:
1) 最近重構性:樣本集中所有點,重構后的點距離原來的點的誤差之和最小。
2) 最大可分性:樣本在低維空間的投影盡可能分開。
PCA算法優(yōu)點:
1)使得數(shù)據(jù)集更易使用;
2)降低算法的計算開銷;
3)去除噪聲;
4)使得結果容易理解;
5)完全無參數(shù)限制。
PCA算法缺點:
1) 如果用戶對觀測對象有一定的先驗知識,掌握了數(shù)據(jù)的一些特征,卻無法通過參數(shù)化等方法對處理過程進行干預,可能會得不到預期的效果,效率也不高;
2) 特征值分解有一些局限性,比如變換的矩陣必須是方陣;
3) 在非高斯分布情況下,PCA方法得出的主元可能并不是最優(yōu)的。
PCA算法應用:
PCA算法已經(jīng)被廣泛的應用于高維數(shù)據(jù)集的探索與可視化,還可以用于數(shù)據(jù)壓縮,數(shù)據(jù)預處理等領域。在機器學習當中應用很廣,比如圖像,語音,通信的分析處理。PCA算法最主要的用途在于“降維”,去除掉數(shù)據(jù)的一些冗余信息和噪聲,使數(shù)據(jù)變得更加簡單高效,提高其他機器學習任務的計算效率。
結語:
PCA是一種常用的數(shù)據(jù)分析方法。PCA通過線性變換將原始數(shù)據(jù)變換為一組各維度線性無關的表示,可用于識別和提取數(shù)據(jù)的主要特征分量,通過將數(shù)據(jù)坐標軸旋轉到數(shù)據(jù)角度上那些最重要的方向(方差最大);然后通過特征值分析,確定出需要保留的主成分個數(shù),舍棄其他非主成分,從而實現(xiàn)數(shù)據(jù)的降維。降維使數(shù)據(jù)變得更加簡單高效,從而實現(xiàn)提升數(shù)據(jù)處理速度的目的,節(jié)省大量的時間和成本。降維也成為了應用非常廣泛的數(shù)據(jù)預處理方法。PCA算法已經(jīng)被廣泛的應用于高維數(shù)據(jù)集的探索與可視化,還可以用于數(shù)據(jù)壓縮,數(shù)據(jù)預處理,圖像,語音,通信的分析處理等領域。
評論