gpt4 book ai didi

c# - SVD 是否包含在 MathNet.Numerics x86 中?

转载 作者:行者123 更新时间:2023-12-02 04:36:34 27 4
gpt4 key购买 nike

我需要计算密集矩阵的奇异值分解,但它似乎没有包含在我使用的包中:MathNet.Numerics x86 v2.4.0.26 下载自Nuget 包管理器。

我正在引用这个问题 Svd recomposition..

链接的答案中包含的语法是:

 var m = DenseMatrix.OfArray(new double[,] {
{ 3, 0, 0, 0, 0 },
{ 0, 2, 4, 0, 0 },
{ 0, 4, 5, -4, 5 },
{ 0, 0, -4, -8, 12},
{ 0, 0, 5, 12, -5 }});


var svd = m.Svd(true); //The method Svd() doesn't seem to be available in v2.4

svd.U() * svd.W() * svd.VT()

svd() 也不是列于 documentation .

我正在寻找使用 MathNet.Numerics x86 库生成 DenseMatrix 的 SVD 的简单示例。

不幸的是,inverse() 方法只返回 NaN,所以我希望使用奇异值分解来近似求逆。

最佳答案

从文档中我找到了奇异值分解的类

MathNet.Numerics.LinearAlgebra. Double/Single/Generic .Factorization.Svd 是抽象类。

MathNet.Numerics.LinearAlgebra. Double/Single/Generic .Factorization.DenseSvd 是实现。将您的矩阵传递给构造函数,结果可通过成员获得。

关于c# - SVD 是否包含在 MathNet.Numerics x86 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21865580/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com