Generalized Low Rank Approximations of Matrices

来源:互联网 发布:java hsv色彩转rgb 编辑:程序博客网 时间:2024/06/03 11:59

前言

原文为叶杰平教授的一篇paper,下面内容为我对这篇文章的一个简单翻译、理解与总结,仅代表我个人看法,可能存在理解错误等问题,欢迎发邮件至jzwangATbjtuDOTeduDotcn讨论交流。

摘要

这篇文章研究了矩阵低秩近似的计算问题,创新在于本文所提出的方法是对一批(而不是一个)矩阵计算低秩近似。通过将该问题形式化为一个优化问题通过最小化重构误差进行求解。据作者所知,本文所提出的方法 尚不存在闭合解,因此提出了一个迭代算法GLRAM,意为泛化的低秩矩阵近似。GLRAM循序地降低重构误差,在迭代中提高近似的结果。实验证明本文所提出的算法能够快速收敛。
作者设计了大量的实验在图像数据集上验证所提出算法的有效性,并与传统的基于奇异值分解的低秩近似方法进行了比较。比较的指标主要包括重构误差,误分类率和计算时间。结果显示,GLRAM在分类任务上与SVD不相上下,但计算成本更低。然而,与SVD相比,GLRAM却有更大的重构误差。为了进一步降低重构误差,作者研究了GLRAM与SVD的组合,也就是先施行GLRAM再施行SVD。结果显示,当降维相同时,GLRAM+SVD较GLRAM相比重构误差下降明显,同时计算成本也较低。

简介

本文中,作者提出了一种新型方法来降低奇异值分解的计算负担,创新之处在于新的数据表示模型。在该模型下,每个数据原子被表示为一个矩阵而非一个向量,数据的集合被表示为一系列的矩阵而非单个矩阵。我们将低秩近似问题形式化为一个优化问题,同时实现多个矩阵的低秩近似。据作者所知,对提出的优化问题尚不存在闭合解,因此作者提出了一种称之为GLRAM的迭代算法。GLRAM和SVD均致力于最小化重构误差,其本质的区别是GLRAM对数据施行双线性变换。这种双线性变换尤其适合于矩阵形式的数据,与SVD相比计算成本更低。我们对数据压缩与检索施行GLRAM算法,每张图像被表示为一个矩阵。为了评测所提出算法的性能,作者在五个知名数据集上进行了大量的实验。这五个数据集分别是PIX,ORL,AR,PIE和USPS,其中USPS包含手写数字,其它四个数据集为人脸数据集。GLRAM算法同时与SVD和2DPCA进行了比较。结果显示,当使用相同维度时,在分类任务上GLRAM与SVD不相上下,但GLRAM具有更小的计算量。然而,GLRAM较SVD相比重构误差更大。潜在的原因可能是GLRAM能够利用数据本质的局部属性,这将有助于提高分类表现。当涉及到压缩率时,GLRAM比SVD表现要好,尤其当数据点的个数较维度相比相对较少的时候。对大的高维数据集,可用空间至关重要。在这种情形下,在评价不同降维算法的时候压缩率是一个重要的指标。
为了进一步降低GLRAM的重构误差,我们研究了GLRAM与SVD的组合,即在使用GLRAM降维之后施行SVD。这个混合算法的本质就是在GLRAM之后使用SVD实现进一步的降维。由于是对经GLRAM算法转化之后的数据施行SVD,因此SVD可用实施地更有效(比转化前相比维度要低)。我们将混合算法在图像数据集上进行了验证,并同SVD与GLRAM进行了比较。结果显示,当使用相同维度的时候,GLRAM+SVD与单单使用GLRAM相比重构误差下降显著且计算量较低。GLRAM+SVD的重构误差与SVD相近。总结起来,GLRAM可用做在使用SVD之前的预处理。经GLRAM预处理之后能显著降低SVD的计算量,同时保持较小的重构误差。

矩阵的低秩近似

在信息检索和机器学习领域传统方法往往以向量形式表示数据。数据的集合被存储在一个矩阵A中维度为N*n,其中A的每一列表示一个N维数据。使用向量空间模型的一个主要好处是可用探索矩阵空间的代数结构。对高维数据而言,我们一般希望能够简化数据,所以传统的机器学习和统计技术能够利用起来。然而,数据固有的关键信息不应该因为简化而被移除。一个广泛使用的方法就是利用低秩矩阵来近似单一数据矩阵。用数学表示就是去找一个秩为k的矩阵B,使得矩阵B与原始数据矩阵A的差的F范数尽可能地小,即:

