Je ne peux vraiment pas comprendre l'équation suivante, en particulier 1/(2m)
.
Quel est le but de cette équation? Et d'où vient 1/(2m)
?
J(theta_0, theta_1) = 1/(2m) * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2
S'il vous plaît, expliquez. Comment ça jette ???
La fonction de coût est
J(theta_0, theta_1) = 1/(2m) * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2
Par h_theta(x^i)
, nous désignons les sorties de modèle pour x^i
, donc h_theta(x^i) - y^i
est son erreur (en supposant que y^i
est une sortie correcte).
Maintenant, nous calculons le carré de cette erreur [ h_theta(x^i) - y^i ]^2
(qui supprime le signe, car cette erreur peut être à la fois positive et négative) et nous le totalisons sur tous les échantillons. Nous le normalisons d'une manière ou d'une autre - simplement en divisant par m
, de sorte que have mean (car nous divisons par le nombre d'échantillons) carré (car carré) erreur (parce que nous calculons une erreur):
1/m * sum_(i=1)^m [ h_theta(x^i) - y^i ]^2
Ce 2
qui apparaît à l'avant est utilisé uniquement pour simplifier la dérivée , car lorsque vous essayez de la minimiser, vous utiliserez la méthode de descente la plus raide, qui repose sur la dérivée de cette fonction. Le dérivé de a^2
est 2a
et notre fonction est un carré de quelque chose, donc ce 2
s'annulera. C'est la seule raison de son existence.
vous voulez créer un modèle qui répartira les erreurs uniformément sur vos points de données, de sorte que la somme d'erreur = 0 et la moyenne des erreurs = 0; vous devez également créer le modèle qui comporte le moins d'erreurs, ce qui revient à minimiser l'erreur quadratique moyenne.