用截断奇异值分解(Truncated SVD)降维

1、SVD的定义

用截断奇异值分解(Truncated SVD)降维_第1张图片

用截断奇异值分解(Truncated SVD)降维_第2张图片

 

2、SVD计算举例

用截断奇异值分解(Truncated SVD)降维_第3张图片

 

3、SVD的一些性质 

用截断奇异值分解(Truncated SVD)降维_第4张图片

 

4、截断SVD

截断的SVD将参数计数从u*v减少到t(u+v),如果t比min(u,v)小得多,则这一点很重要。

TSVD与一般SVD不同的是它可以产生一个指定维度的分解矩阵,可以实现降维。为了压缩网络,将W对应的单个全连接层替换为两个全连接层,它们之间没有非线性。这些层中的第一层使用权矩阵,第二层使用U。这种简单的压缩方法在ROI数目较大的情况下可以很好地加速全连接层的计算。

 

5、python中的使用

from sklearn.decomposition import TruncatedSVD

svd = TruncatedSVD(2)
iris_transformed = svd.fit_transform(iris_data)
iris_data[:5]

 

你可能感兴趣的:(机器学习,TSVD)