基於Spark的機器學習實踐 (十) - 降維

經過講解PCA算法的原理,使你們明白降維算法的大體原理,以及可以實現怎麼樣的功能。結合應用降維算法在分類算法使用以前進行預處理的實踐,幫助你們體會算法的做用。git

0 相關源碼

1 PCA算法及原理概述

1.1 何爲降維?

◆ 從高維度變爲低維度的過程就是降維github

◆ 例如拍照就是把處在三維空間中的人或物從轉換到做爲二 維平面的 照片中算法

◆ 降維有線性的、也有非線性的方法。在機器學習中能夠簡化運算,減小特徵量機器學習

1.2 PCA算法介紹

◆ PCA算法是一種經常使用的線性降維算法,算法相似於"投影」學習

◆ 降維簡化了數據集,故能夠視爲一個壓縮過程,在壓縮過程當中可能;會有信息丟失cdn

◆ PCA除能夠用來精簡特徵,還能夠應用在圖像處理中 例如基於PCA算法的特徵臉法,它能夠用來人臉識別blog

1.3 PCA算法原理簡介

◆ PCA是基於K-L變換實現的一種算法圖片

◆ PCA算法在實現上用到了協方差矩陣,以及矩陣的特徵分解get

◆ 基本主要內容在於求出協方差矩陣,而後求協方差矩陣的特徵值與特徵向量源碼

1.4 PCA算法步驟

◆ 輸入n行m列的矩陣X ,表明m條n維數據

◆ 將矩陣X的每一行進行零均值化處理

◆ 求出X的協方差矩陣C

◆ 求出協方差矩陣C的特徵值 與特徵向量

◆ 將特徵向量按照特徵值的大小從上至下依次排列,取前k行,做爲矩陣P

◆ 求出P與X矩陣叉乘的結果,即爲降維值k維的m條數據

2 實戰PCA算法實現降維

  • 代碼
  • 特徵列降維成3個

Spark機器學習實踐系列

X 聯繫我

圖片標題

Java交流羣

博客

知乎

Github

相關文章
相關標籤/搜索