欢迎来到天天文库
浏览记录
ID:32014720
大小:3.46 MB
页数:29页
时间:2019-01-30
《r中大规模矩阵的svd与矩阵补全》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、概要SVD基本概念SVD的计算与实现矩阵近似与矩阵补全2/29邱怡轩R中大规模矩阵的SVD与矩阵补全2/29概要SVD基本概念SVD的计算与实现矩阵近似与矩阵补全3/29邱怡轩R中大规模矩阵的SVD与矩阵补全3/29SVD•SVD=SingularValueDecomposition=奇异值分解4/29邱怡轩R中大规模矩阵的SVD与矩阵补全4/29SVD•U:左奇异向量按列组成的矩阵•D:奇异值组成的对角矩阵•V:右奇异向量按列组成的矩阵5/29邱怡轩R中大规模矩阵的SVD与矩阵补全5/29SVD的作用•为什么要研究SVD?两条主线
2、•对传统统计方法的重新理解◦主成分分析(PCA)◦线性回归•更加现代的应用◦矩阵近似◦矩阵补全6/29邱怡轩R中大规模矩阵的SVD与矩阵补全6/29SVD与PCA•PCA:回归和机器学习中常用的降维方法•通常的流程◦给定数据矩阵X,假设已进行中心化◦计算协方差矩阵V=X′X◦对协方差矩阵进行特征值分解V=ΓΛΓ′,PCA载荷(系数)保存于Γ中◦计算PCA得分S=XΓ•SVD可以极大简化这一流程7/29邱怡轩R中大规模矩阵的SVD与矩阵补全7/29SVD与PCA•假设X已进行SVD分解X=UDV′•协方差矩阵V=X′X=VDU′UDV
3、=VD2V′,所以Γ=V,Λ=D2•PCA得分S=XΓ=UDV′V=UD•PCA系数保存在V中,得分保存在UD中•避免了矩阵运算X′X,且通常减小了精度损失8/29邱怡轩R中大规模矩阵的SVD与矩阵补全8/29SVD与回归•X=UDV′为数据矩阵,Y为因变量•回归系数βˆ=(X′X)−1X′Y=VD−2V′VDU′Y=VD−1U′Y•拟合值′−1′′−1′′yˆ=X(XX)XY=UDVVDUY=UUY注意,U′U=I但UU′̸=I!9/29邱怡轩R中大规模矩阵的SVD与矩阵补全9/29概要SVD基本概念SVD的计算与实现矩阵近似与矩
4、阵补全10/29邱怡轩R中大规模矩阵的SVD与矩阵补全10/29计算与实现•SVD属于非常底层的运算•几乎所有的科学计算软件包(R,Matlab/Octave,Numpy/Scipy,Julia等等)都提供了SVD的相关函数•R中为svd()•主要的挑战在于矩阵维度非常高时,SVD的计算负担太大11/29邱怡轩R中大规模矩阵的SVD与矩阵补全11/29计算与实现•提高计算效率的途径◦只计算一部分奇异值/奇异向量(为什么?)◦利用稀疏矩阵等特殊的结构12/29邱怡轩R中大规模矩阵的SVD与矩阵补全12/29ARPACK/rARPACK
5、•ARPACK(http://www.caam.rice.edu/software/ARPACK/)◦一套用FORTRAN编写的软件库,用来解决特征值/特征向量问题◦只计算满足需求的一部分特征值/特征向量•rARPACK(http://cran.r-project.org/web/packages/rARPACK/index.html)◦R对ARPACK的一个封装◦提供函数eigs()计算部分特征值分解,svds()计算部分SVD◦针对R中特殊类型的矩阵(对称矩阵、稀疏矩阵)进行优化◦利用BLAS加速/并行运算13/29邱怡轩R中大
6、规模矩阵的SVD与矩阵补全13/29函数说明svds(x,k,nu,nv)•参数◦x:进行SVD分解的矩阵,可为普通矩阵(matrix)、对称矩阵(dsyMatrix)或稀疏矩阵(dgCMatrix)◦k:需计算的奇异值数量◦nu,nv:需计算的左/右奇异向量数量•返回值——列表◦u,d,v:(部分)奇异值和左/右奇异向量◦nconv:收敛的奇异值数量◦niter:迭代次数14/29邱怡轩R中大规模矩阵的SVD与矩阵补全14/29性能svd[dense]trlan.svd[sparse]irlba[sparse]irlba[dens
7、e]propack.svd[sparse]svd[dense,value−only]BLASDefaulttrlan.svd[dense]OpenBLASFunctionspropack.svd[dense]svds[dense]svds[dense,value−only]svds[sparse]svds[sparse,value−only]01000200030004000Elapsedtime(milliseconds)15/29邱怡轩R中大规模矩阵的SVD与矩阵补全15/29概要SVD基本概念SVD的计算与实现矩阵近似与矩阵补
8、全16/29邱怡轩R中大规模矩阵的SVD与矩阵补全16/29矩阵近似•SVD更大的价值在于其提供了一种对矩阵的近似方法•计算前r个奇异值/奇异向量配对,X≈UrDrV′r•在一定的准则下,这种近似是秩为r的矩阵中“最优”的17/29邱
此文档下载收益归作者所有