A Validação Cruzada é inútil, a menos que as Hipóteses sejam aninhadas?

7

Se eu gerar muitos modelos aleatórios (sem considerar os dados) em uma configuração de regressão simplesmente atribuindo aleatoriamente valores de coeficientes e, em seguida, avaliando esses modelos no conjunto de dados com uma métrica de erro e escolhendo o melhor modelo com base nessa métrica de erro, eu ainda executaria em sobreajuste?

Eventualmente, acabaremos com a solução OLS (consulte os comentários). Se for esse o caso, como a Validação Cruzada é diferente desse procedimento? Por exemplo, em uma configuração de regressão Ridge ou Lasso, ainda estou gerando vários modelos (indexados por ) e os avaliando no segmento de dados invisíveis e escolhendo o melhor.λ

Parece-me que o CV funciona bem com métodos de regularização padrão, como Ridge e Lasso, porque os modelos experimentados são um pouco aninhados (ou seja, Ridge é ordenado pela complexidade de Rademacher). Portanto, o princípio de Minimização de Riscos Estruturais entra em ação. Caso contrário, o CV parece um esforço sem saída. Se usarmos a validação cruzada para comparar vários modelos não relacionados, terminaremos com o cenário de geração aleatória de modelos que descrevi acima.

Sob a estrutura de Minimização de risco estrutural, por exemplo no SVM, limita-se o erro e reduz-se a complexidade do modelo. Então, como o CV realmente alcança o mesmo efeito quando aplicado em conjunto com métodos de regularização? O que fazer quando os modelos comparados não são aninhados?

Cagdas Ozgenc
fonte
4
Gerar modelos aleatórios e escolher aquele com menos erro é assintoticamente (se você fizer isso o suficiente) equivalente à regressão OLS porque a solução OLS minimiza o erro ao quadrado.
Ameba
@CagdasOzgenc: é como os macacos digitando Shakespeare / a Bíblia / qualquer texto que você escolher: se você produzir muitos modelos aleatórios, eventualmente a solução dos mínimos quadrados estará entre eles. Eventualmente, mesmo uma sequência dekvezes a solução dos mínimos quadrados dos casos de teste de CV . E isso será selecionado [se você usar o erro ao quadrado como critério de desempenho].
cbeleites descontente com SX
O aprendizado aleatório de recursos também é importante (consulte a rede Random Vector Functional-Link, da qual a controversa Extreme Learning Machine é derivada).
Firebug
11
A premissa desta pergunta é muito confusa. O CV às vezes pode ser ineficaz, mas não vejo (1) como seus modos de falha têm algo a ver com hipóteses aninhadas versus não aninhadas ou com a complexidade de Rademacher, ou (2) como comparar modelos não aninhados tem algo a ver com comparando modelos gerados aleatoriamente.
Paul
@Paul A suposição implícita por trás do CV é que o número de hipóteses comparadas é baixo. Se tivermos muitos modelos para comparar, será superajustado. Normalmente, em uma configuração de Ridge, temos muitas configurações de lambda, portanto, muitas hipóteses. No entanto, a razão pela qual funciona nesse cenário é porque as hipóteses estão aninhadas.
Cagdas Ozgenc

Respostas:

6

Minha lógica me diz que a resposta é sim.

E, como @amoeba apontou: sua lógica está certa.

Como a Validação Cruzada é diferente deste procedimento? O CV em si não tem nada a ver com o seu sobreajuste. O CV é apenas um esquema de como reter casos independentes para testar algum modelo.

Observe que, se você selecionar um modelo com base nos resultados do CV, esse procedimento de seleção de modelo (incluindo o CV) fará parte de seu treinamento .

Você precisa fazer uma validação independente (em vez disso, verificação) desse modelo final (para o qual você pode novamente usar outro CV como estratégia para manter os casos independentes do treinamento - consulte validação cruzada aninhada) para obter uma estimativa confiável de sua desempenho de generalização.

Para reiterar: o problema não é o CV, o problema é a otimização do modelo orientado a dados (seleção).

Nesta perspectiva, a geração de modelo aleatório deveria, em teoria, superajustar menos que uma regressão penalizada, pois minha avaliação está em um segmento de dados invisível maior.

Isso não entendo: por que o tamanho dos dados invisíveis difere?

Existe algo no procedimento CV que de alguma forma atenua o problema de vários testes?

Não.

A única propriedade do CV que ajuda um pouco com vários testes em comparação a uma única divisão é que o CV eventualmente testa todos os casos disponíveis e, portanto, está sujeito a incerteza de variação um pouco menor devido ao número limitado de casos testados. Isso não vai ajudar muito em comparação com a limitação do espaço de pesquisa (ou seja, restringir o número de comparações).

