Nome do "truque de remodelação" (permita aleatoriamente o conjunto de dados para estimar o viés de um estimador)

8

Você conhece uma referência ou nome para a seguinte maneira de investigar se uma técnica de modelagem complexa é tendenciosa?T

  1. Aplique ao conjunto de dados original. Meça seu desempenho (por exemplo, R ao quadrado na configuração de regressão).T
  2. Permita aleatoriamente a variável de resposta para obter um novo conjunto de dados. Aplique e meça seu desempenho . [Se as observações forem dependentes, esta etapa é mais complicada.]P TP

Se for substancialmente diferente de zero desempenho, concluímos que é enviesado. TPT

A etapa 2 pode ser repetida se os recursos permitirem, o que levaria à distribuição nula de permutação da medida de desempenho. Mas, no meu aplicativo, não posso fazer isso devido a problemas de recursos.

Lembro-me sombriamente de que esse truque de "reorganização" foi usado por alguém para investigar o viés da validação cruzada de deixar um fora (em alguma configuração). Não sei, no entanto, se ele estava na minha situação em que poderia repetir todo o processo apenas uma vez.

Um exemplo em R que mostra o "poder" da seleção reversa ingênua:

# Generate random data set. Only random performance is expected.
n <- 100
p <- 30

set.seed(7567)
y <- rnorm(n)
X <- rnorm(n*p)
dim(X) <- c(n, p)
data <- data.frame(y, X)

# Modelling technique: backward selection with OLS
T <- function(data) {
  step(lm(y ~ ., data = data), trace = 0)
}

# Performance: R-squared
P <- function(fit) {
  summary(fit)$r.squared
}

# Step 1: Compute performance on original data. Happily publish high R-squared...
P(T(data)) # 0.240405

# Step 2: Your mean colleague reshuffles response and gets also R-squared far away from 0
data$y <- data$y[sample(n)]
P(T(data)) # 0.1925726

Conclusão sobre o exemplo: A técnica de modelagem escolhida é extremamente propensa a sobreajuste, pelo menos nessa configuração específica.

Alguma experiência

Uma vez eu usei esse truque de reorganização para verificar se a validação cruzada de algum processo de modelagem tedioso foi implementada corretamente por mim. Sob uma permutação aleatória, CV deu um R ao quadrado de essencialmente 0 (como esperado / desejado).

Michael M
fonte
3
Essa pergunta parece altamente relevante: stats.stackexchange.com/questions/192291/… e a referência citada nela.
Flounderer
2
Boa pesquisa @Flounderer, eu adicionei o link para essa pergunta para a minha resposta para aqueles que querem mais leitura (e talvez conseguir ameba de responder a algumas das upvotes que merece)
IWS

Respostas:

15

Para responder à pergunta no título, o AFAIK é chamado de teste de permutação . No entanto, se é isso que você está procurando, ele não funciona como descrito na pergunta.

Para ser (um pouco) conciso: o teste de permutação realmente funciona embaralhando uma das 'colunas' e executando o teste ou cálculo de interesse. No entanto, o truque é fazer isso várias vezes , embaralhando os dados a cada vez. Em conjuntos de dados pequenos, pode até ser possível executar todas as permutações possíveis. Em conjuntos de dados grandes, você geralmente realiza uma quantidade de permutação que o computador pode suportar, mas que é grande o suficiente para obter uma distribuição da estatística de interesse .

Por fim, você usa essa distribuição para verificar se, por exemplo, a diferença média entre dois grupos é> 0 em 95% da distribuição. Simplificando, este último passo para verificar qual parte da distribuição está acima / abaixo de um determinado valor crítico é o 'valor p' para o seu teste de hipótese.

Se isso for muito diferente do valor-p na amostra original, não diria que há algo errado com o teste / estatística de interesse, mas sua amostra contém determinados pontos de dados que influenciam especificamente o resultado do teste. Pode ser um viés (viés de seleção devido à inclusão de alguns casos estranhos; erro de medição em casos específicos etc.) ou pode ser um uso incorreto do teste (por exemplo, suposições violadas).

