Intervalo de confiança para precisão de classificação validada cruzada


11

Estou trabalhando em um problema de classificação que calcula uma métrica de similaridade entre duas imagens de raios-x de entrada. Se as imagens forem da mesma pessoa (rótulo de 'right'), uma métrica maior será calculada; imagens de entrada de duas pessoas diferentes (rótulo de 'errado') resultarão em uma métrica mais baixa.

Usei uma validação cruzada estratificada de 10 vezes para calcular a probabilidade de classificação incorreta. Meu tamanho atual da amostra é de cerca de 40 correspondências corretas e 80 correspondências incorretas, em que cada ponto de dados é a métrica calculada. Estou recebendo uma probabilidade de classificação incorreta de 0,00, mas preciso de algum tipo de análise de intervalo / erro de confiança sobre isso.

Eu estava pensando em usar um intervalo de confiança de proporção binomial (em que usaria os resultados da validação cruzada como uma etiqueta correta ou uma etiqueta incorreta para o meu número de sucessos). No entanto, uma das suposições por trás da análise binomial é a mesma probabilidade de sucesso para cada tentativa, e não tenho certeza se o método por trás da classificação de 'certo' ou 'errado' na validação cruzada pode ser considerado a mesma probabilidade de sucesso.

A única outra análise em que posso pensar é repetir a validação cruzada X vezes e calcular a média / desvio padrão do erro de classificação, mas não tenho certeza se isso é apropriado, pois eu estaria reutilizando os dados do meu tamanho da amostra relativamente pequeno várias vezes.

Alguma ideia? Estou usando o MATLAB para todas as minhas análises e tenho a caixa de ferramentas Estatísticas. Gostaria de receber toda e qualquer assistência!


A probabilidade de classificação incorreta de 0,00 significa que você obtém 100% de precisão de classificação em cada uma das 10 dobras de validação cruzada?
Ameba diz Reinstate Monica

Sim isto está correcto. Cada uma das dobras não resultou em classificações incorretas; os 0,00 que relatei representam o número total de classificações incorretas (0) do número total de casos de teste (120).
27414 Sean

BTW, o que exatamente você quer dizer com validação cruzada "estratificada"? Em cada dobra do CV, você tem 120/10 = 12 amostras de teste, com sempre 4 correspondências e 8 não correspondências?
Ameba diz Reinstate Monica

Sim, é exatamente isso - pelo menos é assim que eu entendo como isso está sendo feito no MATLAB. Cada dobra deve conter a mesma proporção dos rótulos de classe 'certo' / 'errado', que é 1: 2.
27414 Sean

Respostas:


7

Influência da instabilidade nas previsões de diferentes modelos substitutos

No entanto, uma das suposições por trás da análise binomial é a mesma probabilidade de sucesso para cada tentativa, e não tenho certeza se o método por trás da classificação de 'certo' ou 'errado' na validação cruzada pode ser considerado a mesma probabilidade de sucesso.

Bem, geralmente essa equvalência é uma suposição também necessária para permitir que você agrupe os resultados dos diferentes modelos substitutos.

Na prática, sua intuição de que essa suposição pode ser violada costuma ser verdadeira. Mas você pode avaliar se esse é o caso. É aqui que acho útil a validação cruzada iterada: A estabilidade das previsões para o mesmo caso por diferentes modelos substitutos permite que você julgue se os modelos são equivalentes (previsões estáveis) ou não.

k
validação cruzada de dobras k iteradas

ik

Você também pode calcular o desempenho para cada iteração (bloco de 3 linhas no desenho). Qualquer variação entre eles significa que a suposição de que modelos substitutos são equivalentes (entre si e além do "grande modelo" construído em todos os casos) não é atendida. Mas isso também mostra quanta instabilidade você tem. Para a proporção binomial, acho que desde que o desempenho real seja o mesmo (ou seja, independente se sempre os mesmos casos são previstos incorretamente ou se o mesmo número, mas casos diferentes são previstos incorretamente). Não sei se seria sensato assumir uma distribuição específica para o desempenho dos modelos substitutos. Mas acho que, de qualquer forma, é uma vantagem sobre o relatório atualmente comum de erros de classificação, se você relatar essa instabilidade.kk


nki

O desenho é uma versão mais recente da fig. 5 neste artigo: Beleites, C. & Salzer, R .: Avaliando e melhorando a estabilidade de modelos quimiométricos em situações de pequeno tamanho de amostra, Anal Bioanal Chem, 390, 1261-1271 (2008). DOI: 10.1007 / s00216-007-1818-6
Observe que, quando escrevemos o artigo, eu ainda não havia percebido completamente as diferentes fontes de variação que expliquei aqui - lembre-se disso. Penso, portanto, que a argumentaçãopara uma estimativa efetiva do tamanho da amostra, dado que não é correta, embora a conclusão da aplicação de que tipos diferentes de tecido em cada paciente contribuam com tanta informação geral quanto um novo paciente com um determinado tipo de tecido provavelmente ainda seja válido (eu tenho um tipo totalmente diferente de evidências que também apontam esse caminho). No entanto, ainda não estou completamente certo disso (nem como fazê-lo melhor e, portanto, poder verificar), e esse problema não está relacionado à sua pergunta.


