顽固的线性代数基本的帮助
-
22-08-2019 - |
题
这是我所需要做的-
我有这个方程
Ax=y
其中一个是合理的m*n矩阵(m<=n),以及x和y是矢量的 右尺寸。我知道,我不知道什么x是平等的。我 还知道有没有x在斧头等于完全y。我想找到的矢量x'这样的那个斧头'是尽可能靠近 y。意思是(斧'-y)尽可能靠近(0,0,0,...0).
我知道,我需要使用lstsq功能:http://www.scipy.org/doc/numpy_api_docs/numpy.linalg.linalg.html#lstsq
或svd功能:http://www.scipy.org/doc/numpy_api_docs/numpy.linalg.linalg.html#svd
我不明白的文件。有人可以请出示 我如何使用这些功能为解决我的问题。
谢谢你!!!
解决方案
其他提示
在更新的文档可能有点更有帮助...看起来像你想要
numpy.linalg.lstsq(A, y)
矩阵A的SVD给你正交矩阵U和V和对角矩阵Σ,使得
<强> A 强> = <强>û强>的Σ强>的 V 强> Ť
,其中 的û强>的û强> Ť = <强> I 强>; 的 V 强>的 V 强> Ť = <强> I 强>
因此,如果
<强> X 强>的 A 强> = <强>ý强>
然后
<强> X 强>的û强>的Σ强>的 V 强> Ť = <强>ÿ强>
<强> X 强>的û强>的Σ强>的 V 强> Ť的 V 强> = <强>ý强>的 V 强>
<强> X 强>的û强>的Σ强> = <强>ý强>的 V 强>
<强>û强> Ť <强> X 强>的Σ强> = <强>ý强>的 V 强>
<强> X 强>的Σ强> = <强>û强>的ý强>的 V 强>
<强> X 强> = <强>Σ强> -1 的û强> Ť的ÿ强>的 V 强>
<强> X 强> = <强> V 强> Ť的Σ强> -1 的û强> Ť的ý强>
因此,考虑的SVD的 A 您可以得到的 X
虽然对于一般的矩阵的 AB 强>!= <强> BA 下,这是事实为向量的 X 强>其的 X U 强> = = <强>û强> Ť <强> X 强>
例如,考虑的 X 强> =(X,Y),的û强> =(A,B; C,d):
<强> X 强>的û强> =(X,Y)(A,B; C,d)
=(XA + YC,XB +码)
=(AX + CY,BX + DY)
=(A,C,B,d)(X; Y)
= <强>û强> Ť <强> X 强>
当你看到在价值观这是相当明显的 X ü为圆点的产品的 X 并在 U型列下,并且在值的û强> Ť <强> X 强>是所述的 X 强>的点积和行的的û强> Ť,和行数和列在换位的关系