quel est l'avantage d'utiliser Gradient Descent dans l'espace de régression linéaire? ressemble à la nous pouvons résoudre le problème (trouver theta0-n que le minimum func de coût) avec une méthode analytique alors pourquoi nous voulons toujours utiliser la descente de gradient pour faire la même chose? Merci
Lorsque vous utilisez les équations normales pour résoudre la fonction de coût analytiquement, vous devez calculer:
Où X est votre matrice d'observations d'entrée et y votre vecteur de sortie. Le problème avec cette opération est la complexité temporelle du calcul de l'inverse d'une matrice nxn qui est O (n ^ 3) et à mesure que n augmente, cela peut prendre très longtemps.
Lorsque n est faible (n <1000 ou n <10000), vous pouvez considérer les équations normales comme la meilleure option pour le calcul thêta, mais pour des valeurs plus élevées Gradient Descent est beaucoup plus rapide, donc la seule raison est le temps :)
Vous devriez fournir plus de détails sur votre problème - de quoi parlez-vous exactement - parlons-nous d'une régression linéaire dans une ou plusieurs dimensions? Celles simples ou généralisées?
En général, pourquoi les gens utilisent-ils le GD?
Et les solutions analytiques? Eh bien, nous les utilisons , votre affirmation est simplement fausse ici (si nous parlons en général), par exemple le [~ # La méthode ~] ols [~ # ~] est une solution analytique sous forme fermée, largement utilisée. Si vous pouvez utiliser la solution analytique, c'est un calcul abordable (car parfois Gd est simplement moins cher ou plus rapide) alors vous pouvez, et même devez - l'utiliser.
Neverlethles, cela est toujours une question de pour et de contre - les solutions analytiques sont fortement liées au modèle, leur mise en œuvre peut donc être inefficace si vous prévoyez de généraliser/modifier vos modèles à l'avenir. Ils sont parfois moins efficaces que leurs approximations numériques, et parfois ils sont tout simplement plus difficiles à mettre en œuvre. Si rien de ce qui précède n'est vrai - vous devriez utiliser la solution analytique, et les gens le font vraiment.
Pour résumer, vous préférez utiliser Gd sur une solution analytique si:
J'ai vu une très bonne réponse de https://stats.stackexchange.com/questions/23128/solving-for-regression-parameters-in-closed-form-vs-gradient-descent
Fondamentalement, les raisons sont les suivantes:
1.Pour la plupart des problèmes de régression non linéaire, il n'y a pas de solution sous forme fermée.
Même en régression linéaire (l'un des rares cas où une solution sous forme fermée est disponible), il peut être impossible d'utiliser la formule. L'exemple suivant montre une manière dont cela peut se produire.