Qual desempenho usar para o intervalo de confiança binomial?

Até agora, tenho usado o desempenho médio observado. Você também pode usar o pior desempenho observado: quanto mais próximo o desempenho observado estiver de 0,5, maior a variação e, portanto, o intervalo de confiança. Assim, os intervalos de confiança do desempenho observado mais próximo de 0,5 fornecem uma "margem de segurança" conservadora.

Observe que alguns métodos para calcular intervalos de confiança binomial funcionam também se o número observado de sucessos não for um número inteiro. Utilizo a "integração da probabilidade posterior bayesiana", como descrito em
Ross, TD: Intervalos de confiança precisos para proporção binomial e estimativa da taxa de Poisson, Comput Biol Med, 33, 509-531 (2003). DOI: 10.1016 / S0010-4825 (03) 00019-2

(Eu não conheço o Matlab, mas no R você pode usar binom::binom.bayescom os dois parâmetros de forma definidos como 1).


n

Veja também: Bengio, Y. e Grandvalet, Y .: Nenhum estimador imparcial da variância da validação cruzada K-Fold, Journal of Machine Learning Research, 2004, 5, 1089-1105 .

(Pensar mais sobre essas coisas está na minha lista de tarefas ..., mas como eu venho da ciência experimental, gosto de complementar as conclusões teóricas e de simulação com dados experimentais - o que é difícil aqui, pois preciso de uma grande conjunto de casos independentes para testes de referência)


Atualização: justifica-se assumir uma distribuição biomial?

k

n

npn


Olá @cbeleites, acabei de comentar que minha análise do CV resulta em 2 valores únicos para esse conjunto de dados em particular (alguns outros conjuntos de dados têm N valores únicos, com N geralmente menor que 5), assim como a ameba descrita acima. Diante disso, como posso mostrar que minhas previsões são estáveis ​​usando apenas meu único conjunto de dados e currículo? Em relação a uma distribuição binomial, eu estava considerando o intervalo Agresti-Coull (pode funcionar para uma alta taxa de sucesso / 100% de sucesso sem falhas). Parece que você está dizendo que eu posso usar uma distribuição binomial, mas ainda não estou claro como posso justificar essa suposição do mesmo problema de sucesso.
28414 Sean

p

1
@amoeba: Eu não tenho idéia de como combinar a distribuição binomial com a distribuição desconhecida devido à instabilidade em um intervalo de confiança. Portanto, relato os percentis observados para a (in) estabilidade e o binômio ci para o tamanho finito da amostra de teste. Como combiná-los é uma das perguntas de pesquisa que mantenho em mente, mas até agora não encontrei uma solução nem conheci quem já o encontrou. Eu acho que nós chegamos à vanguarda da investigação ...
cbeleites infeliz com SX

1
@ Sean: Você viu minha pergunta recente sobre questões relacionadas? Há uma discussão muito interessante (para mim) nos comentários, e atualmente estou trabalhando em algumas simulações. Cheguei a acreditar que a suposição binomial está muito errada! Você também pode estar interessado em várias referências fornecidas lá que reivindicam a mesma coisa.
Ameba diz Restabelecer Monica

1
@ Sean: Vou tentar manter esses dois tópicos atualizados, o que significa que depois (e se) o problema for esclarecido, tentarei resumir a situação lá e também fornecer uma nova resposta aqui. Por enquanto, você notou este artigo vinculado no outro tópico? Os autores discutem exatamente sua pergunta e fornecem um procedimento de inicialização que eles afirmam que funciona bem. Se eu escrever uma resposta para sua pergunta agora, recomendo o procedimento deles. Mas faria sentido primeiro verificar 24 artigos que o citam.
Ameba diz Reinstate Monica

3

Penso que a sua ideia de repetir a validação cruzada muitas vezes está certa.

Repita o seu currículo, digamos 1000 vezes, cada vez que os dados forem divididos em 10 partes (para CV de 10 vezes) de uma maneira diferente ( não embaralhe os rótulos). Você obterá 1000 estimativas da precisão da classificação. É claro que você reutilizará os mesmos dados, portanto, essas 1000 estimativas não serão independentes. Mas isso é semelhante ao procedimento de autoinicialização: você pode tomar o desvio padrão sobre essas precisões como o erro padrão da média do seu estimador de precisão geral. Ou um intervalo de percentil 95% como o intervalo de confiança de 95%.

