Equação Normal (Normal Equation)

É um outro método de minimização da função \( J \), assim como o método de gradiente descendente. Essa forma de implementação, muitas vezes pode otimizar o tempo de processamento da função de minimização através de derivadas da função \( J \) a respeito aos \( \theta ' _j \)s igualando-os a zero. Isso nos permite encontrar o valor ótimo para \( \theta \) sem iterações. Fórmula da equação normal é dada abaixo:

\[ \large{} \theta = (X ^T X) ^{-1} X ^T y \]

onde \( X \) é uma matriz na qual a coluna zero tem todos os elementos iguais a 1.

Dessa forma, podemos comparar as duas formas de implementação que temos: Gradient Descent e Normal Equation.

Tabela 1: Comparação entre os métodos Gradient Descent e Normal Equation

Gradient DescentNormal Equation
É necessário definir o valor de \( \alpha \)Não é necessário definir o valor de \( \alpha \)
Muitas iterações são necessáriasNão são necessárias iterações
\( O(kn ^2) \)\( O(n ^3) \) pois precisa calcular a inversa de \( X ^T X \)
Funciona bem quando o valor de \( n \) é grandeLento quando o valor de \( n \) é grande