没办法,SVD就讲的这么好

2)奇异值:

下面谈谈奇异值分解。特征值分解是一个提取矩阵特征很不错的方法,但是它只是对方阵而言的,在现实的世界中,我们看到的大部分矩阵都不是方阵,比如说有N个学生,每个学生有M科成绩,这样形成的一个N * M的矩阵就不可能是方阵,我们怎样才能描述这样普通的矩阵呢的重要特征呢?奇异值分解可以用来干这个事情,奇异值分解是一个能适用于任意的矩阵的一种分解的方法

    假设A是一个N * M的矩阵,那么得到的U是一个N * N的方阵(里面的向量是正交的,U里面的向量称为左奇异向量),Σ是一个N * M的矩阵(除了对角线的元素都是0,对角线上的元素称为奇异值),V’(V的转置)是一个N * N的矩阵,里面的向量也是正交的,V里面的向量称为右奇异向量),从图片来反映几个相乘的矩阵的大小可得下面的图片

那么奇异值和特征值是怎么对应起来的呢?首先,我们将一个矩阵A的转置 * A,将会得到一个方阵,我们用这个方阵求特征值可以得到:    这里得到的v,就是我们上面的右奇异向量。此外我们还可以得到:

    这里的σ就是上面说的奇异值,u就是上面说的左奇异向量。奇异值σ跟特征值类似,在矩阵Σ中也是从大到小排列,而且σ的减少特别的快,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。也就是说,我们也可以用前r大的奇异值来近似描述矩阵,这里定义一下部分奇异值分解

r是一个远小于m、n的数,这样矩阵的乘法看起来像是下面的样子:

  右边的三个矩阵相乘的结果将会是一个接近于A的矩阵,在这儿,r越接近于n,则相乘的结果越接近于A。而这三个矩阵的面积之和(在存储观点来说,矩阵面积越小,存储量就越小)要远远小于原始的矩阵A,我们如果想要压缩空间来表示原矩阵A,我们存下这里的三个矩阵:U、Σ、V就好了。

假设 m=10000,n=1000,r=100

原始存储:m*n=1000万

优化后存储:m*r=100万;r*r=1万;r*n=10万,合计:111万,是原来存储空间的1/10.

而且在计算的时候,用分解后的矩阵计算,明显减小了矩阵的规模,不至于内存溢出

时间: 2024-12-11 03:53:22

没办法,SVD就讲的这么好的相关文章

宗镜录略讲——南怀瑾老师——系列6

性相近,习相远 接下来讲“三乘五性”,三乘即声闻.缘觉.菩萨,人的禀赋根性不同,也就是现代心理学所说,人的性向问题.各个性向不同,这还只是人世间的心理研究,不如佛学深,比如苏东坡的诗:“书到今生读已迟”,人的聪明智慧不是靠这一生,是前生累积来的.有些学生爱玩小乘道——有为法.这是他的根性,要想把他转过来,很难,那要花很大的力气.人的禀赋根性为什么不同呢?从佛学观念讲,人有了贪欲这一念,就变成生命在六道轮回中越滚越迷.“轮回”这两字翻译得好极了,当时翻译得很新颖,只是一千多年来用旧了.<易经>上

怎么样锻炼自己成为一个优秀的产品经理?

究竟怎么样才能锻炼自己成为优秀的产品经理? 本文先放一个思维导图写出自己的思考过程,再具体说个人认为应该怎么锻炼自己的能力.最后说说作为产品经理能收获什么. 先放思维导图,现在比较喜欢这个东东,不用手写了而且避免了重复操作写在电脑上,写的时候不想word需要因为格式的问题阻碍思考. 在讨论这个问题前,我们先搞清楚产品经理是干什么的. 百度百科上的资料:产品经理(Product manager,简称为 PM)是指在公司中,针对某一项或是某一类的产品进行规划和管理的人,主要负责产品的需求分析,研发.

数学界的扫地僧们(转载)

