文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
朴素解法
回想一下,我们想找到
,来最小化:

另一种思考方式是,我们对向量 b 最接近 A 的子空间(称为 A 的范围)的地方感兴趣。 这是 b 在 A 上的投影。由于
必须垂直于 A 的子空间,我们可以看到:

使用了
因为要相乘 A 和
的每列。
这让我们得到正规方程:

def ls_naive(A, b):
return np.linalg.inv(A.T @ A) @ A.T @ b
%timeit coeffs_naive = ls_naive(trn_int, y_trn)
# 45.8 µs ± 4.65 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)
coeffs_naive = ls_naive(trn_int, y_trn)
regr_metrics(y_test, test_int @ coeffs_naive)
# (57.94102134545707, 48.053565198516438)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论