Escolha entre diferentes regressões robustas em R

8

Estou escrevendo um programa para avaliar imóveis e realmente não entendo as diferenças entre alguns modelos de regressão robustos, é por isso que não sei qual escolher.

Eu tentei lmrob, ltsRege rlm. para o mesmo conjunto de dados, todos os três métodos forneceram valores diferentes para os coeficientes.

Eu pensei que o melhor é usar ltsReg, porque, summary(ltsReg())fornece informações sobre R-squarede p-valuese isso vai me ajudar a decidir se sobre aceitar ou rejeitar o modelo.

Você acha que ltsRegé uma boa escolha?

EDIT: Acabei de ler nas Estatísticas de qualidade do ajuste que o quadrado R ajustado é geralmente o melhor indicador de ajuste da qualidade

Paulo
fonte
4
Ambos os valores de p e pode ser enganosa de modo a escolher um pacote baseado no fato de que ela exiba-los não é realmente uma boa critérios para essa escolha ...R2
Tim
então como posso decidir se o modelo é válido sem plotá-lo?
Paul
2
Considere também a regressão ordinal, pois ela pode ser mais robusta, interpretável e mais poderosa.
Frank Harrell
@ user603: Eu confirmo. para a avaliação de um imóvel, crio vários modelos, que contêm diferentes números de características (por exemplo: 1. preço ~ área de vida + número de piso + número + idade + ...).
Paul
2
Alguém quer fechar esta pergunta! Eu não acho que isso esteja certo, mesmo que superficialmente seja sobre a escolha de funções R, é realmente sobre como e por que escolher métodos de regressão robustos, isto é, ontopicos.
precisa saber é o seguinte

Respostas:

10

Na notação que utilizarei, será o número de variáveis ​​de design (incluindo o termo constante), n o número de observações com n 2 p + 1 (se essa última condição não for atendida, o pacote não teria retornado um valor ajuste, mas um erro, então suponho que ele seja atendido). por o vetor de coeficientes estimado por FLTS ( ) e os coeficientes estimados por MM ( ). Também vou escrever:pnn2p+1 β HHβ^FLTSltsRegβ^MMlmrob

ri2(β^)=(yixiβ^)2

(esses são os resíduos quadráticos, não os padronizados!)

A rlmfunção se encaixa em uma estimativa 'M' de regressão e, como a proposta de @Frank Harrell feita nos comentários de sua pergunta, não é robusta para discrepâncias no espaço de design. A regressão ordinal tem um ponto de ruptura (a proporção de seus dados que precisa ser substituída por valores discrepantes para extrair os coeficientes ajustados para valores arbitrários) de essencialmente o que significa que um único discrepante (independentemente de !) É suficiente para tornar o ajuste sem sentido . Para estimativas de regressão M (por exemplo, regressão Huber M), o ponto de ruptura é essencialmente . Isso é um pouco mais alto, mas na prática ainda é desconfortavelmente próximo de 0 (porque muitas vezes será grande). A única conclusão que pode ser extraída den 1 / ( p + 1 ) p p + 11/nn1/(p+1)prlmencontrar um ajuste diferente dos outros dois métodos é que ele foi influenciado por outliers de design e que deve haver mais de deles em seu conjunto de dados.p+1

Por outro lado, os outros dois algoritmos são muito mais robustos: seu ponto de ruptura está abaixo de e, o que é mais importante, não diminui à medida que aumenta. Ao ajustar um modelo linear usando um método robusto, você assume que pelo menos observações em seus dados não são contaminadas. A tarefa desses dois algoritmos é encontrar essas observações e ajustá-las o melhor possível. Mais precisamente, se denotarmos:P h = ( n + p + 1 ) / 2 + 11/2ph=(n+p+1)/2+1

HFLTS={i:ri2(β^FLTS)qh/n(ri2(β^FLTS))}HMM={i:ri2(β^MM)qh/n(ri2(β^MM))}

(onde é o quantil do vetor )qh/n(ri2(β^MM))h/nri2(β^MM)

então ( ) tenta ajustar as observações com os índices em ( ).β^MMβ^FLTSHMMHFLTS

O fato de haver grandes diferenças entre e indica que os dois algoritmos não identificam o mesmo conjunto de observações que os outliers. Isso significa que pelo menos um deles é influenciado pelos outliers. Nesse caso, usar o (ajustado) ou qualquer uma das estatísticas de um dos dois ajustes para decidir qual usar, embora intuitivo, é uma péssima idéia: ajustes contaminados geralmente têm resíduos menores do que os limpos (mas desde que o conhecimento de por esse motivo, em primeiro lugar, usamos estatísticas robustas, presumo que o OP esteja ciente desse fato e que não precise me aprofundar nisso.β^FLTSβ^MMR2

Os dois ajustes robustos dão resultados conflitantes e a pergunta é qual é a correta? Uma maneira de resolver isso é considerar o conjunto:

H+=HMMHFLTS

porque , . Além disso, se ou estão livres de , o mesmo ocorre com . A solução que proponho explora esse fato. Calcular:h[n/2]#{H+}pHMMHFLTSH+

D(H+,β^FLTS,β^MM)=iH+(ri2(β^FLTS)ri2(β^MM))

Por exemplo, se , então, se encaixa melhor nas boas observações que e, portanto, confio em mais. E vice versa.β F L T S β H H β F L T SD(H+,β^FLTS,β^MM)<0β^FLTSβ^MMβ^FLTS

user603
fonte
1
+1. Eu acho que você está usando para significar arredondar para baixo para a função inteira ou de piso . Acho a última notação mais explícita. É fácil supor que os leitores novos dessa notação para arredondamento de número inteiro assumam que colchetes são apenas colchetes. [  ]  
Nick Cox