PCA算法及其應用
1.主成分分析(PCA)
1.主成分分析(Principal Component Analysis,PCA) 是最常用的一種降維方法,通常用於高維數據集的探索與可視化,還可以用做數據壓縮和預處理等。
2.PCA可以把具有相關性的高維變量合成為線性無關的低維變量,稱為主成分。主成分能夠盡可能保留原始數據的信息。
在介紹PCA的原理之前需要回顧涉及到的相關術語:
1.方差:
2.協方差
3.協方差矩陣
4.特征向量和特征值
方差:是各個樣本和樣本均值的差的平方和的均值,用來度量一組數據的分散程度。公式為:

協方差: 用於度量兩個變量之間的線性相關性程度,若兩個變量的協方差為0,則可認為二者線性無關。協方差矩陣則是由變量的協方差值構成的矩陣(對稱陣)。公式為:

特征向量:矩陣的特征向量是描述數據集結構的非零向量,並滿足如下公式:

2.原理
原理:矩陣的主成分就是其協方差矩陣對應的特征向量,按照對應的特征值大小進行排序,最大的特征值就是第一主成分,其次是第二主成分,以此類推。其詳細推導過程可以參見周志華老師編寫的<<機器學習>>那本書。
主成分分析----算法過程

那么我們如何使用sklearn中提供的PCA函數呢?如下所示:
3.sklearn中主成分分析
在sklearn庫中,可以使用sklearn.decomposition.PCA加載PCA進行降維,主要參數有:
1.n_components:指定主成分的個數,即降維后數據的維度。
2.svd_solver:設置特征值分解的方法,默認為:'auto',其他可選有'full','arpack','randomized'
4.PCA實現高維數據可視化

實例程序編寫:





即調用scatter函數進行數據的可視化!
5.結果展示:

