为了学PCA,发现要用到svd就先研究研究。

svd奇异值分解函数声明翻译

%SVD    Singular value decomposition.

SVD奇异值分解

%   [U,S,V] = SVD(X) produces a diagonal matrix S, of the same
%   dimension as X and with nonnegative diagonal elements in
%   decreasing order, and unitary matrices U and V so that
%   X = U*S*V'.

[U,S,V] = SVD(X) 生成一个对角矩阵S,它的维数与X相同,
对角元素的降序为非负,酉矩阵U和V使 X = USV’

%   S = SVD(X) returns a vector containing the singular values.

S = SVD(X) 返回包含单数值的向量。

%   [U,S,V] = SVD(X,0) produces the "economy size"
%   decomposition. If X is m-by-n with m > n, then only the
%   first n columns of U are computed and S is n-by-n.
%   For m <= n, SVD(X,0) is equivalent to SVD(X).

产生“经济规模”的分解。如果X是m-by-n且m>n,则只计算U的前n列,S是n-by-n。对于m<=n,SVD(X,0)相当于SVD(X)。

%   [U,S,V] = SVD(X,'econ') also produces the "economy size"
%   decomposition. If X is m-by-n with m >= n, then it is
%   equivalent to SVD(X,0). For m < n, only the first m columns
%   of V are computed and S is m-by-m.

[U,S,V]=SVD(X,‘econ’)也会产生“经济规模”分解。如果X是m-by-n且m>=n,则它等价于SVD(X,0)。对于m<n,只计算V的前m列,S是m-by-m。

自己的理解

看了几个推导没整明白,放弃推到,反正我就是用,我先了解U,S,V是干啥用的就行。

上诉公式为奇异值分解公式,与matlab中输出的U,S,V相对应。

  • 特点1:奇异值分解可以把一个大矩阵,分解成三个小矩阵相乘。

由于这个重要的性质,SVD可以用于PCA降维,来做数据压缩和去噪。也可以用于推荐算法,将用户和喜好对应的矩阵做特征分解,进而得到隐含的用户需求来做推荐。同时也可以用于NLP中的算法,比如潜在语义索引

  • 特点2:U和V是两组正交单位向量,Σ是对角阵,表示奇异值,它表示我们找到了U和V这样两 A矩阵的作用是将一个向量从V这组正交基向量的空间旋转到U这组正交基向量空间, 并对每个方向进行了一定的缩放,缩放因子就是各个奇异值。如果维度比大,则表示还进行了投影。可以说奇异值分解将一个矩阵原本混合在一起的三种作用效果,分解出来了。

奇异值分解——matlab中svd函数用法总结相关推荐

  1. matlab中svd函数用法总结

    1.帮助文档 svd Singular value decomposition Syntax s = svd(X) [U,S,V] = svd(X) [U,S,V] = svd(X,0) [U,S,V ...

  2. matlab sort descend,详解Matlab中 sort 函数用法

    搜索热词 (1)B=sort(A) 对一维或二维数组进行升序排序,并返回排序后的数组,当A为二维时,对数组每一列进行排序. eg: A=[1,5,3],则sort(A)=[1,3,5] A=[1,3; ...

  3. matlab中频域信号IFFT,MATLAB中ifft函数用法、性质、特性-以及与fft的组合应用全面深入解析(含程序)...

    MATLAB中ifft函数用法.性质.特性,以及与fft的组合应用全面深入解析(含程序) 前言 在我之前的<MATLAB中fft函数用法.性质.特性.缺陷全面深入解析(含程序)>中,我已经 ...

  4. Matlab中 intlinprog函数用法简介

    Matlab中 intlinprog函数用法简介 本来想要自己亲手写一遍的,发现了一优质博文基本上跟我做过的例题大差不差,所以就直接放上链接. 参考链接 https://www.cnblogs.com ...

  5. matlab stem 属性,matlab中stem函数用法_常见问题解析

    matlab中如何自定义图例_常见问题解析 matlab中自定义图例的方法:首先打开matlab软件:然后点击勾选按钮,新建一个文件并输入代码为"x = 0:pi/50:2*pi;" ...

  6. stem什么意思matlab,matlab中stem函数用法_常见问题解析,matlab

    matlab中如何自定义图例_常见问题解析 matlab中自定义图例的方法:首先打开matlab软件:然后点击勾选按钮,新建一个文件并输入代码为"x = 0:pi/50:2*pi;" ...

  7. matlab里randn是什么,matlab中randn函数用法

    matlab中randn函数用法 MATLAB 中的randn函数 matlab函数 randn:产生正态分布的随机数或矩阵的函数 randn:产生均值为0,方差σ^2 = 1,标准差σ = 1的正态 ...

  8. sort函数降序排列matlab,详解Matlab中 sort 函数用法

    (1)B=sort(A) 对一维或二维数组进行升序排序,并返回排序后的数组,当A为二维时,对数组每一列进行排序. eg: A=[1,5,3],则sort(A)=[1,3,5] A=[1,5,3;2,4 ...

  9. length命令怎么用Matlab,matlab中length函数用法

    matlab中的length表示什么?应该如何使用? length:数组长度(即行数或列数中的较大值): 使用方法: n=length(A):如果A为非空数组,返回行数和列数两者之间数值较大的那一个值 ...

最新文章

  1. 配置Exchange OWA和Sharepoint网站单点登录
  2. 我为中国第一张火星照片做鱼眼矫正
  3. NodeJS + Aliyun 实现 DDNS
  4. 如何使用jsp自定义标签 JspTag 使用入门
  5. 紧随时代发展 安防消费也在悄然发生改变
  6. 如何使用Oracle的外部表查询警告日志文件
  7. 深入理解计算机系统读书笔记
  8. 数据结构(java语言描述)顺序栈的使用
  9. fanuc机器人码垛编程实例_FANUC 机器人码垛编程详细讲解 记得收藏!
  10. 2020 及以后的八大最显著技术趋势!
  11. Visual Studio 2012 Ultimate旗舰版序列号
  12. python是什么课程-Python课程包括哪些内容?
  13. openstack configure
  14. mysql从库新增_MySQL新增从库
  15. python之udp
  16. DelphiX中的DXSprite单元中涉及到修改
  17. 网易企业邮箱 服务器 端口,网易企业邮箱客户端——Thunderbird设置
  18. linux下lamealsa进行音频流操作(一)lame知识介绍
  19. 大数据舆情分析:全方位解读《战狼2》
  20. flume+kafka集群解决某著名联锁大型超市超过25年POS线下收单系统变实时系统的典型案例

热门文章

  1. 喜报 | 国家发明专利证书! 再添2项!
  2. Dicom文件支持中文字符
  3. Eclipse常用配置
  4. 深圳java培训:怎样理解 Java 注解和运用注解编程?
  5. DM到DM的DMHS同步
  6. 在RedHat6.9_x64上安装Oracle11g R2_11.2.0.4
  7. 基数排序简介及其并行化
  8. Maven打包详解(“There are test failures”)
  9. Cocos2dx WebSocket的使用
  10. 机器学习入门(不知不觉就36795字了)