svd formular:import React, { Component } from 'react';
import Loadable from 'react-loadable';
const LoadableComponent = Loadable({
loader: () => import(/* webpackChunkName: "clientLogin" */'./index'),
loading: <div>Loading...</div>,
})
export default class LoadableClientLogin extends Component {
render() {
return <LoadableComponent />;
}
}
我使用numpy.linalg.svd来运行svd算法。
我想设置矩阵的维度。
例如:A ≈ UΣV*
尺寸,运行numpy.linalg.svd,A=3*5
尺寸,U=3*3
尺寸,Σ=3*1
尺寸。
我需要设置特定维度,例如V*=5*5
维度,U=3*64
维度。但似乎没有可选的维度参数可以在numpy.linalg.svd中设置。
答案 0 :(得分:1)
如果A
是3 x 5
矩阵,那么它的排名最多为3.因此A
的SVD最多包含3个奇异值。请注意,在上面的示例中,奇异值存储为向量而不是对角矩阵。通常这意味着您可以在底部用零填充矩阵。由于完整的S矩阵在对角线上包含3个值,然后是其余的0(在您的情况下,它将是64x64,具有3个非零值),V的底行和U的右行根本不会相互作用,并且可以被设置为你想要的任何东西。
请记住,这不再是A的SVD,而是矩阵的浓缩SVD增加了很多0。