快速SVD和PCA

版本1.3.0.0 (3.35 KB) 一些Vijayan
快速截断SVD和PCA矩形矩阵

3.5 k下载

更新7月7日

查看许可协议

截断奇异值分解(SVD)和主成分分析(PCA),相比于对矩形矩阵使用Matlab SVD和svds函数要快得多。
对于长或薄矩阵,svdecon是svd(X,'econ')的更快替代方案。
对于k << size(X,1)和size(X,2)的密集长或薄矩阵,svdsecon是svds(X,k)的更快替代方案。
两个svd函数的PCA版本也实现了。
---

函数[U,S,V] = svdecon(X)
函数[U,S,V] = svdecon(X,k)

输入:
X: m × n矩阵
K:获取前K个奇异值(如果K不给定则K = min(m,n))

输出:
X = u * s * v '
U: m x k
S: k x k
V: nxk

描述:
svdecon(X)等价于svd(X,'econ')
svdecon(X,k)等价于svds(X,k)其中k < min(m,n)
当k并不比min(m,n)小多少时,它比svdsecon快

---

函数[U,S,V] = svdsecon(X,k)

输入:
X: m × n矩阵
K:获取前K个奇异值,K << min(m,n)

输出:
X = U*S*V'约(到k)
U: m x k
S: k x k
V: nxk

描述:
svdsecon(X,k)等价于svds(X,k)其中k < min(m,n)
如果k << min(m,n),这个函数是有用的(见doc eigs)

---

函数[U,T,mu] = pcaecon(X,k)

输入:
X: m × n矩阵
X的每一列都是一个特征向量
K:提取前K个主成分

输出:
X = U*T约(到k)
T = u '* x
U: m x k
T: k x n

描述:
主成分分析(PCA)
要求k < min(m,n)

---

函数[U,T,mu] = pcasecon(X,k)

输入:
X: m × n矩阵
X的每一列都是一个特征向量
K:提取前K个主成分,K << min(m,n)

输出:
X = U*T约(到k)
T = u '* x
U: m x k
T: k x n

描述:
主成分分析(PCA)
要求k < min(m,n)
如果k << min(m,n),这个函数是有用的(见doc eigs)

引用作为

维平·维贾扬(2022年)。快速SVD和PCA(//www.tianjin-qmedu.com/matlabcentral/fileexchange/47132-fast-svd-and-pca), MATLAB中央文件交换。检索

MATLAB版本兼容性
使用R2013a创建
与任何版本兼容
平台的兼容性
窗户 macOS Linux
确认

启发:EOF

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!