Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我尝试在两个版本的 matlab 上对 svd 函数实现相同的矩阵 F。但是,我发现两种解决方案中 U 和 V 矩阵的符号是相反的。我可以知道哪些版本的 MATLAB 提供了更好或更准确的答案吗?或者实际上两个答案都是正确的?
矩阵的奇异值分解只定义为一个符号,所以 和 的符号U是V任意的,两个答案都是正确的。无论 MATLAB 产生哪种符号,它仍然应该是F = U*S*V, 所以U和V构成 的正确奇异值分解F。(注意“a”,而不是“the”)。
U
V
F = U*S*V
F
您不应该依赖 MATLAB 生成特定的符号,它可能因版本而异。