1. 程式人生 > >優達機器學習:主成分分析(PCA)

優達機器學習:主成分分析(PCA)

  • 主成分是由資料中具有最大方差的方向決定的,因為可以最大程度的保留資訊量

  • 我理解相當於降維,也就是將特徵通過降維的方式減少

  • 方差最大化相當於將所有的距離最小化,這個方差和平時理解的方差不太一樣

  • PCA可以幫助你發現數據中的隱藏特徵,比如說得到總體上有兩個因素推動房價變動,至於是什麼,要自己看資料去判斷

這裡寫圖片描述

主成分分類最大值等於訓練點數量和特徵數量的最小值

這裡寫圖片描述

PCA的特點

  • PCA將輸入特徵轉化為主成分的系統化方式
  • 這些主成分可以作為新特徵使用
  • 主成分的定義是資料中會使方差最大化的方向,將出現資訊丟失的可能性降至最低
  • 可以對主成分劃分等級,資料因特定主成分而產生的方差越大,那麼該主成分的級別越高,方差最大的主成分即為第一個主成分
  • 主成分在某種意義上是相互垂直的,第二個主成分基本不會與與第一個主成分重疊,可以將他們作為單獨的特徵對待
  • 主成分數量有限,最大值等於資料集中的輸入特徵數量

什麼時候使用PCA

  • 想要訪問隱藏的特徵,這些特徵可能隱藏顯示在你的資料圖案中
  • 降維
    • 視覺化高維資料,比如說視覺化只能看兩個特徵,但是當特徵很多的時候就用得上了
    • 懷疑資料中存在噪聲,可以幫助拋棄重要性小的特徵,去除噪聲
    • 讓演算法在少量的特徵上更有效,比如說人臉識別,可以將維度降低1/10,然後使用svm來進行訓練,之後發現被拍攝人的身份

PCA在人臉識別上的應用

PCA之所以在人臉識別上好用,主要原因
- 首先畫素很多,可能有100萬個畫素點,縮減非常重要,svm很難處理100萬
- 頭像中存在一些普遍的模式,比如說有兩個眼睛,適合PCA做主成分分析

練習:每個主成分的可釋方差

  • answer:0.19346527、0.15116846

  • 首先要下載資料集,執行程式碼,這裡要注意,資料集要放在根目錄下,也就是如果是windows系統要放在C:\Users\YourName下面,而不是放在ud120-project下面

執行後會列印資料即可看到結果,如下圖,結果就是前兩個數字

這裡寫圖片描述

練習:要使用多少個主成分?

  • could go either way

練習:F1分數與使用的主成分數

  • answer:better
  • 把[10, 15, 25, 50, 100, 250]和原來的150的分數都截了圖,如下:

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

  • 可以看出來F1分數越高,則分類效果越好

練習:維度降低與過擬合

  • 會,PC 較多時效能會下降

  • 根據上面的圖可以看出來,當250個特徵的時候明顯比100的下降了

練習:選擇主成分

主要的方法就是嘗試,直到到某一點時增加會導致下降或者不動,那說明到頭了

相關推薦

機器學習成分分析PCA

主成分是由資料中具有最大方差的方向決定的,因為可以最大程度的保留資訊量 我理解相當於降維,也就是將特徵通過降維的方式減少 方差最大化相當於將所有的距離最小化,這個方差和平時理解的方差不太一樣 PCA可以幫助你發現數據中的隱藏特徵,比如說得到總體上有兩個因素推動

python小白進階三成分分析PCA

     主成分分析(Principal Component Analysis,PCA)是最常用的一種降維方法,通常用於高維資料集的探索與視覺化,還可以用作資料壓縮和預處理等。矩陣的主成分就是其協方差矩陣對應的特徵向量,按照對應的特徵值大小進行排序,最大的特徵值就是第一主成

機器學習十三CS229ML課程筆記9——因子分析成分分析PCA、獨立成分分析ICA

1.因子分析:高維樣本點實際上是由低維樣本點經過高斯分佈、線性變換、誤差擾動生成的,因子分析是一種資料簡化技術,是一種資料的降維方法,可以從原始高維資料中,挖掘出仍然能表現眾多原始變數主要資訊的低維資料。是基於一種概率模型,使用EM演算法來估計引數。因子分析,是分析屬性們的公

[python機器學習及實踐(6)]Sklearn實現成分分析PCA

相關性 hit 變量 gray tran total 空間 mach show 1.PCA原理 主成分分析(Principal Component Analysis,PCA), 是一種統計方法。通過正交變換將一組可能存在相關性的變量轉換為一組線性不相關的變量,轉換後的這組

機器學習實戰學習筆記5——成分分析PCA

1.PCA演算法概述 1.1 PCA演算法介紹 主成分分析(Principal Component Analysis)是一種用正交變換的方法將一個可能相關變數的觀察值集合轉換成一個線性無關變數值集合的統計過程,被稱為主成分。主成分的數目小於或等於原始

機器學習】資料降維—成分分析PCA

本文程式碼推薦使用Jupyter notebook跑,這樣得到的結果更為直觀。 主成分分析(PCA) 特徵抽取通常用於提高計算效率,降低維度災難。 主成分分析(Principe component analysis,PCA):        是一種廣泛應用於不同領域的無監督

