Estou tendo dificuldades para acessar a mesma página que meu supervisor quando se trata de validar meu modelo. Analisei os resíduos (observados em relação aos valores ajustados) e usei isso como argumento para discutir os resultados obtidos pelo meu modelo, no entanto, meu supervisor insiste que a única maneira de validar um modelo é fazer um subconjunto aleatório dos meus dados, gere o modelo com 70% dele e aplique o modelo nos 30% restantes.
O problema é que minha variável de resposta é inflada em zero (85% dela, para ser mais específica) e eu prefiro não criar um subconjunto, pois já é muito difícil convergir para um resultado.
Então, minha pergunta é: quais são as formas possíveis (e cientificamente aceitáveis) de validar um modelo? O subconjunto de dados é a única maneira? Se possível, faça referência a suas perguntas com artigos / livros para que eu possa usá-lo como argumento ao apresentar minhas alternativas.
fonte
Respostas:
Para começar, eu sugeriria que geralmente é bom desconfiar das declarações de que há apenas umamaneira de fazer alguma coisa. Dividir uma amostra obtida em um conjunto de dados de "treinamento" e "teste" é uma abordagem comum em muitos aplicativos de aprendizado de máquina / ciência de dados. Muitas vezes, essas abordagens de modelagem estão menos interessadas no teste de hipóteses sobre um processo subjacente de geração de dados, ou seja, elas tendem a ser um pouco ateóricas. De fato, principalmente esses tipos de divisões de treinamento / teste só querem ver se o modelo está se ajustando demais em termos de desempenho preditivo. Obviamente, também é possível usar uma abordagem de treinamento / teste para verificar se um determinado modelo se replica em termos de quais parâmetros são "significativos" ou para ver se as estimativas dos parâmetros estão dentro dos intervalos esperados nas duas instâncias.
Em teoria, validar ou invalidar modelos é o que a ciência, em termos gerais, deve estar fazendo. Pesquisadores independentes, examinando separadamente, gerando e testando hipóteses que apóiam ou refutam argumentos sobre uma teoria para saber por que ou em que circunstâncias um fenômeno observável ocorre - que é o empreendimento científico em uma casca de noz (ou pelo menos em uma frase excessivamente longa). Então, para responder sua pergunta, para mim, mesmo as divisões de treinamento / teste não estão "validando" um modelo. Isso é algo que leva o peso de anos de evidências acumuladas por vários pesquisadores independentes que estudam o mesmo conjunto de fenômenos. No entanto, admitirei que essa tomada pode ser uma diferença na semântica sobre o que eu vejo como validação de modelo versus o que o termo validação passou a significar nas configurações aplicadas ...
Dependendo da sua abordagem de dados e modelagem, nem sempre é apropriado do ponto de vista estatístico dividir sua amostra em conjuntos de treinamento e teste. Por exemplo, amostras pequenas podem ser particularmente difíceis de aplicar essa abordagem. Além disso, algumas distribuições podem ter certas propriedades, dificultando a modelagem, mesmo com amostras relativamente grandes. Seu caso inflado com zero provavelmente se encaixa nessa última descrição. Se o objetivo é chegar a uma aproximação da "verdade" sobre um conjunto de relações ou processos subjacentes que se acredita serem responsáveis por algum fenômeno, você não será bem atendido se conscientemente adotar uma abordagem insuficiente para testar uma determinada hipótese. Portanto, talvez o primeiro passo seja realizar uma análise de poder para verificar se você provavelmente replicaria a descoberta de interesse em seus dados subconjuntos.
Outra opção é especificar vários modelos para ver se eles "melhoram" os dados observados. O objetivo aqui seria identificar o melhor modelo dentre um conjunto de alternativas razoáveis. Este é um argumento relativo, não absoluto, que você estaria fazendo sobre o seu modelo. Essencialmente, você está admitindo que pode haver outros modelos que poderiam ser postulados para explicar seus dados, mas seu modelo é o melhor do conjunto de alternativas testado (pelo menos você espera). Todos os modelos do conjunto, incluindo o modelo hipotético, devem ser fundamentados teoricamente; caso contrário, você corre o risco de criar um monte de palhaços estatísticos.
Também existem fatores de Bayes nos quais você pode calcular o peso da evidência que seu modelo fornece, dados seus dados, para uma hipótese específica relativa a cenários alternativos.
Isso está longe de ser uma lista exaustiva de opções, mas espero que ajude. Vou descer da caixa de sabão agora. Lembre-se de que todo modelo em todo estudo publicado sobre comportamento humano está incorreto. Quase sempre existem variáveis omitidas relevantes, interações não modeladas, populações imperfeitamente amostradas e simplesmente um antigo erro de amostragem em jogo ofuscando a verdade subjacente.
fonte
A divisão de dados geralmente é uma maneira não competitiva de validação interna. Isso ocorre por causa da volatilidade séria - modelo 'final' diferente e 'validação' diferente após a re-divisão, e porque o erro quadrático médio da estimativa (de coisas como erro médio de previsão absoluta e ) é maior que um bom procedimento de reamostragem como o bootstrap. Abordo isso em detalhes no livro Estratégias de modelagem de regressão e nas notas do curso. A reamostragem tem uma grande vantagem adicional: expor a volatilidade na seleção de recursos.R2
fonte
Eu acho que as respostas aqui divergem porque a pergunta é um tanto pouco clara: o que você quer dizer com "validação"?
Uma divisão 70/30 (ou uma validação cruzada para esse assunto) geralmente é realizada para avaliar o desempenho preditivo de um modelo ou de uma cadeia de análise inteira (possivelmente incluindo a seleção do modelo). Essa validação é particularmente importante se você estiver comparando diferentes opções de modelagem em termos de desempenho preditivo.
É outro caso inteiramente se você não deseja selecionar modelos e também não está interessado no desempenho preditivo como tal, mas está interessado em inferência (estimativas de regressão / valores-p) e deseja validar se o seu modelo / erro pressupõe do GLMM são adequados. Nesse caso, seria possível prever o afastamento e comparar as previsões com os dados observados, mas o procedimento muito mais comum é fazer uma análise residual. Se você precisa provar isso ao seu supervisor: isso é basicamente o que todos os manuais de estatísticas ensinam a fazer logo após a regressão linear.
Veja aqui como executar uma análise residual para GLMMs (incluindo inflação zero com glmmTMB, que eu preferiria sobre glmmadmb) com o pacote DHARMa (exoneração de responsabilidade: sou o mantenedor).
fonte
A resposta curta é sim, você precisa avaliar o desempenho do seu modelo em dados não utilizados no treinamento.
As técnicas modernas de construção de modelos são extremamente boas para ajustar dados arbitrariamente bem e podem facilmente encontrar sinal no ruído. Assim, o desempenho de um modelo nos dados de treinamento é quase sempre tendencioso.
Vale a pena explorar o tópico da validação cruzada (mesmo que você não esteja ajustando os hiperparâmetros) para entender melhor por que mantemos os dados, quando funcionam, quais suposições estão envolvidas etc. Um dos meus trabalhos favoritos é :
Nenhum estimador imparcial da variância da validação cruzada da dobra k
fonte
rms
pacotevalidate
e nascalibrate
funções do R. Com este bootstrap, não há decisões únicas sobre a retenção de dados. Como minhas anotações do livro e do curso do RMS descrevem em detalhes, a quantidade de sobreajuste é estimada ao ver quanto um modelo desenvolvido em uma amostra de bootstrap se desfaz quando aplicado à amostra completa original (sobreposta). O bootstrap precisa repetir todas as etapas de modelagem novamente para cada iteração.