多变量线性回归的损失函数和之前的单变量线性回归类似,用到的还是平均损失函数,只是变量维度多了
    image.png
    其中:
    多变量梯度下降 - 图2

    我们的目标和单变量线性回归问题中一样,是要找出使得代价函数最小的一系列参数。
    多变量线性回归的批量梯度下降算法为:
    Repeat {
    多变量梯度下降 - 图3
    }
    即:
    Repeat {
    多变量梯度下降 - 图4
    }
    求导后得到:
    Repeat {
    多变量梯度下降 - 图5
    for (j = 0,1,2…n)
    且同步更新多变量梯度下降 - 图6
    }
    特征维度n>=1时(n>=1)有:
    多变量梯度下降 - 图7
    多变量梯度下降 - 图8
    多变量梯度下降 - 图9
    …….
    ……..

    开始随机选择一系列参数值,计算所有预测结果,再给所有参数一个新的值,如此循环直到收敛,即损失函数局部最小值。代码示例:

    1. def computeCost(X, y, theta):
    2. inner = np.power(((X * theta.T) - y), 2)
    3. return np.sum(inner) / (2* len(X))