无法理解线性回归的成本函数

时间:2014-01-13 19:05:27

标签: math machine-learning linear-algebra

我真的无法理解以下等式,尤其是1/(2m)

这个等式的目的是什么? 1/(2m)来自哪里?

J(theta_0, theta_1) = 1/(2m) * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2

请解释一下。如何施展???

2 个答案:

答案 0 :(得分:79)

成本函数是

J(theta_0, theta_1) = 1/(2m) * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2

我们h_theta(x^i)表示x^i的模型输出,因此h_theta(x^i) - y^i是错误(假设y^i是正确的输出)。

现在,我们计算此错误的平方[ h_theta(x^i) - y^i ]^2(除去符号,因为此错误可能是正面和负面)并将其与所有样本相加,并以某种方式限制它我们将其标准化 - 只需除以m,所以我们有平均值(因为我们按样本数量排除)平方(因为我们正方形)错误 (因为我们计算错误):

1/m * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2

前面出现的2仅用于以简化衍生,因为当您尝试将其最小化时,您将使用最陡的下降方法,该方法基于关于这个函数的导数。 a^2的导数为2a,我们的函数是某个平方,因此2将取消。这是它存在的唯一原因。

答案 1 :(得分:0)

您希望构建一个能够在各个数据点之间均匀分布错误的模型,因此error = 0和error的平均值= 0;您还应该构建具有最小错误的模型,这相当于最小化均方误差。