1. 程式人生 > >( 魯棒性主成分分析)Robust PCA

( 魯棒性主成分分析)Robust PCA

很久很久沒有寫學習筆記了,現在記錄一個老知識。

主成分分析,這種方法可以有效的找出資料中最“主要”的元素和結構,去除噪音和冗餘,將原有的複雜資料降維,揭示隱藏在複雜資料背後的簡單結構。我們知道,最簡單的主成分分析方法就是PCA了。從線性代數的角度看,PCA的目標就是使用另一組基去重新描述得到的資料空間。希望在這組新的基下,能儘量揭示原有的資料間的關係。這個維度即最重要的“主元”。PCA的目標就是找到這樣的“主元”,最大程度的去除冗餘和噪音的干擾。

魯棒主成分分析(Robust PCA)考慮的是這樣一個問題:一般我們的資料矩陣X會包含結構資訊,也包含噪聲。那麼我們可以將這個矩陣分解為兩個矩陣相加,一個是低秩的(由於內部有一定的結構資訊,造成各行或列間是線性相關的),另一個是稀疏的(由於含有噪聲,而噪聲是稀疏的),則魯棒主成分分析可以寫成以下的優化問題:

這裡寫圖片描述

與經典PCA問題一樣,魯棒PCA本質上也是尋找資料在低維空間上的最佳投影問題。對於低秩資料觀測矩陣X,假如X受到隨機(稀疏)噪聲的影響,則X的低秩性就會破壞,使X變成滿秩的。所以我們就需要將X分解成包含其真實結構的低秩矩陣和稀疏噪聲矩陣之和。找到了低秩矩陣,實際上就找到了資料的本質低維空間。那有了PCA,為什麼還有這個Robust PCA呢?Robust在哪?因為PCA假設我們的資料的噪聲是高斯的,對於大的噪聲或者嚴重的離群點,PCA會被它影響,導致無法正常工作。而Robust PCA則不存在這個假設。它只是假設它的噪聲是稀疏的,而不管噪聲的強弱如何。

由於rank和L0範數在優化上存在非凸和非光滑特性,所以我們一般將它轉換成求解以下一個鬆弛的凸優化問題:

這裡寫圖片描述

說個應用吧。考慮同一副人臉的多幅影象,如果將每一副人臉影象看成是一個行向量,並將這些向量組成一個矩陣的話,那麼可以肯定,理論上,這個矩陣應當是低秩的。但是,由於在實際操作中,每幅影象會受到一定程度的影響,例如遮擋,噪聲,光照變化,平移等。這些干擾因素的作用可以看做是一個噪聲矩陣的作用。所以我們可以把我們的同一個人臉的多個不同情況下的圖片各自拉長一列,然後擺成一個矩陣,對這個矩陣進行低秩和稀疏的分解,就可以得到乾淨的人臉影象(低秩矩陣)和噪聲的矩陣了(稀疏矩陣),例如光照,遮擋等等。至於這個的用途,你懂得。

這裡寫圖片描述

