随机奇异值分解:截断 SVD 的极快计算-matlab开发

时间:2024-06-21 03:08:57
【文件属性】:

文件名称:随机奇异值分解:截断 SVD 的极快计算-matlab开发

文件大小:1KB

文件格式:ZIP

更新时间:2024-06-21 03:08:57

matlab

此函数实现了快速截断的 SVD。 我们经常想计算奇异值分解。 但大多数时候,我们实际上并不需要像主成分分析中那样的所有奇异向量/值。 这也证明了以下事实:在实践中出现的许多矩阵确实表现出某种结构,导致只有少数奇异值实际上是不可忽略的。 最近的研究表明,当我们想要截断的 SVD 时,随机算法可以产生令人难以置信的加速度。 用法 : 输入: * A : 我们想要的 SVD 矩阵* K:要保留的组件数 输出: * U,S,V : 作为内置 svd matlab 函数的经典输出 这是我的小型笔记本电脑上 2000x2000 秩为 100 的矩阵的一个小例子: >> A = randn(2000,100)*randn(100,2000); >> 抽动; [U1,S1,V1] = svd(A); 目录经过的时间是 6.509186 秒。 >> 抽动; [U2,S2,V2] = rsvd(


【文件预览】:
rsvd.zip

网友评论