【发布时间】:2017-04-04 23:11:56
【问题描述】:
我正在计算linear regression with weight-decay 的权重,即通常我试图找到beta = (X'X + lambda I)^-1 X'Y 其中X 有n 行D 的每个特征和Y 是输出向量X的每一行。
我一直在使用以下方法进行拟合,没有偏见:
def wd_fit(A, y, lamb=0):
n_col = A.shape[1]
return np.linalg.lstsq(A.T.dot(A) + lamb * np.identity(n_col), A.T.dot(y))
我还想计算拟合的偏差或截距项,而不是让它通过原点。我想保持对 lstsq 的相同调用,所以如果我可以执行一些矩阵变换,那将是理想的。我的倾向是添加 1s somewhere 的列,以便 X_mod say 然后具有 D+1 特征,其中最后一个与截距值相关,但我不太确定应该在哪里或者即使它是正确的。
【问题讨论】:
-
你能提供更多关于你试图实现的方程式的信息吗? (编辑您的问题)
-
@Hida 我添加了一些信息,如果您需要更多信息,请告诉我。谢谢。
标签: python numpy machine-learning linear-regression