Recovering Low-Rank Matrices From Few Coefficients In Any Basis-David Gross

依旧是一个重构矩阵的问题,这篇论文的符号有些奇怪,注意一下。假设有一个矩阵\(\rho \in \mathbb{R}^{n \times n}\),其秩为\(r \ll n\)。有一组基\(w_a, a=1,\ldots, n^2\),是已知的。假设我们观测到的是,一组内积\(\{ (\rho, w_a) | a \in \Omega \}\),其中\((\rho, w_a) = tr(\rho^{\dagger}w_a)\),\(\rho^{\dagger}\)表示\(\rho\)的共轭转置。在这些条件下,我们是否能够从\(\{ (\rho, w_a) | a \in \Omega \}\)中恢复出\(\rho\)。

一些符号说明:
\(\|\rho\|_1\)为\(\rho\)的奇异值之和,即此为矩阵核范数。
\(\|\rho\|_2\)为\(\rho\)的F范数,而非一般符号代表的谱范数。
\(\|\rho\|\)为\(\rho\)的谱范数。

作者强调,这个问题,是可以办到的,不过其基需要满足一个coherence条件:

且\(\rho^{\dagger} = \rho\),即\(\rho\)为酉矩阵(不过作者提到,似乎\(\rho\)即便不满足此条件,也可以通过一种转化来求解)。

主要结果

作者通过求解下述问题来恢复矩阵\(\rho\):


需要指明的一点是,如果\((\rho, w_a),a \in \Omega\)中大部分为0,那么想要恢复出\(\rho\)是非常困难的(因为这意味着我们可用的信息非常少)。

定理2,3

下为定理2,其中的标准基为:\(\{e_i e_j^{\dagger}\}_{i,j=1}^n\),即仅有\(i\)行\(j\)列元素为1,其余均为0的\(n \times n\)矩阵所构成的基。

作者的结论更为一般,可以拓展到任意的基:

定理4

接下来还有定理4:

定理4针对的是一种特殊的基——Fourier-type基,介绍此的原因是,作者先证明此定理,再通过一些转换来证明定理3的。

直观解释

作者通过俩幅图,给出了一些直观的解释。

先来看(a)。我们可以将整个线性空间分成\(\Omega\)和\(\Omega^{\bot}\)。因为我们已有的信息是\(\Omega\),问题(1)中满足约束的矩阵\(\sigma\)在空间中形成一个超平面,即图中的\(A\),而我们所期望的\(\rho\)是其中的一点。

再来看(b),因为我们希望的是\(\rho\)是问题(1)的最优解,最好还是唯一的。如果真的如此,那么\(B = \{\sigma | \|\sigma\|_1 \le \|\rho\|_1\}\)这个集合只能在平面\(A\)的上方或者下方,实际上,就是平面A是\(B\)的支撑超平面,其支撑点为\(\rho\)。

当然,这个性质并没有这么容易达成,其等价于要满足:
\[
\|\rho + \Delta\|_1 \ge \|\rho\|_1
\]
对于\(A\)中任意的点\(\rho + \Delta \neq \rho\)成立。但是呢,直接证明是困难的,所以作者寻求一个对偶条件即下式:
\[
\|\rho + \Delta\|_1 > \|\rho\|_1 + (Y, \Delta),\Delta \neq 0
\]
关于某个\(Y\)成立,而且\(Y\)必须与超平面\(A\)垂直。这个\(Y\)能否找到,就是\(\rho\)能否恢复的关键。

