基于SVD的降维优化

基于SVD的降维优化

向量降维:尽量保留数据“重要信息”的基础上减少向量维度。可以发现重要的轴(数据分布广的轴),将二维数据 表示为一维数据,用新轴上的投影值来表示各个数据点的值,示意图如下。

基于SVD的降维优化_第1张图片

稀疏矩阵和密集矩阵转换:大多数元素为0的矩阵称为稀疏矩阵,从稀疏矩阵中找出重要的轴,用更少的维度对其进行重新表示。结果,稀疏矩阵就会被转化为大多数元素均不为0的密集矩阵。这个密集矩阵就是我们想要的单词的分布式表示。

奇异值分解(Singular Value Decomposition,SVD):任意的矩阵X分解为U、S、V,3个矩阵的乘积,其中U和V是列向量彼此正交的正交矩阵,S是除了对角线元素以外其余元素均为0的对角矩阵。

基于SVD的降维优化_第2张图片

关于SVD是怎么回事,从代码中分析:

代码中使用 NumPy 的 linalg 模块中的 svd 方法,如下。

U, S, V = np.linalg.svd(W)

我们输出C、W、U、S、V,

你可能感兴趣的:(学习笔记,SVD,降维,nlp)