奇异分解(SVD)
奇异分解
假设C是m×n矩阵,U是m×m矩阵,其中U的列为 的正交特征向量,V为n×n矩阵,其中V的列为
的正交特征向量,再假设r为C矩阵的秩,则存在奇异值分解:
其中和
的特征值相同,为
,且
。
是m
×n的矩阵, ,
。令
,则
。
称为矩阵C的奇异值。
所以有了矩阵C,可以求得或者
,从求得方阵
或者
的特征值,利用这些特征值得到
,从而求得
,求得
的时候已经求得U或者V。
例题:
,求A的奇异值分解。
解:
,
,
,
故 ,
当 时,特征向量为
,
,
,
标准化后 ,
,令
同理,先求 ,再求U。
,
当 时,特征向量
,
,
,
,
,
,
由此可知, ,
,a是一个常数,然后单位化
便得到
。
所以
,
最后得
---------------------------------------------------------------------------------
特征值分解——EVD
在这里,选择一种特殊的矩阵——对称阵(酉空间中叫hermite矩阵即厄米阵)。对称阵有一个很优美的性质:它总能相似对角化,对称阵不同特征值对应的特征向量两两正交。一个矩阵能相似对角化即说明其特征子空间即为其列空间,若不能对角化则其特征子空间为列空间的子空间。现在假设存在 的满秩对称矩阵A,它有m个不同的特征值,设特征值为
,对应的特征向量为
,则有:
U为的列是两两正交向量,所以它的逆矩阵等于转置矩阵。
奇异值分解——SVD
假设存在一个 矩阵A,A矩阵将n维空间中的向量映射到k
为空间中,
。目标:在n维空间中找一组正交基,使得经过A变换后还是正交的。
假设这组标准正交基为: ,则A矩阵将这组基映射为
,如果要使他们两两正交,即有以下关系
根据假设,也有以下关系:
所以如果选择v为 的特征向量的话,由于
是对称阵,v之间两两正交,那么
这样就找到了正交基使其映射后还是正交基了,现在,将映射后的正交基单位化:
所以
单位化:
由此得到关系:
从而得到
令 ,
则 是A的满秩分解。
Reference
http://blog.csdn.net/zhongkejingwang/article/details/43053513
奇异分解(SVD)的更多相关文章
- 使用矩阵分解(SVD)实现推荐系统
http://ling0322.info/2013/05/07/recommander-system.html 这个学期Web智能与社会计算的大作业就是完成一个推荐系统参加百度电影推荐算法大赛,成绩按 ...
- 多维数组分解----SVD在推荐系统中的应用-
http://www.janscon.com/multiarray/rs_used_svd.html [声明]本文主要参考自论文<A SINGULAR VALUE DECOMPOSITION A ...
- SVD分解及线性最小二乘问题
这部分矩阵运算的知识是三维重建的数据基础. 矩阵分解 求解线性方程组:,其解可以表示为. 为了提高运算速度,节约存储空间,通常会采用矩阵分解的方案,常见的矩阵分解有LU分解.QR分解.Cholesky ...
- SVD神秘值分解
SVD分解 SVD分解是LSA的数学基础,本文是我的LSA学习笔记的一部分,之所以单独拿出来,是由于SVD能够说是LSA的基础,要理解LSA必须了解SVD,因此将LSA笔记的SVD一节单独作为一篇文章 ...
- SVD分解技术数学解释
SVD分解 SVD分解是LSA的数学基础,本文是我的LSA学习笔记的一部分,之所以单独拿出来,是因为SVD可以说是LSA的基础,要理解LSA必须了解SVD,因此将LSA笔记的SVD一节单独作为一篇文章 ...
- PCA本质和SVD
一.一些概念 线性相关:其中一个向量可以由其他向量线性表出. 线性无关:其中一个向量不可以由其他向量线性表出,或者另一种说法是找不到一个X不等于0,能够使得AX=0.如果对于一个矩阵A来说它的列是线性 ...
- 从矩阵(matrix)角度讨论PCA(Principal Component Analysis 主成分分析)、SVD(Singular Value Decomposition 奇异值分解)相关原理
0. 引言 本文主要的目的在于讨论PAC降维和SVD特征提取原理,围绕这一主题,在文章的开头从涉及的相关矩阵原理切入,逐步深入讨论,希望能够学习这一领域问题的读者朋友有帮助. 这里推荐Mit的Gilb ...
- SVD的概念以及应用
第十四章 利用SVD简化数据 一.引言 SVD的全称是奇异值分解,SVD的作用是它能够将高维的数据空间映射到低维的数据空间,实现数据约减和去除噪声的功能. SVD的特点主要有以下几个方面: 1.它的优 ...
- 推荐系统 SVD和SVD++算法
推荐系统 SVD和SVD++算法 SVD: SVD++: [Reference] 1.SVD在推荐系统中的应用详解以及算法推导 2.推荐系统——SVD/SVD++ 3.SVD++ 4.SVD++协 ...
随机推荐
- [转载]Oracle中的NVL函数
Oracle中函数以前介绍的字符串处理,日期函数,数学函数,以及转换函数等等,还有一类函数是通用函数.主要有:NVL,NVL2,NULLIF,COALESCE,这几个函数用在各个类型上都可以. 下面简 ...
- linux--- sort,uniq,cut,wc命令
1.sort [-fbMnrtuk] [file or stdin] -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 J ...
- js获取浏览器信息
function message() { txt = "<p>浏览器代码名: " + navigator.appCodeName + "</p>& ...
- @RefreshScope 的作用
让在application.properties里自定义的变量也能通过@Value 注解正常注入
- iOS项目之解析HTML数据
最近因为需求,一直在做HTML数据的解析,从网页中去获取需要的数据,然后展示到自己的app中. 在网上找了很多资料,大多都是TFHpple这个第三方框架,能够根据标签节点获取对应的数据,但是现在我需要 ...
- ES6知识整理(7)--Set和Map数据结构
(文章会同步到博客园,技术类文章还是该让搜索引擎察觉比较好) Set构造函数 初始化一个值不重复的数组,适合做数组去重. 2种数组去重的方法: 这里再说下Array.from(),表示以一个类数组|| ...
- APP端上传图片 - php接口
$base64="iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABHNCSVQICAgIfAhkiAAAAbRJREFUSIntlDFPFF ...
- mysqldump进行复制数据导出导入时的问题
在执行数据导入到从库时,若使用mysqldump命令进行数据导出,应当一次性将需要同步的库导出. mysqldump -uroot -p --single-transaction --database ...
- gcc常用编译选项
“-Wall”选项打开所有最常用到的编译警告,强烈建议打开,可以捕捉到许多在C编程中最常发生的错误. “-o”选项来为可执行文件指定一个不同的输出文件. “-c”用于把源码文件编译成对象文件. 对象文 ...
- 支持图片上传预览的 uploadPreview.js 插件
原文链接:http://www.lanrenzhijia.com/others/3148.html