cbeleites descontentes com o SX
fonte
Quando não há muitos dados de treinamento disponíveis, o ajuste de um modelo somente através da validação cruzada é razoável. Eu acho que a troca entre usando todos os dados para a montagem ou salvar uma parte apenas para a validação não é tão clara corte em muitas circunstâncias
Nat
@ Nat: quando não há muitos dados de treinamento disponíveis, recomendo usar o máximo de conhecimento de domínio especializado possível e tentar evitar qualquer ajuste orientado a dados por validação cruzada (ou uma divisão única interna): poucos casos significam as estimativas de CV são incertas, o que dificultará a otimização de qualquer maneira. O CV é melhor que uma única divisão, mas não pode fazer milagres.
cbeleites descontente com SX
Como seria a seleção de modelo não orientado a dados? É como tomar decisões não baseadas em dados? Se eu minimizar o MSE, esses dados são orientados? E se eu minimizar o MSPE?
Nat
11
@Nat: Exemplo para seleção de modelo não orientada a dados: Decidindo o pré-processamento e possivelmente também a complexidade do modelo pelo conhecimento sobre o aplicativo em questão, como: os processos que geram os dados e as informações a serem recuperadas, outras informações ou fatores de confusão envolvidos. A minimização de erros é orientada por dados: você minimiza alguns erros observados nos dados disponíveis. Isso é necessário para ajustar os parâmetros do modelo, mas, na minha experiência, muitas vezes é possível limitar o número dos chamados hiperparâmetros / restringir o espaço de pesquisa dos hiperparâmetros. (I tipicamente <100 casos)
cbeleites infeliz com SX
3

EDIT: Ajustar ou selecionar um modelo com base na validação cruzada está essencialmente tentando minimizar o erro de previsão (por exemplo, erro de previsão ao quadrado médio). Você seleciona um modelo condicional para algum subconjunto de dados de entrada e prevê a saída nos locais deixados de fora. Intuitivamente, é uma previsão porque você está avaliando o modelo em locais fora da amostra. Sua pergunta é o que acontece se o seu conjunto de modelos candidatos for independente dos dados de entrada (ou seja, você não usa nenhum dado ao gerar modelos aleatoriamente).

Essa suposição não é tão diferente de qualquer outro procedimento de ajuste de modelo. Por exemplo, se eu começar com um modelo parametrizado e os parâmetros puderem ser um número real, também tenho um conjunto infinito de modelos candidatos. Nós dois ainda precisamos selecionar o melhor modelo do conjunto de modelos possíveis, minimizando algumas métricas de erro. Portanto, ambas as nossas opções de modelo dependem de alguns dados de treinamento (talvez um subconjunto de todos os dados de treinamento, se estiver usando validação cruzada). Você não especifica uma métrica de erro, portanto, vamos assumir que é erro quadrático médio (MSE). Eu escolho os parâmetros do modelo e, portanto, meu modelo usando algum procedimento de caixa preta, assumindo que a métrica MSE depende dos dados de treinamento. Você escolhe seu modelo no seu conjunto de modelos aleatórios, assumindo a métrica MSE condicional nos dados de treinamento.

Nós escolhemos o mesmo modelo? Depende se você iniciou com diferentes conjuntos de modelos candidatos.

Superestimamos os dados? Depende do conjunto de modelos candidatos com os quais começamos e dos dados de treinamento.

Sabemos que superestimamos os dados? Se fizermos a validação cruzada, podemos verificar o erro de previsão.

RESPOSTA ORIGINAL: Em um sentido amplo, há algum sinal nos dados e algum ruído. Quando superestimamos, estamos essencialmente ajustando o ruído.

Na validação cruzada, deixamos de fora partes dos dados ao ajustar e avaliamos o erro ao prever os pontos deixados de fora. É semelhante a ter dados de treinamento e teste, pois estamos medindo um erro fora da amostra. O modelo deve generalizar bem, independentemente de quais pontos são omitidos. Se ajustarmos o ruído, o modelo não generalizará bem. O conjunto de modelos que estamos comparando provavelmente não inclui aqueles que tentam interpolar um ponto de dados quando ele é omitido dos dados de treinamento. Se o modelo se comportar dessa maneira (por exemplo, comportamento aleatório para melhorar o ajuste), é provável que não tenhamos um procedimento geral razoável de ajuste do modelo e a validação cruzada não possa nos ajudar.

Se você tem um conjunto infinito de modelos e uma quantidade infinita de tempo, acho que em teoria você poderia gerar um modelo que fosse tão bom ou melhor do que qualquer modelo que fosse gerado por qualquer outro procedimento. Como você saberá qual modelo do seu conjunto infinito é? Se for o modelo que interpola os dados de treinamento, sim, ele será super ajustado quando os dados de treinamento forem barulhentos.

Nat
fonte