目录

  • 恢复1
    • 核范数与SDP
  • 稳定恢复

Candes E J, Plan Y. Matrix Completion With Noise[J]. arXiv: Information Theory, 2010, 98(6): 925-936.

这篇文章,同一个人(团队?)写的,遗憾的是,没怎么看懂。怎么说呢,里面的关于对偶的性质实在不知道从何入手,但想来还是得记一笔。

这篇文章,讨论的是这样的一个问题,有一个矩阵\(M \in \mathbb{R}^{n_1 \times n_2}\),但是因为种种原因,我们只能知晓其中的一部分元素即\(P_{\Omega}(M)\),那么问题来了,有没有办法能够恢复\(M\)呢,或者说在什么条件下我们能恢复\(M\)呢(实际上,这个问题好像是作者前一篇论文已经给出了答案)?然后,又有新的困难,因为我们的观测是有误差的,也就是说我们观测到的实际上不是\(P_{\Omega}(M)\),而是\(P_{\Omega}(M+Z)\)。
作者总拿Netflix举例子,类似地,我们可以用网易云来举例子(虽然估计网易云的推荐方法和这个并没有啥大关系)。

我们可以这么想,\(M\)的每一行是一个用户,每一列是一首歌,其中的每一个元素是该用户给这首歌打的分(当然,这个分可能是通过一些操作的判断的,比如收藏,评论,下载,是否跳过等等)。显然,一个用户不可能听过里面的所有的歌,一首歌也没法让所有人都听(打分),所以,我们所见识到的是\(P_{\Omega}(M)\),一个稀疏的矩阵。然而,推荐歌曲,关注的就是那些用户没有听过的但可能被打高分的歌,所以我们要做的就是利用\(P_{\Omega}(M)\)恢复出\(M\)。听起来的确蛮好玩的。

然后问题是,恢复需要什么前提。很显然,如果一首歌没有被人听过,或者该用户没有听过任何歌,肯定没法把分数恢复出来,因为这跟瞎猜没分别,所以,假设就是\(M\)低秩,但是每行每列不能全为零。

和之前一样,作者采用不连贯条件来描述:

恢复1

本来,是应该求解下述问题的:


但是,这个问题很难求解(NP-hard)。

然后\(\mathrm{rank}\)的凸放松是\(\|\cdot\|_*\)核范数,所以:

核范数与SDP

核范数与SDP

然后,作者指出,核范数可以通过对偶,转换成一个半正定规范问题(看这篇论文最大的收获吧)。

\[ \|X\|_* \le y \Leftrightarrow 存在对称矩阵W_1,W_2 使得 M:= \left [ \begin{array}{cc} W_1 & X \\ X^T & W_2 \end{array} \right ] \succeq 0, \mathrm{Tr} W_1 + \mathrm{Tr} W_2 \le 2y \]
先来前推后,只要构造出这么一个\(W_1\)就可以了。假设\(X = U\Sigma V^T, \Sigma \in \mathbb{R}^{r \times r}\),\(W_1 = U\Sigma U^T,W_2=V\Sigma V^T\)。那么,\(\mathrm{Tr} W_1 + \mathrm{Tr} W_2 \le 2y\)容易证明,第一个条件这么来玩:
\[ [z_1^T, z_2^T] \left [ \begin{array}{cc} W_1 & X \\ X^T & W_2 \end{array} \right ] \left [ \begin{array}{c} z_1\\ z_2 \end{array} \right ] \]
再令\(a = U^Tz_1, b = V^Tz_2\),可得:
\[ [z_1^T, z_2^T] \left [ \begin{array}{cc} W_1 & X \\ X^T & W_2 \end{array} \right ] \left [ \begin{array}{c} z_1\\ z_2 \end{array} \right ] = (a+b)^T \Sigma (a+b) \ge 0 \]
对于任意的\(z_1, z_2\)成立,所以半正定条件也得证了。

