Reforço de gradiente para regressão linear - por que não funciona?

35

Enquanto aprendia sobre o Gradient Boosting, não ouvi nenhuma restrição sobre as propriedades de um "classificador fraco" que o método usa para criar e agrupar modelos. No entanto, eu não conseguia imaginar uma aplicação de um GB que usa regressão linear e, de fato, quando realizei alguns testes - ele não funciona. Eu estava testando a abordagem mais padrão com um gradiente de soma de resíduos quadrados e adicionando os modelos subseqüentes.

O problema óbvio é que os resíduos do primeiro modelo são preenchidos de tal maneira que não há realmente nenhuma linha de regressão adequada. Minha outra observação é que uma soma dos modelos de regressão linear subsequentes também pode ser representada como um modelo de regressão único (adicionando todas as interceptações e coeficientes correspondentes), portanto não consigo imaginar como isso poderia melhorar o modelo. A última observação é que uma regressão linear (a abordagem mais típica) está usando a soma dos resíduos quadrados como uma função de perda - a mesma que GB está usando.

Também pensei em diminuir a taxa de aprendizado ou usar apenas um subconjunto de preditores para cada iteração, mas isso ainda pode ser resumido em uma única representação de modelo, por isso acho que não traria nenhuma melhoria.

O que estou perdendo aqui? A regressão linear é de alguma forma inadequada para uso com o Gradient Boosting? É porque a regressão linear usa a soma dos resíduos quadrados como uma função de perda? Existem restrições específicas nos preditores fracos para que possam ser aplicados ao Gradient Boosting?

Matek
fonte
Intuitivamente, acho que você não deve usar classificadores, pois a soma deles é o mesmo tipo de classificador. por exemplo, a soma das funções lineares é uma função linear.
user18764
Eu sei que isso é antigo, mas meu entendimento é que a etapa de aumento minimiza a função de perda entre os resíduos atuais e o aluno base (que no seu caso é um regressão linear) multiplicado pela taxa de aprendizado. Assim, enquanto o aluno base minimiza o mse, a função de perda usada pelo booster pode ser a mesma MAPE?
David Waterworth

Respostas:

35

O que estou perdendo aqui?

Eu não acho que você realmente está perdendo alguma coisa!

Outra observação é que uma soma dos modelos de regressão linear subsequentes também pode ser representada como um único modelo de regressão (adicionando todas as interceptações e coeficientes correspondentes), portanto não consigo imaginar como isso poderia melhorar o modelo. A última observação é que uma regressão linear (a abordagem mais típica) está usando a soma dos resíduos quadrados como uma função de perda - a mesma que GB está usando.

Parece-me que você acertou em cheio e deu um breve esboço de uma prova de que a regressão linear é melhor do que impulsionar as regressões lineares nessa configuração.

Para ser pedante, ambos os métodos estão tentando resolver o seguinte problema de otimização

β^=argminβ(y-Xβ)t(y-Xβ)

A regressão linear apenas observa que você pode resolvê-la diretamente, encontrando a solução para a equação linear

XtXβ=Xty

Isso fornece automaticamente o melhor valor possível de dentre todas as possibilidades.β

O reforço, independentemente de seu classificador fraco ser uma regressão de uma variável ou multi-variável, fornece uma sequência de vetores de coeficiente . A previsão final do modelo é, como você observa, uma soma e tem a mesma forma funcional que o regressor linear completoβ1 1,β2,...

Xβ1 1+Xβ2++Xβn=X(β1 1+β2++βn)

Cada uma dessas etapas é escolhida para diminuir ainda mais a soma dos erros ao quadrado. Mas poderíamos ter encontrado a soma mínima possível de erros quadrados nessa forma funcional apenas executando uma regressão linear completa para começar.

Uma possível defesa de impulso nessa situação poderia ser a regularização implícita que ela fornece. Possivelmente (eu não brinquei com isso), você poderia usar o recurso de parada antecipada de um intensificador de gradiente, juntamente com uma validação cruzada, para interromper antes da regressão linear completa. Isso forneceria uma regularização para sua regressão e, possivelmente, ajudaria na adaptação excessiva. Isso não é particularmente prático, pois há opções muito eficientes e bem compreendidas, como a regressão da crista e a rede elástica nessa configuração.

O impulso brilha quando não há forma funcional concisa ao redor. Aumentar as árvores de decisão permite que a forma funcional do regressor / classificador evolua lentamente para ajustar-se aos dados, geralmente resultando em formas complexas que não se poderia imaginar com as mãos e os olhos. Quando uma forma funcional simples é desejada, o aumento não ajuda a encontrá-la (ou pelo menos é provavelmente uma maneira bastante ineficiente de encontrá-la).

Matthew Drury
fonte
2
Gosto da resposta, mas, para ser um pouco pedante, da regressão é o melhor estimador imparcial e linear. A falta de imparcialidade pode permitir que você se apresente um pouco melhor, especialmente sob alta multicolinearidade, algo que você evitou no final. β
Jonathan Lisic
Essa é uma resposta muito boa e clara. Obrigado pela confirmação / explicação Matthew!
18715 Matek
"O impulso brilha quando não existe uma forma funcional concisa". Esta é a resposta que estou procurando. Então, só quero confirmar, quer dizer a resposta da minha pergunta é sim, mas ninguém uso linear modelo como base de aluno ?, stats.stackexchange.com/questions/231286/...
Haitao Du
5

A matriz de projeção de mínimos quadrados é dada por

X(XTX)-1 1XT

Podemos usar isso para obter diretamente nossos valores previstos , por exemploy^

y^=X(XTX)-1 1XTy

Digamos que você faça uma regressão e, posteriormente, calcule seus resíduos

e=y-y^=y-X(XTX)-1 1XTy

E então você usa esse vetor residual e como sua nova variável dependente na próxima regressão. Use a matriz de projeção novamente para calcular diretamente as previsões dessa segunda regressão e chame essas novas previsões :y^2

y^2=X(XTX)-1 1XTe=X(XTX)-1 1XT(y-X(XTX)-1 1XTy)=X(XTX)-1 1XTy-X(XTX)-1 1XTX(XTX)-1 1XTy=X(XTX)-1 1XTy-X(XTX)-1 1XTy=0 0

Uma razão para isso é que, por construção, o vetor residual e da regressão inicial é ortogonal ao espaço X, ou seja, é uma projeção ortogonal de y ao espaço X (você encontrará belas imagens visualizando isso na literatura )y^

Isso significa que a abordagem simples de ajustar uma regressão e, em seguida, ajustar uma nova regressão nos resíduos da primeira regressão não resultará em nada sensato, porque X não está totalmente correlacionado com e.

Escrevo isso porque você disse que não há realmente uma nova linha para ajustar que corresponda às derivações acima.

kirtap
fonte