Machine Learning第八講【非監督學習】--成分分析PCA

一、Principal Component Analysis Problem Formulation(主成分分析構思) 首先來看一下PCA的基本原理: PCA會選擇投影誤差最小的一條線,由圖中可以看出,當這條線是我們所求時,投影誤差比較小,而投影誤差比較大時,一定是這條線偏離最優直線。

深入學習成分分析PCA演算法原理及其Python實現

一:引入問題   首先看一個表格,下表是某些學生的語文,數學,物理,化學成績統計:   首先,假設這些科目成績不相關,也就是說某一科目考多少分與其他科目沒有關係,那麼如何判斷三個學生的優秀程度呢?首先我們一眼就能看出來,數學,物理,化學這三門課的成績構成了這組資料的主成分(很顯然,數學作為第一主成分,

資料探勘學習------------------1-資料準備-4-成分分析PCA降維和相關係數降維

1.4資料降維 在分析多個變數時發現它們中有一定的相關性。有一種方法將多個變數綜合成少數幾個相互無關的代表性變數來代替原來的變數,這就是資料降維,可以考慮主成分分析法。 1)、主成分分析法(PCA) 1、基本思想 (1)如果將選取的第一個線性組合即第一個綜合變數記為F

成分分析PCA原理詳解轉載

增加 信息 什麽 之前 repl 神奇 cto gmail 協方差 一、PCA簡介 1. 相關背景 上完陳恩紅老師的《機器學習與知識發現》和季海波老師的《矩陣代數》兩門課之後,頗有體會。最近在做主成分分析和奇異值分解方面的項目,所以記錄一下心得體會。

【原始碼】成分分析PCA與獨立分量分析ICAMATLAB工具箱

本MATLAB工具箱包含PCA和ICA實現的多個函式,並且包括多個演示示例。 在主成分分析中,多維資料被投影到最大奇異值相對應的奇異向量上,該操作有效地將輸入訊號分解成在資料中最大方差方向上的正交分量。因此,PCA常用於維數降低的應用中,通過執行PCA產生資料的低維表示,同時,該低維表

成分分析PCA詳細講解

介紹 主成分分析(Principal Component Analysis,PCA)是一種常用的資料降維演算法,可以將高維度的資料降到低維度,並且保留原始資料中最重要的一些特徵,同時去除噪聲和部分關聯特徵,從而提高資料的處理效率,降低時間成本。 資料降維優點: 低維資

成分分析PCA原理詳解

1. 問題      真實的訓練資料總是存在各種各樣的問題: 1、 比如拿到一個汽車的樣本,裡面既有以“千米/每小時”度量的最大速度特徵,也有“英里/小時”的最大速度特徵,顯然這兩個特徵有一個多餘。 2、 拿到一個數學系的本科生期末考試成績單,裡面有三列,一列是對數學的

成分分析PCA在壓縮影象方面的應用

一、主成分分析的原理主成分分析能夠通過提取資料的主要成分,減少資料的特徵,達到資料降維的目的。具體的原理可參見之前寫的關於PCA原理的一篇文章:二、使用matlab模擬實現%% 利用PCA對影象壓縮 close all clear all clc %% 輸入 In = i

使用成分分析PCA方法對資料進行降維

我們知道當資料維度太大時,進行分類任務時會花費大量時間,因此需要進行資料降維,其中一種非常流行的降維方法叫主成分分析。 Exploratory Data Analysis 鳶尾花資料集: import numpy as np from skle

成分分析PCA-理論基礎

要解釋為什麼協方差矩陣的特徵向量可以將原始特徵對映到 k 維理想特徵,我看到的有三個理論:分別是最大方差理論、最小錯誤理論和座標軸相關度理論。這裡簡單探討前兩種,最後一種在討論PCA 意義時簡單概述。 最大方差理論 在訊號處理中認為訊號具有較大的方差

成分分析PCA的線性代數推導過程

【摘自Ian Goodfellow 《DEEP LEANRNING》一書。覺得寫得挺清楚,儲存下來學習參考使用。】 主成分分析(principal components analysis, PCA)是一個簡單的機器學習演算法,可以通過基礎的線性代數知識推導。 假設在n維的R空間中我們有 m

成分分析PCA演算法做人臉識別

詳細資料可以參考https://www.cnblogs.com/xingshansi/p/6445625.html一、概念主成分分析(PCA)是一種統計方法。通過正交變換將一組可能存在相關性的變數轉化為一組線性不相關的變數,轉換後的這組變數叫主成分。二、思想PCA的思想是將n

成分分析pca演算法原理

影象處理中對很多副圖片提取特徵時,由於特徵的維數過高而影響程式的效率,所以用到pca進行特徵降維。 那怎樣才能降低維數呢?它又用到了什麼數學方法呢? 1.協方差矩陣         假設有一個樣本集X,裡面有N個樣本,每個樣本的維度為d。即: 將這些樣本組織成樣本矩陣形

成分分析pca演算法的實現步驟及程式碼

%%%%%%%%%%%%開啟一個30行8列資料的txt檔案%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %第一步:輸入樣本矩陣%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% filename='src.txt'; fid=fopen(filename,'