SVD—matlab,python,scikit-learn 操作对比

本文对比了在matlab, python (使用numpy库) 和 scikit-learn 中执行奇异值分解(SVD)的过程。在matlab中,SVD用于降噪和PCA,展示通过`svd`函数实现;在Python中,numpy的`linalg.svd`和scikit-learn的`RandomizedPCA`也进行了操作对比,重点讨论了`RandomizedPCA`的参数如`n_components`、`explained_variance_ratio_`和`explained_variance_`在数据压缩和特征选择中的作用。" 125692772,14779106,中网智达矩阵系统:一键管理与发布短视频的解决方案,"['短视频营销', '内容发布', '社交媒体管理', 'SEO工具', '自动化工具']
摘要由CSDN通过智能技术生成

SVD—matlab,python,scikit-learn 操作对比

1.简介

SVD的用途有两个,第一个是降噪,第二个是pca主成分分析,但每个包和语言都有不同的方法,所以在这里一一总结

2.matlab机器学习实战方法

x=[1,1,1,0,0;2,2,2,0,0;1,1,1,0,0;5,5,5,0,0;1,1,0,2,2;0,0,0,3,3;0,0,0,1,1] 
[U,S,V]=svd(x); 

S = 
Diagonal Matrix 
9.7214e+00 0 0 0 0 
0 5.2940e+00 0 0 0 
0 0 6.8423e-01 0 0 
0 0 0 1.1587e-15 0 
0 0 0 0 1.5459e-31 
0 0 0 0 0 
0 0 0 0 0 

U = 
-1.7794e-01 -1.6423e-02 1.8050e-02 9.8285e-01 1.2760e-02 3.3429e-02 2.1559e-02 
-3.5588e-01 -3.2846e-02 3.6100e-02 -3.5708e-02 -7.8642e-01 -4.7307e-01 -1.6565e-01 
-1.7794e-01 -1.6423e-02 1.8050e-02 -6.0607e-02 -4.6595e-01 8.2137e-01 2.6892e-01 
-8.8970e-01 -8.2114e-02 9.0251e-02 -1.7017e-01 4.0521e-01 1.8268e-02 8.1658e-03 
-1.3395e-01 5.3353e-01 -8.3511e-01 4.6326e-16 2.5229e-17 -1.8166e-17 7.6185e-17 
-2.1575e-02 7.9768e-01 5.1307e-01 3.1394e-03 2.8524e-03 1.0005e-01 -2.9995e-01 
-7.1917e-03 2.6589e-01 1.7102e-01 -9.4183e-03 -8.5572e-03 -3.0016e-01 8.9986e-01 
z=U(:,1:3)*S(1:3,1:3) #这就是svd转化后的压缩特征 
z = 
-1.729823 -0.086942

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值