A classe de regressão linear sklearn padrão encontra uma relação linear aproximada entre variável e covariável que minimiza o erro quadrado médio (MSE). Especificamente, seja o número de observações e vamos ignorar a interceptação por simplicidade. Seja o valor variável da ésima observação e sejam os valores das covariáveis da ésima observação. O relacionamento linear tem a forma
onde os coeficientes são dados por
Desejo agora encontrar os coeficientes que minimizam o desvio médio absoluto (MAD) em vez do erro médio quadrático. Ou seja, quero os coeficientes dados por
Entendo que, em nítido contraste com o caso MSE, a falta de diferenciabilidade da função de valor absoluto em implica que não há solução analítica para o caso MAD. Mas o último ainda é um problema de otimização convexa e, de acordo com esta resposta, pode ser facilmente resolvido por meio de programação linear.
É possível implementar essa regressão linear no sklearn? Que tal usar outros kits de ferramentas estatísticas?
fonte
Respostas:
O MAD esperado é minimizado pela mediana da distribuição ( Hanley, 2001, The American Statistician ). Portanto, você está procurando um modelo que produza a mediana condicional , em vez da média condicional .
Este é um caso especial de regressão quantílica, especificamente para o quantil de 50%. Roger Koenker é o principal guru da regressão quantílica ; veja em particular seu livro homônimo .
Existem maneiras de fazer regressão quantílica no Python. Este tutorial pode ser útil. Se você estiver aberto para usar o R, poderá usar o
quantreg
pacote.fonte