我试着重复从讲座中计算伪逆矩阵的例子。

我使用这个代码
from numpy import *
# https://classes.soe.ucsc.edu/cmps290c/Spring04/paps/lls.pdf
x = np.array([[-11, 2],[2, 3],[2, -1]])
print(x)
# computing the inverse using pinv
a = linalg.pinv(x)
print(a)我的计算结果与讲座的结果不同。
我的结果是:
[[-0.07962213 0.05533063 0.00674764]
[ 0.04048583 0.2854251 -0.06275304]]讲座的结果:
[[-0.148 0.180 0.246]
[ 0.164 0.189 -0.107]]我做错了什么?请告诉我!
发布于 2017-10-24 20:04:17
课堂讲稿中有一个错误。看来他们发现了
[-1 2]
A = [ 2 3]
[ 2 -1](注意A0,0从-11到-1)下面是使用该版本的A的计算
In [73]: A = np.array([[-1, 2], [2, 3], [2, -1]])
In [74]: A
Out[74]:
array([[-1, 2],
[ 2, 3],
[ 2, -1]])
In [75]: np.linalg.pinv(A)
Out[75]:
array([[-0.14754098, 0.18032787, 0.24590164],
[ 0.16393443, 0.18852459, -0.10655738]])
In [76]: np.linalg.pinv(A).dot([0, 7, 5])
Out[76]: array([ 2.49180328, 0.78688525])https://stackoverflow.com/questions/46918409
复制相似问题