我正忙于练习numpy,其中一个问题被卡住了。这是问题:
定义函数multivariate_lr
,该函数实现多元线性回归。该函数有两个参数:矩阵MxN(M行,N个预测变量)和矩阵MxK(M行,K个目标)。该函数应返回系数矩阵NxK:因此,第k列包含第k个目标的系数向量。
对于此任务,您不应该适合截距。具有预测矩阵X和目标矩阵Y的多元线性回归的OLS估算器由定义系数B的矩阵的以下公式给出: $$ B =(X ^ T X)^ {-1} X ^ T Y $$ 该功能应如何工作:
# Example input data
X = numpy.array([[1, -2.9, 1.5],
[1, -0.4, 2.8],
[1, -4.2, 0.9],
[1, -0.7, 2.6],
[1, -1.5, 2.8],
[1, 2.0, 3.6]])
Y = numpy.array([[1.6, -1.6, 1],
[3.2, -3.2, 3],
[5.2, -5.2, 5],
[2.7, -2.7, 2],
[4.3, -4.3, 4],
[-2.3, 2.3, -2]])
coef = multivariate_lr(X, Y)
print(coef)
Example output:
[[-11.27451756 11.27451756 -10.79724219]
[ -2.82477335 2.82477335 -2.63993926]
[ 4.26734863 -4.26734863 4.04619161]]
我尝试使用该模型: 从sklearn.linear_model导入LinearRegression 但这没用
任何帮助都很好