通過講解PCA算法的原理,使大家明白降維算法的大致原理,以及能夠實現怎麼樣的功能。結合應用降維算法在分類算法使用之前進行預處理的實踐,幫助大家體會算法的作用。
0 相關源碼
1 PCA算法及原理概述
1.1 何爲降維?
◆ 從高維度變爲低維度的過程就是降維
◆ 例如拍照就是把處在三維空間中的人或物從轉換到作爲二 維平面的
照片中
◆ 降維有線性的、也有非線性的方法。在機器學習中可以簡化運算,減少特徵量
1.2 PCA算法介紹
◆ PCA算法是一種常用的線性降維算法,算法類似於"投影”
◆ 降維簡化了數據集,故可以視爲一個壓縮過程,在壓縮過程中可能;會有信息丟失
◆ PCA除可以用來精簡特徵,還可以應用在圖像處理中
例如基於PCA算法的特徵臉法,它可以用來人臉識別
1.3 PCA算法原理簡介
◆ PCA是基於K-L變換實現的一種算法
◆ PCA算法在實現上用到了協方差矩陣,以及矩陣的特徵分解
◆ 基本主要內容在於求出協方差矩陣,然後求協方差矩陣的特徵值與特徵向量
1.4 PCA算法步驟
◆ 輸入n行m列的矩陣X ,代表m條n維數據
◆ 將矩陣X的每一行進行零均值化處理
◆ 求出X的協方差矩陣C
◆ 求出協方差矩陣C的特徵值 與特徵向量
◆ 將特徵向量按照特徵值的大小從上至下依次排列,取前k行,作爲矩陣P
◆ 求出P與X矩陣叉乘的結果,即爲降維值k維的m條數據
2 實戰PCA算法實現降維
- 代碼
- 特徵列降維成3個
Spark機器學習實踐系列
- 基於Spark的機器學習實踐 (一) - 初識機器學習
- 基於Spark的機器學習實踐 (二) - 初識MLlib
- 基於Spark的機器學習實踐 (三) - 實戰環境搭建
- 基於Spark的機器學習實踐 (四) - 數據可視化
- 基於Spark的機器學習實踐 (六) - 基礎統計模塊
- 基於Spark的機器學習實踐 (七) - 迴歸算法
- 基於Spark的機器學習實踐 (八) - 分類算法
- 基於Spark的機器學習實踐 (九) - 聚類算法
- 基於Spark的機器學習實踐 (十) - 降維算法
X 聯繫我