基于张量分解,张量鲁棒主成分分析法(TRPCA)是对鲁棒主成分分析(RPCA)的高阶扩展,在数据去噪等领域拥有广泛应用。本篇将对TRPCA以及其最新的改进模型做出介绍。
目录
一、RPCA
在实际应用中,很多数据矩阵往往是低秩或近似低秩的。理想状态下,数据矩阵的行与行之间应当具有极强的相似性,整个矩阵应当是低秩的。但由于数据噪声的存在,破坏了这种低秩性。因此,为了恢复矩阵的低秩结构,可将矩阵D分解为两个矩阵之和,即低秩矩阵A和稀疏矩阵E,D=A+E。低秩矩阵为分离了噪声的真实矩阵,稀疏矩阵为分离出的噪声矩阵。于是,RPCA问题可转化为如下的凸优化问题:
其中表示矩阵的核范数,
表示矩阵数据的绝对值之和,
是一个正的权重参数。该式的意思为在保证D=A+E的条件下,使A的核范数与E的L1范数之和最小。当实现最小时,则去噪的效果最优。
对凸优化问题的求解方法目前主要有迭代阈值法、加速近端梯度法、对偶法等,最常用的是增广拉格朗日乘子法(交替方向乘子法,ADMM)。其拉格朗日函数为:
具体算法流程如下:
二、TRPCA
Tensor Robust Principal Component(TRPCA)是对RPCA的高阶扩展,旨在从噪声数据中还原出真实的低秩张量。下图展示了TRPCA的过程:
同样,TRPCA可转化为一个凸优化问题,如下式:
该优化问题也使用ADMM去计算。
三、TRPCA-TNN
目前对TRPCA的改进方案主要集中于对低秩矩阵的核范数的全新定义。TRPCA-TNN的核心在于定义了新的核范数tensor nuclear norm(TNN)。对一个张量
,按t-SVD分解得
,TNN定义为:
其中定义为A的谱范数,bcirc()为块循环矩阵,详见张量(二)。经过公式推导可得换算关系:
由公式可知,块循环矩阵和傅里叶变换后的A均通过A的切片捕捉到了A的空间信息,这支持了核范数的定义。下图表明了TNN与张量其他相关概念的关系:
由图可知,张量算子范数是算子范数在高阶领域的扩展。张量谱范数是由张量算子范数通过张量-张量积导出。张量核范数定义为张量谱范数的对偶范数。张量平均范数是张量核范数的凸包络。
TRPCA-TNN的ADMM计算算法如下:
针对多幅视频图像应用TRPCA-TNN进行去噪,并以RPCA,SNN作为对比,结果如下:
TRPCA的效果肉眼可见的好,以PSNR作为评价指标,定义为:
通常PSNR作为去噪效果的评价指标,去噪结果可视化如下:
相比之下,TRPCA的去噪效果最好,运行耗时最短。
了解更多细节可参考:《Tensor Robust Principal Component Analysis with A New Tensor Nuclear Norm》