Descida de gradiente ou não para regressão linear simples

9

Existem vários sites que descrevem a descida do gradiente para encontrar os parâmetros para a regressão linear simples ( aqui está um deles). O Google também a descreve em seu novo curso de ML (para o público).

No entanto, na Wikipedia , são fornecidas as seguintes fórmulas para calcular os parâmetros:

α^=y¯-β^x¯,β^=Eu=1n(xEu-x¯)(yEu-y¯)Eu=1n(xEu-x¯)2

Além disso, a função LinearRegression do scikit -learn , não possui um n_iter_atributo (número de iterações), como ocorre em muitas outras funções de aprendizagem, o que suponho sugere que a descida de gradiente não esteja sendo usada?

Questões:

  1. Os sites que descrevem a descida em gradiente para regressão linear simples apenas o fazem para ensinar o conceito sobre o modelo mais básico de ML? A fórmula na Wikipedia é o que a maioria dos softwares de estatísticas usaria para calcular os parâmetros (pelo menos o scikit-learn não parece estar usando descida de gradiente)?
  2. O que normalmente é usado para regressão linear múltipla?
  3. Para que tipos de modelos estatísticos de aprendizagem a descida gradiente é normalmente usada para encontrar os parâmetros em relação a outros métodos? Ou seja, existe alguma regra de ouro?
Oliver Angelil
fonte

Respostas:

8
  1. A regressão linear é comumente usada como uma maneira de introduzir o conceito de gradiente descendente.

  2. A fatoração QR é a estratégia mais comum. A fatoração SVD e Cholesky são outras opções. Consulte Precisamos da descida do gradiente para encontrar os coeficientes de um modelo de regressão linear

Em particular, observe que as equações que você escreveu podem demonstrar um condicionamento numérico ruim e / ou custar caro para calcular. A fatoração QR é menos suscetível a problemas de condicionamento (mas não imune) e não é muito cara.

  1. As redes neurais são o exemplo mais proeminente do uso aplicado da descida em gradiente, mas estão longe de ser o único exemplo. Outro exemplo de um problema que requer atualizações iterativas é a regressão logística, que não permite soluções diretas; portanto, normalmente é utilizado Newton-Raphson. (Mas GD ou suas variantes também podem ser usadas.)
Sycorax diz restabelecer Monica
fonte
No link que você forneceu, o item 3: as "equações normais" se referem às equações da minha pergunta aqui? Caso contrário, qual é o termo técnico para essas equações?
26618 Oliver Angelil
1
@OliverAngelil As "equações normais" são de fato o termo do jargão para o sistema linear de equações que são as condições de primeira ordem para o problema comum de otimização dos mínimos quadrados.
Matthew Gunn
Então, as "equações normais" são usadas no software estatístico quando há apenas uma variável preditora? Para n = 100, obtenho coeficientes b0 e b1 idênticos (com 6 casas decimais) quando uso as equações normais versus a função LinearRegression no scikit-learn. Embora eu esteja confuso: # 3 no link afirma que as "equações normais" são uma idéia "TERRÍVEL"?
26618 Oliver Angelil
1
6 casas decimais é mais que suficiente para mim!
Oliver Angelil
2
A resolução da regressão logística de maneira não iterativa requer a minimização de um sistema não linear de equações; em geral, isso é difícil! Essa situação é análoga ao teorema de Abel-Ruffini (nenhuma solução algébrica para raízes de um polinômio de 5º grau): simplesmente não temos métodos de computação direta para resolver exatamente o sistema. IIRC, isso é discutido no capítulo Elementos da Aprendizagem Estatística sobre regressão logística. Provavelmente há um tópico em algum lugar no stats.SE sobre isso também, mas estou tendo problemas para encontrar um bom.
Sycorax diz Restabelecer Monica