Consulte https://en.wikipedia.org/wiki/Resampling_(statistics) para obter mais detalhes

Além disso, consulte a resposta de @amoeba para esta pergunta Se você quiser saber mais sobre como combinar testes de permutação com seleção de variáveis.

IWS
fonte
1
T
5
T
1
@MichaelM O teste de permutação e o teste de randomização são o mesmo teste. Se a estatística levar muito tempo para ser computada, o teste de permutação levará muito tempo para ser executado.
AdamO 16/01/19
@ AdamO: Concordo plenamente sobre o momento. Mas a técnica não tem nada a ver com testar uma hipótese. Trata-se da estimativa de um viés (que iria mais na direção de um aplicativo de autoinicialização). Mas essa é a razão pela qual eu fiz a pergunta!
Michael M
2

Finalmente encontrei a resposta no livro de Frank Harrell "Estratégias de modelagem de regressão" [1] na Seção 5.2.4 (Melhorias na divisão de dados: reamostragem).

"O método de randomização" é apresentado como um método interessante para estimar o otimismo por meio de permutações aleatórias da resposta, especialmente em combinação com a seleção de variáveis ​​(como no exemplo no PO).

Ele se refere, entre outros, a [2] para idéias relacionadas.

O método é muito simples: digamos que sua estratégia de modelagem complicada envolva seleção para frente / trás (e lateralmente) e seu conjunto de dados seja muito pequeno para ter uma divisão limpa de trem / validação / teste. Além disso, você pode não confiar totalmente na validação cruzada, pois sempre significa descartar uma certa proporção dos dados dentro da dobra. Como você pode julgar se seu R-quadrado de 0,7 é válido ou se é principalmente resultado de sobreajuste? O método de randomização funciona da seguinte maneira (aqui falamos sobre o quadrado R, mas pode ser qualquer medida de desempenho interessante). Se sua estratégia for imparcial, você esperaria que o quadrado R fosse próximo de 0 se repetido em um conjunto de dados com variável de resposta permutada aleatoriamente. Digamos que você obtenha um R-quadrado médio de 0,6 em vez de 0 após 20 permutações. Então você sabe que o R-quadrado original de 0. 7 provavelmente não é muito mais que o resultado de sobreajuste. Uma estimativa mais honesta do R-quadrado "verdadeiro" seria 0,7-0,6 = 0,1 (pequeno). Então, você mostrou o quanto sua estratégia se desajustou.

Vantagens do método

  • Muito simples
  • Você sempre usa o conjunto de dados completo

As desvantagens incluem

  • A estimativa de otimismo não parece ser muito precisa
  • O método não é bem conhecido em contraste com a validação cruzada ou a validação de autoinicialização.

[1] Frank Harrell, "Regression Modeling Strategies", 2001. Springer.

[2] R. Tibshirani e K. Knight. O critério de inflação de covariância para seleção de modelo adaptável. JRSS B, 61: 529-546, 1999.

Michael M
fonte
1
+1 Interessante, parece que perdi esse método, enquanto desfruto de votos por minha resposta sobre uma explicação geral dos métodos de reamostragem. Se você pudesse elaborar essa resposta com a forma como esse método de permutação única funciona, isso seria fantástico.
IWS
Não precisa se desculpar! Suas respostas são sempre muito bem-vindas. Na verdade, não há muito a elaborar, mas adicionei algumas informações à resposta.
Michael M
Com base em leituras adicionais, modifiquei a resposta para destacar que, em contraste com o meu OP, geralmente são executadas algumas permutações para calcular o otimismo com precisão suficiente.
Michael M
Aqui está uma publicação recente sobre a técnica: arxiv.org/abs/1801.01489
Michael M