我知道如何使用
python通过最小二乘法解决A.X = B:
例:
- A=[[1,1,1],[1,0]]
- B=[1,1]
- X=numpy.linalg.lstsq(A,B)
- print X[0]
- # [ 5.00000000e-01 5.00000000e-01 -1.66533454e-16 -1.11022302e-16]
但是如果用权重矩阵不是身份来解决这个相同的等式呢:
- A.X = B (W)
例:
- A=[[1,1]
- W=[1,2,3,4,5]
谢谢提前,
解决方法
我不知道你如何定义你的体重,但你可以尝试这个,如果合适的话:
- import numpy as np
- A=np.array([[1,0]])
- B = np.array([1,1])
- W = np.array([1,5])
- Aw = A * np.sqrt(W[:,np.newaxis])
- Bw = B * np.sqrt(W)
- X = np.linalg.lstsq(Aw,Bw)