我卡在了使用Python实现梯度下降的部分。
梯度下降的公式为:
for iter in range(1, num_iters):
hypo_function = np.sum(np.dot(np.dot(theta.T, X)-y, X[:,iter]))
theta_0 = theta[0] - alpha * (1.0 / m) * hypo_function
theta_1 = theta[1] - alpha * (1.0 / m) * hypo_function
出现了错误:
---> hypo_function = np.sum(np.dot(np.dot(theta.T, X)-y, X[:,iter])) ValueError: 形状为 (1,97) 和 (2,) 的数组无法对齐:97(第 1 维) != 2(第 0 维)
PS:这里的 X 是 (2L, 97L) 的,y 是 (97L,) 的,theta 是 (2L,) 的。