Han, Z. F., Leung, C. S., Huang, L. T., & So, H. C. (2017). Sparse and Truncated Nuclear Norm Based Tensor Completion. Neural Processing Letters, 45(3), 729-743.
本文是这篇 Neural Processing Letter 期刊论文的笔记,主要是对文中的理论方法进行展开详解。本人学术水平有限,文中如有错误之处,敬请指正。
摘要: 张量(tensor)补全的主要问题是计算其秩(rank)。最近,一种张量核范数(tensor nuclear norm),等于所有张量的展开的矩阵的核范数的加权和,已经被提出来解决这个问题。然而,在此方法中, 所有的奇异值是被同时最小化的。所以,张量的秩并没有被很好地近似。另外,许多现有的方法都忽视了张量的结构信息。此文提出了一种张量补全的算法,基于张量截断核范数(truncated nuclear norm),其优于传统的核范数方法。而且,为了保持结构的信息,一个稀疏约束项,定义于变换域,也被添加到了目标函数中。实验结果表明此文的方法能胜过一些最先进的算法,在张量补全中。
1 简介
在信号处理和机器学习的应用中,比如图像去噪,图像分类和子空间分割,需要根据已知的数据来估丢失的元素。当然,没有对数据信息的先验知识,估计丢失的元素是一个病态的问题。所以,一些假设被广泛地采用。例如,可以使用输入数据的统计或结构的信息,来建立已知数据和未知数据的关系。然而,许多方法都只关注局部联系。
另一种办法是使用输入数据的全局结构信息。许多研究表明真实的信号都存在低维的空间之中。比如,许多的自然图像都包含一些纹理区域。这些纹理的秩通常都很小。所以,许多的矩阵补全方法都研究最小化矩阵的秩。不幸的是,矩阵的秩并不是一个凸函数,意味着低秩最小化不能被有效地求解。
最近,研究表明,核范数,一个凸近似,适合低秩最小化求解。另外,核范数最小化可以通过一些数学方法有效地求解。然而,如 1 所述,使用核范数的最大限制是其不能很好地近似矩阵的秩,因为在优化过程中,所有的奇异值都被同时最小化了。在 2 中,矩阵截断核范数(truncated nunclear norm, MTNN)被提出。不像之前的核范数方法,最小化所有奇异值的和,该 MTNN 方法关注一部分最小的奇异值。经验性的研究表明此 MTNN 方法更优于其他矩阵核范数方法。
最近,作为矩阵补全的扩展,低秩张量补全越来越受关注。Liu et al. 3 首次定义了张量核范数,将矩阵补全扩展到张量补全中。另外,他们构建了两种算法,快速低秩张量补全(FaLRTC)和高精度低秩张量补全(HaLRTC)。由于张量核范数的概念是基于矩阵核范数,所以张量的秩也并没有被很好地近似。另外,这两种算法并没有考虑张量数据地结构信息。
此文定义了张量截断核范数(TTNN)方法。之后,将其应用到张量补全问题中。为了更好地提升性能,此文将 ℓ1 范数约束项加入到目标函数中,保留数据片之间的平滑性质。约束项等于多维离散余弦变换系数的和。
2 背景
2.1 符号
此文中,矩阵用大写加粗字母表示(
X,Y
),其元素加下标(
Xij
)。Frobenius 范数定义为
||X||F=(∑ij|Xij|2)12
。矩阵的内积定义为
⟨X,Y⟩:=∑ijXijYij
。张量定义为书法体的大写加粗字母(
X,Y
)。一个
N
模的张量,或
其逆操作打包定义为 Fold(n)(X(n)):=X 。张量 X 的 Frobenius 范数定义为 ||X||F:=(∑i1,⋯,iN|Xi1⋯iN|2)12 ,类似地,两个相同大小的 tensor 的内积定义为 ⟨X,Y⟩:=∑i1,⋯,iNXi1⋯iNYi1⋯iN 。
2.2 矩阵补全
首先回顾以下矩阵补全的概念。令
M∈Rm×n
为一个低秩的不完整的矩阵。令
Ω
为已知数据元素的集合,而
Ωc
是其补集。矩阵补全可以用如下的优化问题表示:
其中 PΩ(⋅) 是映射操作,给出如下
在优化问题中 (1) ,目标是估计 X 中的缺失的元素,使其的秩尽可能的小。一般的,矩阵的范数最小化问题是一个 NP-hard 问题。
在文献 4 中,介绍了矩阵
X∈Rm×n
的核范数,给出如下
其中 σi 是矩阵 X 是第 i 个最大的奇异值。使用矩阵核范数的概念,矩阵补全的问题
在基于矩阵核范数的方法中,所有的奇异值都是同时被最小化的。所以,矩阵的秩没有被很好地近似 5 。为了解决这个问题,MTNN 方法被提出了。其等价于 min(m,n)−r 个最小的奇异值之和,即
接着,优化问题
(2)
转变为
根据文献 [5] 所述,该优化问题 (3) 可以改写为
其中 A∈Rr×m , B∈Rr×n , I 是一个单位矩阵。在文献 [5] 中,作者提出了算法使用交替乘子法(alternating direction method of multipliers, ADMM)求解优化问题。基本思想是设置初始值 X(1)=PΩ(M) 。在第 t 次迭代过程中,先固定
基于如上两步骤,交替更新矩阵,最终会使算法收敛到局部最小值。
2.3 张量补全
张量补全是矩阵补全的一般化问题。给定一个低秩的不完整的张量
T∈RI1×⋯×IN
,令
Ω
对应已观测到的元素的集合,而
Ωc
是其相应的补集。在张量补全中,需要估计一个低秩的
X∈RI1×⋯×IN
并满足
PΩ(X)=PΩ(T)
。在文献 [3] 中,低秩张量补全问题给出如下
不像矩阵的情况,很难定义一个张量的秩。许多的张量的秩的版本提出 6 7 。通过将张量转变为矩阵使用矩阵化, Liu et al. [3] 提出了基于张量补全的张量核范数,如下
其中 αi≥0 且 ∑ni=1αi=1 。低秩张量补全问题 (6) 定义如下
另外,Liu et al. [3] 提出了 3 种方法求解张量补全问题,包括简单版(SiLRTC),快速版(FaLRTC),和高精度版(HaLRTC)。由于矩阵核范数的内部依赖性,介绍了虚拟的矩阵作为中间变量, Mi, i=1,2,⋯,n 。将优化问题 (7) 进行转化
然而,在 FaLRTC 中,所有的奇异值都是被同时最小化的。所以秩也没有被很好地近似。另外,结构信息通常也被忽略了。
2.4 ADMM
交替乘子法 8 是一个经典的算法,用于求解带约束的最小化问题。考虑如下的约束最小化问题:
其中 x∈Rnx , z∈Rnz , E∈Rnc×nx , F∈Rnc×nz , f(⋅) 和 g(⋅) 均是凸函数。ADMM 算法考虑一个增广 Lagrangian 函数,如下:
其中 y 是 Lagrangian 乘子向量。ADMM 迭代机制是:
其中 β 是一个正的惩罚参数。
3 张量截断核范数补全
由于 Matrix TNN 优于矩阵的核范数,此文中将 Matrix TNN 扩展到 Tensor TNN,即
另外,空间结构信息可以用变换系数的稀疏性表征。所以,此文添加一个稀疏约束项(定义于变换域)到目标函数中,保持空间的结构信息。如此,根据之前的 TNN 的定义,可以将目标优化问题 (4) 转化为
其中 F(⋅) 是一个正向的 n 维离散余弦变换,
因为 X(i) 之间有内部依赖性,所以这里需要引入一个虚拟的变量 Mi 加入目标函数 (11) 中,来分离这些有依赖的项,即
其中 Mi,(i) 是 Mi 的模 i 的矩阵化的结果。这里定义此文的方法
此算法的基本思想是给定一个当前的估计
X
,基于 SVD,可以获得
{Ai,Bi}, i=1,2,⋯,N
。之后,可以更新
X
基于如下的优化问题
4 张量补全算法
4.1 算法
基于
(13)
,可以定义如下的增广 Lagrangian 函数
其中 B 和 Yi 是 Lagrange 乘子张量,其维度与 X 一致, β 是一个惩罚参数。使用 ADMM 的迭代机制,优化问题 (13) 按照如下的迭代机制求解:
1. 计算 X(k+1) :
这里后两步表示:需要保持已知的元素不变。
2. 计算 M(k+1)i :
3. 计算 W(k+1) :
4. 计算 Y(k+1)i :
5. 计算 B(k+1) :
算法总结于 Algrithm 1 中。具体的更新步骤 1,2,3 后面会给出。
Algorithm 1 基于 ADMM 优化
Input: 张量数据
T
, 已知元素的位置集合
Ω
。
Initialization:
PΩ(X)=PΩ(T), Yi=0, Mi=0, Ai=0, Bi=0, W=0, B=0
,
λ, β, α
。
while not converged do
Step 1: 更新
X(k+1)
用
(15)
;
Step 2: 更新
M(k+1)i
用
(16)
;
Step 3: 更新
W(k+1)
用
(17)
;
Y(k+1)i=Y(k)i+β(X(k+1)−M(k+1)i)
;
B(k+1)=B(k)+β(W(k+1)−F(X(k+1)))
;
end while
Output:
X
。
4.2 计算 X(k+1)
在计算
(15)
中,需要求解如下的无约束优化问题:
然而,该问题并没有直接的闭式解。因为不能很容易地从 F(X) 中分离出 X 。所以,该问题需要被迭代地求解。这需要消耗很多时间,意味着需要一个有效的求解方法。Parseval 定理 9 指出信号的能量是不变的,如果是在单位变换下。根据这个定理和离散余弦变换的单位性质, (20) 中的最后一项可以改写为
其中 g(⋅) 表示 n 维的反离散傅里叶变换。注意的是 Frobenius 范数的平方即为测量张量数据的能量。将
该问题是一个最小二乘问题,并且有闭式解:
4.3 计算 M(k+1)i
在计算
(16)
中,需要求解如下的无约束优化问题:
该问题是一般的核范数最小化问题。可以用如下的定理解决
Theorem 1 对于一个 ϵ>0 和 Y∈Rm×n ,矩阵的核范数可以如下求解
其中 Dτ 是一种奇异值收缩操作,基于矩阵 Y 的奇异值分解。令 UΣVT 为 Y 的奇异值分解,其中 Σ=diag({σi}1≤i≤min(m,n)) 。该 Dτ 定义为
所以,从定理 1 中,可以得到 M(k+1)i,(i) 的闭式解
于是有
注意的是计算 M(k+1)i 的过程中,生成 (X(k+1)+Y(k)iβ)(i)+αiβAiBTi 的左、右奇异向量。他们会被矩阵更新 Ai 和 Bi 在下一轮迭代中。使用 r 来表示
4.4 计算 W(k+1)
为了更新
W
,需要计算如下优化问题:
这是一个 ℓ1 范数最小化问题,有闭式解。给定一个矩阵 Y ,对于一个 ϵ>0 ,令 Z 等于
Z 可以如下的软阈值操作求解:
其中 S1ϵ(⋅) 是一个按元素的操作,定义为
根据这个定义,可以将 (27) 按如下方式求解
5 实验结果
略,详见原文。
- Hu Y, Zhang D, Ye J, Li X, He X (2013) Fast and accurate matrix completion via truncated nuclear norm regularization. IEEE Trans Pattern Anal Mach Intell 35(9):2117–2130 ↩
- Hu Y, Zhang D, Ye J, Li X, He X (2013) Fast and accurate matrix completion via truncated nuclear norm regularization. IEEE Trans Pattern Anal Mach Intell 35(9):2117–2130 ↩
- Liu J,Musialski P,Wonka P, Ye J (2013b) Tensor completion for estimating missing values in visual data. IEEE Trans Pattern Anal Mach Intell 35(1):208–220 ↩
- Candès E, Recht B (2009) Exact matrix completion via convex optimization. Found Comput Math 9(6):717–772 ↩
- Hu Y, Zhang D, Ye J, Li X, He X (2013) Fast and accurate matrix completion via truncated nuclear norm regularization. IEEE Trans Pattern Anal Mach Intell 35(9):2117–2130 ↩
- Kolda TG, Bader BW (2009) Tensor decompositions and applications. SIAM Rev 51(3):455–500 ↩
- Yang L, Huang Z-H, Shi X (2013) A fixed point iterative method for low n-rank tensor pursuit. IEEE Trans Signal Process 61(11):2952–2962 ↩
- Boyd S, Parikh N, Chu E, Peleato B, Eckstein J (2011) Distributed optimization and statistical learning via the alternating direction method of multipliers. Found Trends Mach Learn 3(1):1–122 ↩
- Merhav N, Kresch R (1998) Approximate convolution using DCT coefficient multipliers. IEEE Trans Circuits Syst Video Technol 8(4):378–385 ↩