好了,现在来反推:
\(\|X\|_* = \sup \{\mathrm{Tr}(X^TW)|\|W\|\le 1\}\),其中\(\|\cdot\|\)表示谱范数。
注意\(\|A\|_* \le \mathrm{Tr}(A)\),当\(A\)为半正定矩阵的时候。
所以
\[ \|M\|_* \le \mathrm{Tr}(M)=\mathrm{Tr}(W_1+W_2)\le 2y \]
又\(\|M\|_* = \sup \{\mathrm{Tr}(M^TW)|\|W\|\le 1\}\),所以
\[ \mathrm{Tr}(M^TW) \le 2y \]

\[ N := \left [ \begin{array}{cc} U^T & 0 \\ 0 & V^T \end{array} \right ] M \left [ \begin{array}{cc} 0 & I_{n_1 \times n_1} \\ I_{n_2 \times n_2} & 0 \end{array} \right ] \left [ \begin{array}{cc} V & 0\\ 0 & U \end{array} \right ] = \left [ \begin{array}{cc} \Sigma & U^TW_1U \\ V^TW_2V & \Sigma \end{array} \right ] \]

\[ W = \left [ \begin{array}{cc} 0 & I_{n_1 \times n_1} \\ I_{n_2 \times n_2} & 0 \end{array} \right ] \left [ \begin{array}{cc} V & 0\\ 0 & U \end{array} \right ] \left [ \begin{array}{cc} U^T & 0 \\ 0 & V^T \end{array} \right ] = \left [ \begin{array}{cc} 0 & UV^T \\ VU^T & 0 \end{array} \right ] \]
容易证明\(\|W\| \le 1\),所以\(\mathrm{Tr}(N) = \mathrm{Tr}(M^TW)=2\|X\|_*\le 2y\),故\(\|X\|_* \le y\)得证。但愿没出错。。。

然后,论文就给出了第一个定理,关于恢复的:

这个结果貌似是之前的工作,,满足一定条件,\(M\)就会有很大概率被恢复。

然后呢,论文又提了以下加强版的不连贯条件:

然后有相应的定理2:

然后跳过。

稳定恢复

用户的评分是不一定正确,不同的场合,不同的天气可能就会给出不同的分数,如果是机器推断的分数那就更是如此了。所以,我们观测的部分数据实际上不一定是\(P_\Omega (M)\),而是\(P_\Omega (Y) = P_\Omega (M+Z)\),其中\(Z\)是类似噪声的存在。
假设,\(\|P_{\Omega}(Z)\|_F \le \delta\),求解下列问题:
\[ \begin{array}{cc} \min & \|X\|_* \\ s.t. & \|P_{\Omega}(X-Y)\|_F \le \delta \end{array} \]
这个问题同样可以作为SDP求解,假设其解为\(\hat{M}\)。有如下定理:


但是问题是,我们从何知道\(\delta\)呢?而在实际操作的时候,作者是求解下述问题:

\[ \min \quad \frac{1}{2} \|P_{\Omega} (X-Y)\|_F^2 + \mu \|X\|_* \]

作者说,这个问题是上面那个问题的对偶结果,饶了我吧,有点像,但是整不出来。然后,不同的情况,作者也给出了\(\mu\)的一些选择。

作者还拿上面的结果和下面的神谕问题进行了比较:

这个神谕,就是指,我们已经知道\(X \in T\)里面了,然后用了对偶还是共轭算子?晕了已经。就这样吧,再看我就得吐了。

转载于:https://www.cnblogs.com/MTandHJ/p/10738769.html

