本章可以类比于单变量线性回归来学习,如果你不了解单变量线性回归的话,建议参考4.单变量线性回归 5.代价函数 6.梯度下降 7.关于4、5、6的小结:三个公式的脉络
多变量线性回归中,我们也构建一个代价函数:
其中:
我们的目标和单变量线性回归问题中一样,是要用 多变量线性回归的批量梯度下降算法 找出使得代价函数最小的一系列参数。
多变量线性回归的批量梯度下降算法为:
求导数后化简得到:
其中:
…
我们开始随机选择一系列的参数值,计算所有的预测结果后,再给所有的参数一个新的值,如此循环直到收敛。
代码示例:
其中:
Python 代码:
def computeCost(X, y, theta):
inner = np.power(((X * theta.T) - y), 2)#(X*𝜃转置)的平方
return np.sum(inner) / (2 * len(X))