Como alternativa, você pode combinar o loop de validação cruzada e o loop de autoinicialização e simplesmente selecionar 10% aleatórios (talvez aleatórios estratificados) de 10% dos seus dados como um conjunto de testes e fazer isso 1000 vezes. O mesmo raciocínio acima se aplica aqui também. No entanto, isso resultará em maior variação em relação às repetições, então acho que o procedimento acima é melhor.

Se sua taxa de classificação incorreta for 0,00, seu classificador não cometerá erros e, se isso ocorrer em cada iteração de autoinicialização, você obterá um intervalo de confiança zero. Mas isso simplesmente significa que seu classificador é praticamente perfeito, muito bom para você.


Olá @amoeba, obrigado pela sua resposta. Você se importaria de explicar um pouco mais sobre sua primeira sugestão de repetir o CV 1000 vezes, permutando aleatoriamente as amostras? Deve haver uma proporção pré-estabelecida do conjunto de testes: conjunto de treinamento (por exemplo, 10:90 para a validação cruzada de 10 vezes)? Acho que estou um pouco incerto de como repetir a validação em dez vezes aumentaria a variação ao longo do tempo.
27414 Sean

1
Receio que o segundo procedimento @amoeba sugerido seja muito otimista: um classificador não perfeito pode ter um desempenho perfeito em um determinado conjunto de dados (por exemplo, suponha que você tenha apenas 4 amostras - é 1: 8 para classificar todos eles corretamente por acaso). Como a ameba observou, medir a variação em diferentes alocações de dobras de teste de trem produzirá um intervalo de confiança de 0 largura de largura, o que é claramente incorreto nesse caso.
Trisoloriansunscreen

1
Penso que, em última análise, esse problema se resume a encontrar a probabilidade de observar dados diferentes do que eu ainda não observei. Obter intervalos de confiança para minha amostra é o que @amoeba sugeriu para minha pergunta original (usei dobras aleatórias para cada iteração de CV), e o resultado parece mais realista (IC95%: [0,0028, 0,0033]). No entanto, não sei se existe outra técnica que seria melhor para a previsão de dados futuros. Talvez algum tipo de abordagem baseada em modelo em que encaixe curvas nos meus dados e calcule sua sobreposição?
28414 Sean

3
@amoeba: Obrigado pelo esclarecimento, acho que não li sua resposta com atenção suficiente. No entanto, ainda estou preocupado com um viés otimista dessa abordagem (ambos os procedimentos). Ao medir a precisão ao tentar diferentes divisões de CV, você estima a variabilidade causada pela divisão arbitrária. No entanto, você ignora o fato de que todos os seus dados são uma amostra aleatória de uma população maior de observações (que você não coletou). Se você possui um pequeno conjunto de dados que, por acaso, alcança desempenho perfeito (independentemente das divisões do CV), seu intervalo de confiança é zero e isso está incorreto.
Trisoloriansunscreen

1
@amoeba: É complicado, já que você não pode inicializar as observações em si (considere um classificador de vizinho mais próximo nesse caso). Estou lutando com esse problema, vamos ver se outra pessoa tem uma ideia.
Trisoloriansunscreen

2

O erro de classificação é descontínuo e uma regra de pontuação inadequada. Tem baixa precisão e, otimizando, seleciona os recursos errados e fornece os pesos errados.


Isso dificilmente pode ser um problema para o OP se ele obtiver 99-100% de precisão de classificação com validação cruzada.
Ameba diz Restabelecer Monica

1
@amoeba: Pode ser um problema também se forem observadas proporções corretas próximas de 100 ou 0%: em contraste com as medidas de desempenho que dependem de pontuações contínuas, qualquer tipo de desempenho medido após dicotomização (endurecimento) a pontuação de classificação contínua não pode indicar as previsões estão chegando perto da fronteira da decisão, desde que ainda estejam do lado correto. No entanto, IMHO existem razões válidas para relatar as medidas de desempenho do tipo proporção (por exemplo, se os seus leitores / colaboradores as entendem, mas não as compreendem, por exemplo, as pontuações de Brier). Eu não queria abrir esse ...
cbeleites infeliz com SX

... linha de discussão, pois não havia indicação de otimização na pergunta (que é onde isso se torna realmente importante).
Cbeleites descontente com SX

Se você está computando a proporção classificada como "corretamente", deve fazê-lo por uma razão, por exemplo, para fazer um julgamento ou tomar uma ação. A proporção é enganosa para esses fins.
Frank Harrell

1
@FrankHarrell: Bem, acho que a razão é denunciá-lo em um artigo. Você acha que as pessoas deveriam parar de relatar precisões de classificação?
Ameba diz Reinstate Monica
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.