This website provides MATLAB packages to solve the RPCA optimization problem by different methods. All of the codes are Copyright 2009 Perception and Decision Lab, University of Illinois at Urbana Champaign, and Microsoft Research Asia, Beijing. (For more information:

http://perception.csl.illinois.edu/matrix-rank/sample_code.html)

相關推薦

成分分析Robust PCA

很久很久沒有寫學習筆記了,現在記錄一個老知識。 主成分分析,這種方法可以有效的找出資料中最“主要”的元素和結構,去除噪音和冗餘,將原有的複雜資料降維,揭示隱藏在複雜資料背後的簡單結構。我們知道,最簡單的主成分分析方法就是PCA了。從線性代數的角度看,PCA的目

從矩陣matrix角度討論PCAPrincipal Component Analysis 成分分析、SVDSingular Value Decomposition 奇異值分解相關原理

0. 引言 本文主要的目的在於討論PAC降維和SVD特徵提取原理,圍繞這一主題,在文章的開頭從涉及的相關矩陣原理切入,逐步深入討論,希望能夠學習這一領域問題的讀者朋友有幫助。 這裡推薦Mit的Gilbert Strang教授的線性代數課程,講的非常好,循循善誘,深入淺出。 Relevant Link:&

PCA 成分分析詳解 寫給初學者 結合matlab轉載

整數 變量 行為 保持 sum osc 入參 函數 data 一、簡介 PCA(Principal Components Analysis)即主成分分析,是圖像處理中經常用到的降維方法,大家知道,我們在處理有關數字圖像處理方面的問題時,比如經常用的圖像的查詢

淺談PCA成分分析線性降維演算法用法

sklearn.decomposition.PCA(n_components = None, copy = True, whiten = False) n_components表示需要保留的主成分個數,即需要降低到幾維;若n_components=1,則表

Principal Component Analysis成分分析

PCA原理: 通常情況下,在收集資料集時會有很多的特徵,這代表著資料是高冗餘的表示,但是對於某個工程來說其實可能並不需要那麼多的特徵。所以就需要給資料進行降維(Dimensionality Reduction)。降維可以簡化資料,使資料集更易使用,降低時間開銷,而且能減少一部分

PCA演算法成分分析

寫在前面 Principle Component Analysis 顧名思義,是通過分析向量空間的主成分,將主成分提取出來,不重要的成分略去,從而達到降維壓縮資訊的目的。 那什麼才是主成分呢?大家應該知道,一個空間會有自己的一組基向量,空間中的任何一個向量都

PCA成分分析 降維演算法詳解 和程式碼

1. 前言  PCA : principal component analysis ( 主成分分析) 最近發現我的一篇關於PCA演算法總結以及個人理解的部落格的訪問量比較高, 剛好目前又重新學習了一下PCA (主成分分析) 降維演算法, 所以打算把目前掌握的做個全面的

機器學習實戰——PCA成分分析

本章關於PCA的程式碼雖少,但涉及到的知識卻很多,由於數學知識比較淺薄,所以在看這章時提前查詢資料複習了很多的概率論和統計學知識和python基礎知識,這裡記錄的很多都是關於PCA的相關知識或理論(例如:特徵向量、協方差矩陣等),由於部分知識涉及較多,講的有點詳細所以文章篇幅

PCA成分分析方法資料降維、重構和人臉識別

本文使用matlab採用PCA完成對資料的降維、重構和人臉識別。 我眼中的PCA: 資料的維數過高,處理起來耗時又費力,於是就在想我能不能只處理部分維數,並且得到的結果與全部維數的結果一致。噹噹噹,PCA就出爐了。簡單來說,就是一個圖片有2000個特徵維度,而實際上只有其

R語言 PCA(成分分析

1、關鍵點 綜述:主成分分析 因子分析 典型相關分析,三種方法的共同點主要是用來對資料降維處理的從資料中提取某些公共部分,然後對這些公共部分進行分析和處理。 #主成分分析 是將多指標化為少數幾個綜合指標的一種統計分析方法 主成分分析是一種通過降維技術把多個變數化成少數幾個主成分的方法,這些主成分能夠反映原

【機器學習】成分分析PCAPrincipal components analysis

大小 限制 總結 情況 pca 空間 會有 ges nal 1. 問題 真實的訓練數據總是存在各種各樣的問題:  1、 比如拿到一個汽車的樣本,裏面既有以“千米/每小時”度量的最大速度特征,也有“英裏/小時”的最大速度特征,

成分分析PCA原理詳解轉載

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

解釋一下核成分分析(Kernel Principal Component Analysis, KPCA)的公式推導過程轉載

線性不可分 itl 專註 out center forest 測試 重要 原因 KPCA,中文名稱”核主成分分析“,是對PCA算法的非線性擴展,言外之意,PCA是線性的,其對於非線性數據往往顯得無能為力,例如,不同人之間的人臉圖像,肯定存在非線性關系,自己做的基於ORL數據

數據科學學習手劄20成分分析原理推導&Python自編函數實現

encoding 處理 enter png ces pen pos 資料 font 主成分分析(principal component analysis,簡稱PCA)是一種經典且簡單的機器學習算法,其主要目的是用較少的變量去解釋原來資料中的大部分變異,期望能將現有的眾多相關

【轉載】成分分析PCA

差異 投影 3D 方式 分享 alt 訓練 矩陣 9.png https://www.jisilu.cn/question/252942 進行維數約減(Dimensionality Reduction),目前最常用的算法是主成分分析法 (Principal Componet

成分分析和因子分析未完成

svd分解 主成分分析 http src inf 因子分析 分解 spa span 並且SVD分解也適用於一般的矩陣。 主成分分析和因子分析(未完成)

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

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

對圖像進行成分分析PCV.tools.pca.pca

div lis 完成 lose 投影 color axis 分類 排序 1 引言   1.1 維度災難     分類為例:如最近鄰分類方法(基本思想:以最近的格子投票分類)     問題:當數據維度增大,分類空間爆炸增長。如圖1所示,                  

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

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

成分分析PCA詳細講解

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