数学界的扫地僧们 (转载,原文不可考,仅供膜拜....) 前两天跟一个老同学聊近年来数学上的重大发现,结果作为科普人的我说着说着就发现,数学史原来就是一部八卦史.这个圈子奇葩辈出,怪事叠显.恩,这也正是我们本行从业人员不能自拔的一大乐趣.特此重新整理如下,绝对不保证事实正确性,与现实如有雷同纯是巧合. 故事首先从85年的 Andrew Wiles 说起.此人生在剑桥,但是考大学的时候2B了,没考上剑桥,去了离家不远的国王学院,毕业后好歹也去了牛津大学读了数学博士,但是毕业已经27岁了.作为数学从

盛科网络张卫峰SDN分享

一.SDN现状和一些误解 我今天主要分享一下我目前看到的SDN最新动态,一些技术流派,一些SDN应用,特别是在云计算里面的应用.SDN在13,14这两年被炒得非常火,到了今年,感觉声音边小一些了,所以很多人在问,是不是SDN不行了?我的看法不是这样的,我认为按照Gartner的技术成熟度曲线,现在SDN走到了谷底之后,开始向上. 但是现在业界对SDN仍然存在很多误解,我这里得把它澄清一下. 最常见的一个,尽管一再有人来澄清,但是还是会被误解,就是总是把openflow等同于sdn,一说到sdn,

如何轻松干掉svd(矩阵奇异值分解),用代码说话

svd我认识我机器学习里面最扯淡的玩意了.尼玛.老实说,好多机器学习的书老是在扯svd有多高端,然后看了netflix电影推荐大赛,哇塞,冠军队就是用svd+做的.然后狠狠的下载了所有他们的论文,硬是没看明白.后来居然对svd有恐惧感.感觉这个玩意好高端似的.你看他啊,它能提高预测精度,它好像是万能的,能降维,什么比赛有事没事都要扯扯svd.后来看Kaggle上的比赛,有个walmat仓储量预测大赛,也是对数据先用svd预处理. 回去下载了好多svd论文看,搞了好久都没搞明白.他们都是说自己如何

SVD简化数据

一,引言 我们知道,在实际生活中,采集到的数据大部分信息都是无用的噪声和冗余信息,那么,我们如何才能剔除掉这些噪声和无用的信息,只保留包含绝大部分重要信息的数据特征呢? 除了上次降到的PCA方法,本次介绍另外一种方法,即SVD.SVD可以用于简化数据,提取出数据的重要特征,而剔除掉数据中的噪声和冗余信息.SVD在现实中可以应用于推荐系统用于提升性能,也可以用于图像压缩,节省内存. 二,利用python事先SVD 1 svd原理--矩阵分解   在很多情况下,数据中的一小段携带了数据集的大部分信息

SVD 奇异值分解

强大的矩阵奇异值分解(SVD)及其应用 版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系[email protected].也可以加我的微博: @leftnoteasy 前言: 上一次写了关于PCA与LDA的文章,PCA的实现一般有两种,一种是用特征值分解去实现的,一种是用奇异值分解去实现的.在上篇文章中便是基于特征值分解的一种解释.特征值和奇异值在大部分人的印象中,往

机器学习中的矩阵方法04:SVD 分解

机器学习中的矩阵方法04:SVD 分解 前面我们讲了 QR 分解有一些优良的特性,但是 QR 分解仅仅是对矩阵的行进行操作(左乘一个酉矩阵),可以得到列空间.这一小节的 SVD 分解则是将行与列同等看待,既左乘酉矩阵,又右乘酉矩阵,可以得出更有意思的信息.奇异值分解( SVD, Singular Value Decomposition ) 在计算矩阵的伪逆( pseudoinverse ),最小二乘法最优解,矩阵近似,确定矩阵的列向量空间,秩以及线性系统的解集空间都有应用. 1. SVD 的形式

Stanford机器学习---第十讲. 数据降维

本文原始地址见http://blog.csdn.net/abcjennifer/article/details/8002329,在此添加了一些自己的注释方便理解 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归.Octave Tutorial.Logistic Regression.Regularization.神经网络.机器学习系统设计.SVM(Support Vector Machines 支持向量机).聚类.降维.异常检测.大规模机器学习等章节.内容大多来自