本文是對svt的一篇文章的理解,即奇異值閾值演算法的理解。
1:演算法解決的問題如下:
其中最小化的是核範數(表示矩陣奇異值之和),是rank(x)的最優凸近似。
具體研究解決的是矩陣填充問題,如何在不完備的資料下把缺少的資料給補充完整。前提是填充的矩陣是要求低秩的。
首先給出軟閾值運算元:如果
那麼在軟閾值運算元下有:
t),那麼我們能發現,當d作用於奇異值上時,一部分小於t的奇異值變為0,而大於t的奇異值減去t。如果迭代多次進行下去就會發現,奇異值會逐漸減少並且減小。這也是以後我們會將這個叫做奇異值收縮運算元的原因。
下面定理說明了奇異值收縮運算元是核範數的近似運算元。
具體證明可以參考下面的文獻。
因此我們有解矩陣填充問題的演算法如下:
很顯然當t,充分大的時候(1.6)問題的解近似原問題的解。
同樣的(1.6)的解也是如下問題的近似解。
SVT矩陣補全演算法的實現及應用
前言 最近在學習矩陣補全的方法主要是用來做藥物重定位。入門矩陣補全方法後才發現這個坑有點大,需要太多的數學基礎了。對於數學知識嚴重不足的我欲哭無淚,搞了兩周之後對這個方法的現實意義跟數學背景有了一定的了解。在這裡做個總結並用經典的svt矩陣補全演算法 a singular value thresho...
C STL填充演算法
include include include include include include include include include using namespace std template void printvector vectorv vectorvarr arr,arr 9 pri...
邊緣填充演算法
邊緣填充演算法是先求出多邊形的每條邊與掃瞄線的交點,然後將交點右側的所有畫素顏色全部取為補色 或反色 按任意順序處理完多邊形的所有邊後,就完成了多邊形的填充任務。邊緣填充演算法利用了影象處理中的求 補 或求 反 的概念,對於黑白影象,求補就是把rgb 1,1,1 白色 的畫素置為rgb 0,0,0 ...