次の方程式、特に1/(2m)
は本当に理解できません。
この方程式の目的は何ですか?そして1/(2m)
はどこから来たのですか?
J(theta_0, theta_1) = 1/(2m) * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2
説明してください。それはどのようにキャストしますか?
コスト関数は
_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
で除算すると、mean(サンプル数で分割するため)squared(平方するため)error (エラーを計算するため):
_1/m * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2
_
前面に表示されるこの_2
_が使用されます導関数の簡略化のみ、それを最小化しようとすると、導関数に基づく最急降下法が使用されるためこの関数の。 _a^2
_の派生物は_2a
_であり、関数は何かの二乗なので、この_2
_はキャンセルされます。これがその存在の唯一の理由です。
エラーをデータポイント全体に均等に分散するモデルを構築する必要があるため、error = 0の合計とerrors = 0の平均。また、誤差が最小のモデルを構築する必要があります。これは、平均二乗誤差を最小化することと同じです。