以前看到過不少次奇異值分解這個概念,但我確實沒有學過。大學線性代數課教的就是坨屎,我也沒怎麼去上課,後來查了點資料算是搞清楚了,如今寫點東西總結一下。spa
奇異值分解,就是把一個矩陣拆成一組矩陣之和。在數學裏面,因式分解,泰勒展開,傅里葉展開,特徵值分解,奇異值分解都是這個路數。就是把當前數據表示成一組某種意義下互相獨立的數據疊加的形式。目的在於簡化計算處理或捨棄次要信息。orm
數學表達:或blog
其中係數是每一項的奇異值,u,v是列向量,能夠發現每一項的都是秩爲一的矩陣,咱們人爲假定。跟矩陣特徵值分解在形式上仍是有很大類似之處的。圖片
每一個矩陣均可以表示成多個秩爲一的矩陣的和,而每一項前的係數也就是奇異值的大小反映了這一項相對於A的權重大小。數學
而後說一下SVD的物理應用,主要舉例圖像壓縮與圖像去噪。form
圖像壓縮,即適當下降圖像精度,假設矩陣A表示了目標圖片,對A做SVD分解,那麼咱們把A的分解式末端權重較小的部分捨棄(或者說只保留前面權重大的若干項),那麼這張圖片所需存儲量便大大下降了,進而達到了圖像壓縮。im
圖像去噪,若是一副圖像包含噪聲,咱們有理由相信那些較小的奇異值就是由噪聲引發的。例如圖像矩陣A奇異值分解後獲得的奇異值爲:15.29,7.33,5.23,4.16,0.24,0.03。最後兩項相對於前面幾項權重過小了,把它們舍掉,便直觀地看出圖像噪聲減小了。總結