Qual é a diferença entre técnicas de mínimos quadrados e pseudo-inversas para regressão linear?

11

Eu estou querendo saber a diferença entre eles. Basicamente, eles fazem o mesmo trabalho no final, encontrando coeficientes de parâmetros, mas parecem diferentes da maneira como encontramos os coeficientes. Para mim, o método dos mínimos quadrados parece usar diferenciação e forma de matriz para encontrar os coeficientes e o pseudo-inverso parece usar apenas manipulação de matriz, mas como posso dizer a diferença entre eles? Ou não há diferença alguma?

user122358
fonte
A matriz pseudo-inversa de Moore-Penrose, por definição, fornece uma solução de mínimos quadrados. Mas o conceito de mínimos quadrados também pode ser derivado da estimativa de máxima verossimilhança no modelo normal.
Asukasz Grad

Respostas:

13

No contexto da regressão linear, 'mínimos quadrados' significa que queremos encontrar os coeficientes que minimizam o erro ao quadrado. Ele não especifica como essa minimização deve ser executada e há muitas possibilidades. Multiplicar o vetor de resposta pelo pseudo-inverso de Moore-Penrose da matriz regressora é uma maneira de fazê-lo e, portanto, é uma abordagem para a regressão linear de mínimos quadrados (como outros já apontaram).

Podem surgir diferenças entre os métodos quando a matriz regressora não possui classificação completa. Isso pode acontecer, por exemplo, quando o número de variáveis ​​excede o número de pontos de dados. Nesse caso, existem infinitas opções de coeficientes ótimos. Os métodos diferem na maneira como escolhem uma solução desse conjunto infinito. A característica distintiva do método pseudoinverso nessa situação é que ele retorna a solução com a norma mínima .2

user20160
fonte
Esta é a resposta certa, mas eu seria mais específico, ela retorna, a solução mínima de norma L2, pois existem infinitas maneiras de definir sua norma e é importante observar que a solução não será a melhor, por exemplo no sentido da norma L0 e L_infinity.
boomkin
Muito verdadeiro. Eu quis dizer L2 implicitamente, mas editado para ser mais específico, como você sugere.
usar o seguinte comando
3

Depende do que você quer dizer com "técnicas de diferenciação". Existem dois métodos que eu pude entender com isso:

  • Use a diferenciação para derivar o gradiente e execute a descida do gradiente na superfície do erro. No entanto, isso seria bastante incomum para regressão linear (mas não para outros tipos de regressão).

  • Use diferenciação para derivar o gradiente e use-o para determinar analiticamente um mínimo, definindo o gradiente como zero.

O primeiro método é muito diferente do pseudo-inverso. O segundo não é. Se você realizar a diferenciação e resolver a equação resultante da configuração do gradiente para zero, obterá exatamente o pseudo-inverso como uma solução geral.

Se você pensar sobre isso, faz muito sentido. Se diferentes técnicas levariam a diferentes coeficientes, seria difícil dizer quais são as corretas. Se eles gerarem os mesmos coeficientes, também deve ser o caso, de que você pode derivar as equações usadas para um método do outro.

LiKao
fonte
3

Como foi apontado nas outras respostas, multiplicar pelo pseudo-inverso é uma das maneiras de obter uma solução de mínimos quadrados.

É fácil ver porque. Digamos que você tenha pontos no espaço dimensional: kn

X=[1x11x12x13x1n1x21x22x23x2n1xk1xk2xk3xkn]

Deixe que cada ponto correspondente tenha um valor em : Y

Y=[y1y2yk]

Você deseja encontrar um conjunto de pesos

W=[w1w2wn]

de modo que o erro quadrado entre e seja minimizado, ou seja, a solução dos mínimos quadrados: , em que (você pode ver facilmente que é a soma dos erros quadráticos).XWYminWf(W)f(W)=(YXW)T(YXW)f(W)

Fazemos isso localizando a derivada de por e definindo-a como :f(W)W0

δfδW=δ(YXW)T(YXW)δW=δ(YTYWTXTYYTXW+WTXTXW)δW=δ(YTY2YTXWYTXW+WTXTXW)δW=δYTY2YTXW+WTXTXWδW=2YTX+2WTXTX

Configurando a derivada para :0

2WTXTX=2YTX
XTXW=XTY
(XTX)-1 1XTXW=(XTX)-1 1XTY
W=(XTX)-1 1XTY

Dessa forma, podemos derivar a matriz pseudo-inversa como solução para o problema dos mínimos quadrados.

rinspy
fonte
2

A solução pseudo-inversa é baseada no erro do quadrado mínimo, como Łukasz Grad apontou. Ou seja, você está realmente resolvendo o problema de minimização de,

E(W)=1 12(y(Eu)-WTx(Eu))2

diferenciando o erro wrt . Então você obtém a solução: . (Observe que pseudo-inverso não é inverso. Portanto, você não pode interpretar a solução como igual a , que pode parecer uma solução de diretamente com a manipulação de matriz. Outro tópico sobre como encontrar o pseudo -inverso.)WW=(XTX)-1 1XTYX-1 1YXW=Y

Se estiver a pedir sobre a solução à base de covariância , que pode ser interpretado como uma solução directa com base na relação linear entre e . Na verdade, essa solução também é estritamente deduzida do erro do quadrado mínimo, e a diferença não é essencial da pseudo-inversa. Essa ainda é a solução pseudo-inversa, mas sabendo que sua linha definitivamente passará pelo ponto dos valores médios . Portanto, a medida de erro pode ser reescrita como,W=cov(X,Y)vumar(X)XY(X¯,Y¯)

E(W)=1 12((y(Eu)-y¯)-WT(x(Eu)-x¯))2

Quando você usa para representar e para representar , sua solução com pseudo-inversa é a mesma que com covariância. A diferença é, agora você tem que calcular a interceptação separadamente, porque, por subtracing os valores médios de e , você centrar praticamente as coordenadas em e sua linha passa, portanto, a interceptação é zero. Você o novo sistema de coordenadas de volta ao original calculando a interceptação com . x-x¯xy-y¯yxy(x¯,y¯)W0 0=y¯-WTx¯

Xiao-Feng Li
fonte