多元线性回归的梯度下降

Gradient Descent For Mutivariate Linear Regression

好的,那么这个算法到底是什么意思呢?

我所知道的:

i) alpha : 梯度下降的步长有多大。

ii) 现在,∑{ hTheta[x(i)] - y(i) } :指给定 Theta 值的总误差。

误差指的是预测值{hTheta[x(i)]}与实际值的差异[y(i)]

∑{ hTheta[x(i)] - y(i) } 为我们提供了所有训练示例的所有误差的总和。

最后的Xj^(i)代表什么?

我们在为多变量线性回归实现梯度下降时是否在执行以下操作?

Theta (j) 减去:

{ 第一个训练样例的误差乘以第一个训练样例的第 j 个元素。加上

第二个训练样例的误差乘以第二个训练样例的第 j 个元素。加上

.

.

.

PLUS 第 n 个训练样例的误差乘以第 n 个训练样例的第 j 个元素。 }

Gradient Descent 是一种用于查找函数最小值的迭代算法。当给定一个凸函数时,保证在给定足够小的 alpha 的情况下找到函数的全局最小值。这是求函数 J 的最小值的梯度下降算法:

想法是以学习率 alpha 向梯度的相反方向移动参数。最终它会下降到函数的最小值。

我们可以为每个θ轴重写这个参数更新:

在多元线性回归中,优化的目标是最小化误差平方和:

这个cost function的偏导数可以通过代入微分得到,这里我们用elementary power rule,2减1的幂,取2作为系数,去掉1/2的系数。然后我们把h(x)的导数对theta_j,也就是向右x_j

这里,x_j^(i)表示h_theta(x^(i))对theta_j的偏导数。 x_j^(i)是第i个数据的第j个元素