低秩矩阵分解算法——迭代阈值算法

迭代阈值算法-Iterative Thresholding


欢迎学习交流!
[email protected]

前言

低秩稀疏理论在数字图像处理中有着非常广泛的应用,相关的求解算法也很多,本文主要介绍一下迭代阈值算法 (Iterative Thresholding,IT) 在高光谱影像数据分解中的应用。

迭代阈值算法

假设原始的高光谱数据维XRr×c×bX \in \mathbb{R}^{r\times c\times b},其中rrccbb 分别表示高光谱影像的行、列和波段。而矩阵分解操作一般处理的都是二维矩阵,而高光谱影像数据本身维三维矩阵,因此在进行运算之前,我们首先需要将三维的高光谱数据转换(reshape)为二维矩阵,然后进行后续的操作。DRN×bD \in \mathbb{R}^{N\times b},此处N=r×cN=r \times c,表示高光谱影像中的像元个数。DD就是reshape之后的二维矩阵。
minA,E=A+λE1,s.t.D=A+E(1) min_{A,E}= \|A\|_*+\lambda \|E\|_1, \quad s.t. D=A+E \tag{1}
RPCA(Robust Principal Component Analysis)算法求解的实质就是解决上述公式1中的凸优化问题,而迭代阈值算法解决了公式(1)中所描述的问题,具体算法如下:
minA,E=A+λE1+12τAF2+12τEF2,s.t.D=A+E(2) min_{A,E}= \|A\|_*+\lambda \|E\|_1+\frac{1}{2\tau}\|A\|_F^2+\frac{1}{2\tau}\|E\|_F^2, \quad s.t. D=A+E \tag{2}
其中,τ\tau是一个大的正标量,因此目标函数只是受到轻微的扰动。为了去掉等式的限制条件,在公式(2)的求解过程中引入拉格朗日乘子YY,因此,公式(2)的拉格朗日函数为:
L(A,E,Y)=A+λE1+12τAF2+12τEF2+1τ<Y,DAE>,s.t.D=A+E(3) L(A,E,Y)= \|A\|_*+\lambda \|E\|_1+\frac{1}{2\tau}\|A\|_F^2+\frac{1}{2\tau}\|E\|_F^2\\+\frac{1}{\tau}<Y,D-A-E> , \quad s.t. D=A+E \tag{3}
然后通过迭代阈值算法迭代升级 AAEEYY。通过固定YY,并最小化 L(A,E,Y)L(A,E,Y),来升级 AAEE。然后在进行 YY 的升级。其中,需要介绍一下软阈值操作(收缩操作),具体如下:
Sε[x]={xε,ifx>εx+ε,ifx<ε0,otherwise(4) S_\varepsilon[x]=\left\{ \begin{aligned} &x - \varepsilon, \quad if \quad x > \varepsilon \\ &x + \varepsilon, \quad if \quad x<- \varepsilon \\ &0, \quad otherwise \end{aligned} \right. \tag{4}
其中,xRx \in \mathbb{R}ε>0\varepsilon>0,该操作可以扩展到向量或者矩阵(通过逐个值操作)。此时我们需要注意到,对A和E进行升级时,分别要求\|\centerdot\|_*1\|\centerdot\|_1相关的式子,此时用到一个等价操作,分别用于核范数最小化问题和l1l_1范数最小化问题的求解,具体如下:
USε[S]VT=argminX εX+12XWF2A(5) US_\varepsilon[S]V^T=argmin_{X} \ \varepsilon\|X\|_{*}+\frac{1}{2}\|X-W\|_{F}^2 \qquad 核范数求解式(用于升级A) \tag{5}
Sε[W]=argminX εX1+12XWF2l1E(6) S_\varepsilon[W]=argmin_{X} \ \varepsilon\|X\|_{1}+\frac{1}{2}\|X-W\|_{F}^2 \qquad l_1范数求解式(用于升级E) \tag{6}
其中的 USVTUSV^TWW 的奇异值分解操作。需要注意的是:使用上述公式 (5)-(6) 进行求解需要对公式(3)进行化简,具体这里不再赘述,感兴趣可以下载笔者分分享的RPCA和LRR算法基inexact ALM算法的具体求解文档,里面有详细的介绍。在此处只需要按照下面的IT算法的伪代码编程即可,程序中没有用到公式(5)-(6) 。

在IT算法中,具体的迭代阈值运算过程如下:
低秩矩阵分解算法——迭代阈值算法
尽管IT算法非常简单且可以证明是正确的,但它需要进行大量的迭代才能收敛,并且难以选择步长δk\delta_k 进行加速,因此其适用性受到限制。

参考文献:
[1] Lin, Z., Chen, M. and Ma, Y., 2010. The augmented lagrange multiplier method for exact recovery of corrupted low-rank matrices. arXiv preprint arXiv:1009.5055.