定理2.1 记N*n维矩阵A的奇异值分解为A=UDV‘,其中U,V为正交矩阵,D为对角阵,则有

定理2.1说明,由矩阵A的前k个奇异值和相应的奇异向量重构出来的矩阵是A的所有秩为k的低秩近似中重构误差最小的。在该近似下,对矩阵A中的任一列ai均可以表示为ai=UkaiL,其中Uk中的列正交。正交投影下两个向量的欧式距离保持不变,因此有


在这种情形下,原始高维空间中两个向量ai与aj之间的距离可以通过它们降维之后的aiL与ajL来计算。

推广的低秩矩阵近似

这一章节研究推广的低秩近似问题,也就是对矩阵的集合(内含多个矩阵)求解低秩近似。推广的低秩近似与传统的低秩近似问题的主要区别在于数据表示模型的不同。传统的低秩近似往往采用向量空间模型,通过对数据矩阵求奇异值分解得到闭合解。但是,奇异值分解的计算量较大,这样限制了其只适用于小尺度矩阵的低秩近似上面。相反,我们采取不同的数据表示形式,即将每个数据原子表示为一个矩阵,数据的集合被表示为矩阵的集合。

问题形式化

令r*c维矩阵Ai表示训练集中n个数据点,r和c分别表示每个Ai的行数和列数。我们希望求解出两个有正交列的矩阵L(r*l1)和R(c*l2)和n个矩阵Mi(l1*l2)使得LMiC'近似Ai。这里的l1和l2是预先指定的参数,基于后续的实验建议l1与l2取值相同。数学上,我们就是希望求解下面的优化问题:


上面的L和R就是对矩阵形式的数据施行了双边线性变换。回顾传统的低秩近似问题,一般都是施行单边线性变换,也就是前面提到的Uk。注意,这里的Mi并不要求非得是对角阵。随着l1和l2的减小,距离计算的速度和数据压缩比都会提高。但显然,过小的l1和l2可能导致原始数据固有信息的丢失。我们会在后面的章节讨论如何权衡。还有一点,前面的l1和l2取值并不一定非得相等,也就是说中间矩阵Mi可以是任意的形状。后面我们会研究Mi形状的不同对近似结果的影响。

主要算法

定理3.1 令L,R和Mi为上述问题的最优解,则对任意的i有Mi=L’AiR.具体i证明见下图:

需要指出的是,上面提到的“显然”二字其实并不显然,至少我现在没有一眼看出来,我尝试利用迹的性质挪一下能凑出来这个结果,但不知道如何解释才能清晰易懂。无论如何,定理3.1说明,Mi被矩阵L和R唯一确定。因此最小化原目标函数的关键就是计算通用的变换L和R。以下定理陈述关于最优变换L和R的关键性质。
定理3.2 令L,R和Mi是原最小化问题的最优解,那么L和R能最大化下面的优化问题:


这个较容易证明,把定理3.1的关于Mi的结果放到原问题中,利用tr(AB)=tr(BA)这个性质可以得到下面的结果:


最小化原问题就等价于最大化最后一项,定理得证。需要指出的是,该最大化问题尚不存在闭合解。因此作者提出一个迭代算法来求解L和R。
定理3.3 令L,R和Mi是原最小化问题的最优解,则有以下结论成立:
(1)对于给定的R,L是由以下矩阵前l1个特征向量构成的

(2)对于给定的L,R是由以下矩阵前l2个特征向量构成的

这个定理在利用已知结果之后加上实对称矩阵的特征值分解还是较容易证明的。



注意ML实际上是对称矩阵,ML=QduijiaoQ',所以L'MLL=L'QduijiaoQ'L=PP',其中P=L'Q,实际上最终证明转换为P的模长最大化,如果最大呢?也就是L要与Q正交,而Q是特征向量构成的,所以L需要由ML的前l1个特征向量(也就是Q)来构成。对于R的证明过程类似。
从定理3.1到定理3.3捋一捋可以发现,我们首先可以迭代得到L和R,然后Mi是由L,R和Ai决定的,因此整个算法的流程如下图:


原创粉丝点击