Today we have learned the Matrix Factorization, and I want to record my study notes. Some kownledge which I have learned before is forgot...(呜呜)

1.Terminology

单位矩阵:identity matrix

特征值:eigenvalues

特征向量:eigenvectors

矩阵的秩:rank

对角矩阵:diagonal matrix

对角化矩阵:Diagonalizing a Matrix

矩阵分解:matrix factorization

奇异值分解:SVD(singular value decomposition)

2.Basic kowledge

<1>Eigenvalues and Eigenvectors

What: The basic equation is , the x is the eigenvector of A and the lamda is the eigenvalue of A.

How: We can transpose this equation as (I is identity matrix), so we will kown the .  We can calculate the eigenvalues and then get the eigenvectors.

<2>Diagonalizing a Matrix

What: (大家都知道,但是特别注意下形如下面的两种矩阵也是对角矩阵)

How: ,lamada is the eigenvalue of A, and the column of S is the eigenvector of A. Like follow:

<3>rank

  • The Rank and the Row Reduced Form (注:我们知道矩阵秩的定义或者求法有很多种,这里说的是行/列最简形矩阵的行/列数即为矩阵的秩,或者就是矩阵的最大非零r阶子式,则r称为矩阵的秩,即R(A)=r )
  • If the rank of matrix A(n*n) is r, what it's mean. 矩阵A的列向量或者行向量只有r个是非线性相关的,其他的n-r个向量是无价值的。(这个很重要,下面矩阵分解将会用到,自己的感悟不会用英文表达了,用中文。。。)

<4>singular value

3. Matrix Factorization

What:

(注:这里注意,当k>=m或k>=n且矩阵U或者V是满秩的,矩阵无法分解)

Why: We can use this to

  • Image Recovery

(recovery this image)

  • Recommendation

(evaluate the ?)

  • and so on

How: 

<1>Matrix completation

(注:在这里我们需要做出假设,即矩阵是低秩。为什么呢?在上面基础概念中我们说到了矩阵秩所代表的意义,那么这里我们假设矩阵是低秩的,则说明矩阵的列向量只有少数几列是真正重要的,其他的都是和这几列线性相关的,那么我们就可以通过这种线性相关来补全残缺的矩阵)

<2>SVD is one of the methods of matrix factorization, we will introduce this method below.

We have discussed the Diagonalizing a Matrix,but when A is any m by n matrix, square or rectangular. Its rank is r. We will diagonalize this A, but not by . The eigenvectors in S have three big problems: They are usually not orthogonal, there are not always enough eigenvectors, and  requires A to be square. The singular vectors of A solve all those problems in a perfect way.

singular value:(这里有一篇博文说的很好,推荐下

通过上面的方法,能够对矩阵X做出一定的降秩,但是如果这里d与m或者n较为接近,那么降秩的效果就不明显,所以我们使用一种近似的策略,如下:

这样我们就是实现了将一个矩阵A,经过SVD近似,转换成一个同维度的矩阵A*,但是它的秩远远低于A

to be continued...

Matrix Factorization SVD 矩阵分解的更多相关文章

  1. Numpy实现SVD矩阵分解

    1. 引入包 2. 实现矩阵分解 3. 从分量还原矩阵

  2. 机器学习 | SVD矩阵分解算法,对矩阵做拆分,然后呢?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题第28篇文章,我们来聊聊SVD算法. SVD的英文全称是Singular Value Decomposition,翻译过来 ...

  3. 【RS】Sparse Probabilistic Matrix Factorization by Laplace Distribution for Collaborative Filtering - 基于拉普拉斯分布的稀疏概率矩阵分解协同过滤

    [论文标题]Sparse Probabilistic Matrix Factorization by Laplace Distribution for Collaborative Filtering  ...

  4. 【RS】List-wise learning to rank with matrix factorization for collaborative filtering - 结合列表启发排序和矩阵分解的协同过滤

    [论文标题]List-wise learning to rank with matrix factorization for collaborative filtering   (RecSys '10 ...

  5. 【RS】Matrix Factorization Techniques for Recommender Systems - 推荐系统的矩阵分解技术

    [论文标题]Matrix Factorization Techniques for Recommender Systems(2009,Published by the IEEE Computer So ...

  6. [线性代数] 矩阵代数進階:矩阵分解 Matrix factorization

    Matrix factorization 导语:承载上集的矩阵代数入门,今天来聊聊进阶版,矩阵分解.其他集数可在[线性代数]标籤文章找到.有空再弄目录什麽的. Matrix factorization ...

  7. 机器学习笔记7:矩阵分解Recommender.Matrix.Factorization

    目录 1矩阵分解概述 1.1用在什么地方 1.2推荐的原理 2矩阵分解的原理 2.1目标函数 2.2 损失函数 2.3 通过梯度下降的方法求得结果 3 代码实现 参考地址: 贪心学院:https:// ...

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

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

  9. 矩阵分解(Matrix Factorization)与推荐系统

    转自:http://www.tuicool.com/articles/RV3m6n 对于矩阵分解的梯度下降推导参考如下:

随机推荐

  1. SQL 存储过程 传入数组参数

    今天在做统计数据的时候,传入数组导致数据不显示.解决方式和大家分享一下: --参数@CompanyName='北京,天津,上海' DECLARE @PointerPrev int     DECLAR ...

  2. C/C++编译和链接过程详解 (重定向表,导出符号表,未解决符号表)

    详解link  有 些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错 ...

  3. R语言:常用函数【转】

    数据结构 一.数据管理vector:向量 numeric:数值型向量 logical:逻辑型向量 character:字符型向量list:列表 data.frame:数据框 c:连接为向量或列表len ...

  4. 通过远程 http API 来控制 lnmp 环境的重启perl脚本

    #!/usr/bin/perl use DBD::mysql; use strict; use warnings; use DBI; use utf8; binmode(STDOUT, ':encod ...

  5. CSP的今世与未来

    一.从两个工具说起 最近Google又推出了两款有关CSP利用的小工具,其一为CSP Evaluator,这是一个能够评估你当前输入的CSP能否帮助你有效避免XSS攻击的工具,其用法非常简单,在输入框 ...

  6. HTML5- Canvas入门(二)

    上篇文章我们了解了canvas的定义.获取和基础的绘图操作,其中的绘图功能我们讲解了线段绘制.上色.描边等方面知识点. 今天我们来讲讲矩形(Rectangle)和多边形的绘制. 矩形的绘制一共有两个口 ...

  7. 剑指Offer面试题:23.二叉树中和为某一值的路径

    一.题目:二叉树中和为某一值的路径 题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.例如输入下图中二叉树和整数2 ...

  8. C#中自己动手创建一个Web Server(非Socket实现)

    目录 介绍 Web Server在Web架构系统中的作用 Web Server与Web网站程序的交互 HTTPListener与Socket两种方式的差异 附带Demo源码概述 Demo效果截图 总结 ...

  9. Some warning were found during validation

    前几天做一个iOS下的App更新,到上传的时候出了问题,一直传了大半个小时,结果还是没传完,再试依然不行,于是只好关机,把电脑带回家弄. 回家后出现了更奇怪的事,经过漫长等待后,竟然出现这个提示: 我 ...

  10. 【VC++技术杂谈003】打印技术之打印机状态监控

    在上一篇博文中我主要介绍了如何获取以及设置系统的默认打印机,本文将介绍如何对打印机状态进行实时监控,记录下所打印的文档.打印的份数以及打印时间等打印信息. 1.打印机虚脱机技术 在正式介绍如何对打印机 ...