一种在两个矩阵之间查找转换矩阵的算法



假设存在两个矩阵 A 和 B 都是 m * n,是否有一种方法或算法可用于获得满足方程 A * C = B' 的 n * n 矩阵 C(B' 可以通过在 B 上执行几个行交换步骤来获得),其中 C 满足最小平方和误差。 或 A * C = D * B,其中 D(m*m) 是行交换变换矩阵。

谢谢。

如果我没看错你的问题,你有两个矩阵AB,你正在寻找C,这样A * C = B + epsilon你想最小化epsilon的平方和。

你的问题似乎表明你对C有一些限制,但不清楚那是什么。但正如你在答案中指出的,线性求解器会找到一个最小化epsilon平方和的C。求解器并不关心B行的顺序是什么:它会将行交换运算符(如您提到的D)组合到它找到的C中。

有许多不同的线性求解器,像solve这样的简单函数必须选择使用哪个 - 如果您知道自己需要,可以随时明确选择特定的求解器。一个昂贵但非常有用的求解器是摩尔-彭罗斯伪逆:C = pinv(A) * BC保证最小化epsilon的平方和,但也最小化C的平方和。维基百科解释了solve何时可能通过伪逆返回与最小范数解决方案不同的内容。

相关内容

  • 没有找到相关文章

最新更新