Recovering Low-Rank Matrices From Few Coefficients In Any Basis的更多相关文章

  1. Generalized Low Rank Approximation of Matrices

    Generalized Low Rank Approximations of Matrices JIEPING YE*jieping@cs.umn.edu Department of Computer ...

  2. 吴恩达机器学习笔记59-向量化:低秩矩阵分解与均值归一化(Vectorization: Low Rank Matrix Factorization & Mean Normalization)

    一.向量化:低秩矩阵分解 之前我们介绍了协同过滤算法,本节介绍该算法的向量化实现,以及说说有关该算法可以做的其他事情. 举例:1.当给出一件产品时,你能否找到与之相关的其它产品.2.一位用户最近看上一 ...

  3. Sparse Principal Component Analysis via Regularized Low Rank Matrix Approximation(Adjusted Variance)

    目录 前言 文章概述 固定\(\widetilde{\mathrm{v}}\) 固定\(\widetilde{\mathrm{u}}\) Adjusted Variance 前言 这篇文章用的也是交替 ...

  4. 推荐系统(recommender systems):预测电影评分--构造推荐系统的一种方法:低秩矩阵分解(low rank matrix factorization)

    如上图中的predicted ratings矩阵可以分解成X与ΘT的乘积,这个叫做低秩矩阵分解. 我们先学习出product的特征参数向量,在实际应用中这些学习出来的参数向量可能比较难以理解,也很难可 ...

  5. 矩阵分解(rank decomposition)文章代码汇总

    矩阵分解(rank decomposition)文章代码汇总 矩阵分解(rank decomposition) 本文收集了现有矩阵分解的几乎所有算法和应用,原文链接:https://sites.goo ...

  6. {ICIP2014}{收录论文列表}

    This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...

  7. ECCV 2014 Results (16 Jun, 2014) 结果已出

    Accepted Papers     Title Primary Subject Area ID 3D computer vision 93 UPnP: An optimal O(n) soluti ...

  8. CVPR 2017 Paper list

    CVPR2017 paper list Machine Learning 1 Spotlight 1-1A Exclusivity-Consistency Regularized Multi-View ...

  9. <<Numerical Analysis>>笔记

    2ed,  by Timothy Sauer DEFINITION 1.3A solution is correct within p decimal places if the error is l ...

随机推荐

  1. 由一个emoji引发的思考

    由一个emoji引发的思考 从毕业以来,基本就一直在做移动端,但是一直就关于移动端的开发,各种适配问题的解决,在日常搬砖中处理了就过了,也没有把东西都沉淀下来,觉得甚是寒颜.现就一个小bug,让我们来 ...

  2. .NET Core TDD 前传: 编写易于测试的代码 -- 依赖项

    第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 本文是第3篇, 讲述依赖项和迪米特法则 ...

  3. 如何将Azure DevOps中的代码发布到Azure App Service中

    标题:如何将Azure DevOps中的代码发布到Azure App Service中 作者:Lamond Lu 背景 最近做了几个项目一直在用Azure DevOps和Azure App Servi ...

  4. 【Android Studio安装部署系列】二十三、Android studio查看Gradle版本号

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 File——Project Structure 单击Project 可以看到,当前项目的gradle版本号是4.4. 参考资料 An ...

  5. linux下利用nohup后台运行jar文件包程序

    Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 ...

  6. java~lambda表达式让查询更优雅

    在java之前的版本里,如果希望从集合时查找符合条件的数据,如果先遍历他,这种写法是我们不能接受的,所以现在java有了lambda就很好的解决了这个问题,让代码更优雅一些! /** * lambda ...

  7. 使用 ASP.NET Core MVC 创建 Web API(三)

    使用 ASP.NET Core MVC 创建 Web API 使用 ASP.NET Core MVC 创建 Web API(一) 使用 ASP.NET Core MVC 创建 Web API(二) 十 ...

  8. Golang之轻松化解defer的温柔陷阱

    目录 什么是defer? 为什么需要defer? 怎样合理使用defer? defer进阶 defer的底层原理是什么? 利用defer原理 defer命令的拆解 defer语句的参数 闭包是什么? ...

  9. 深入学习ThreadLocal原理

    上文我们学习了ThreadLocal的基本用法以及基本原理,ThreadLocal中的方法并不多,基本用到的也就get.set.remove等方法,但是其核心逻辑还是在定义在ThreadLocal内部 ...

  10. 内联汇编获取Kernaer32基址.

    DWORD GetKerner32ImageBase() { DWORD nIMageBase = 0; __asm { xor edx,edx mov ecx, fs:[0x30]; mov ecx ...