Matrix Completion with Noise相关推荐

  1. UA MATH567 高维统计专题2 Low-rank矩阵及其估计1 Matrix Completion简介

    UA MATH567 高维统计专题2 Low-rank矩阵及其估计1 Low-rank Matrix简介 例 在推荐系统中,Netflix data是非常经典的数据集.考虑它的电影评分数据,用矩阵的每 ...

  2. 论文笔记:Matrix Completion in the Unit Hypercube via Structured Matrix Factorization

    2019 IJCAI 0 摘要 复杂任务可以通过将它们映射到矩阵完成(matrix completion)问题来简化.在本文中,我们解决了我们公司面临的一个关键挑战:预测艺术家在电影镜头中渲染视觉效果 ...

  3. 笔记:Matrix completion by Truncated Nuclear Norm Regularization

    Zhang, D., Hu, Y., Ye, J., Li, X., & He, X. (2012, June). Matrix completion by truncated nuclear ...

  4. Graph Convolutional Matrix Completion,GC-MC

    文章目录 Motivation Contribution Solution encoder 使用交互物品的特征 引入边信息 decoder 训练方法 权重分配 Evaluation Summariza ...

  5. Matrix Completion

    http://perception.csl.illinois.edu/matrix-rank/references.html 2010年的CVPR最佳paper:Efficient computati ...

  6. Graph Convolutional Matrix Completion

    Graph Convolutional Matrix Completion 该篇文章提出了基于图卷积的矩阵补全方法. 图卷积编码器 文章提出了一种能为每种边的类型分配单独的处理过程(简而言之,不同类型 ...

  7. functional correspondence by matrix completion

    这篇文章就是几篇凑在一起的产物 其中一点值得注意的是: 点云的laplacian matrix 的求法 Fourier coefficients的求法α=ΦTfα=ΦTf\alpha = \Phi^T ...

  8. Exact Low-Rank Matrix Completion from Sparsely Corrupted Entries Via Adaptive Outlier Pursuit

    在测量中无法有效处理随机值的噪声,这篇文章提出一种鲁棒方法的异常值处理方法,用来处理测量值中部分值被异常值毁坏的情况.这种方法可以准确的识别异常值的位置,并且使用正确的值来替代异常值. 1 介绍 略 ...

  9. A Singular Value Thresholding Algorithm for Matrix Completion

    1, 前提假设 假设存在一个未知的方阵 M ∈ R n × n M\in R^{n\times n} M∈R

最新文章

  1. 如何将数据库的数据导入到csv文件中
  2. 中国未来技术学院盘点
  3. 图片裁剪功能学习小结
  4. [YTU]_2478( C++习题 虚函数-计算图形面积)
  5. jar包使用以及生成
  6. 【知识图谱】人工智能技术最重要基础设施之一,知识图谱你该学习的东西
  7. 常用的分隔符有哪三种_三种废水处理方法
  8. #詹青云 为什么我要在最好的年纪离开你
  9. 【Java基础篇】try catch finally语句包含return语句时的执行过程
  10. 六、Python之三元表达式、列表推导式、生成器表达式
  11. python如何初始化对象数组_如何理解Python中的面向对象编程?
  12. java求立方体表面积和体积_设计一个立方体类BOX,它能计算并输出立方体的体积和表面积...
  13. 大数据学习入门必备规划
  14. web第三课html课堂笔记
  15. Wps文档文件转换成pdf,支持doc-docx-ppt-pptx-xls
  16. 如何更优雅地使用微博
  17. 利用python构建马科维茨_如何用python实现Markowitz投资组合优化
  18. 今有物不知其数,三三数只剩其二,五五数只剩其三,七七数只剩其二
  19. 回撤率 python_最大回撤和最大回撤率的区别?
  20. Kata Containers及相关vmm介绍

热门文章

  1. jq点击按钮获取php的值删除,通过jquery怎么移除点击事件
  2. java怎么设有滚动的标签,html标签overflow属性和javascript实现div标签滚动
  3. linux撤销编辑内容,linux编辑利器vim常用操作
  4. 基于netty访问WebSocket(java的websocket客户端)(访问远程ws协议)
  5. qt 3d迷宫游戏_Steam上最硬核的恐怖游戏?玩家耗时一个月才通第一关!
  6. 导入win32_为什么DLL在导入项没有成功解析时会加载失败?
  7. 【mybatis】xml中定义变量
  8. geth JavaScript Console
  9. 在linux+nginx+mysql+php环境下安装 phpmyadmin
  10. Kubernetes基础学习(一)