O que faz um classificador classificar incorretamente os dados? [fechadas]


9

Poderia ser a partir dos próprios dados? Ou é porque o modelo não pode detectar com eficiência as semelhanças entre os dados ou existem outras razões para classificar incorretamente?


13
Na minha opinião, a questão é muito vaga. Existe algum problema em particular?
Jpmuc # 23/17

1
Conforme escrito, isso pode ser lido como "classificar incorretamente [qualquer] dado". Nesse caso, pode ocorrer mesmo que o modelo seja um reflexo perfeito do processo de geração de dados, desde que o DGP seja estocástico / não determinístico. Ou seja, é de se esperar algum grau de classificação incorreta devido à existência de ruído.
gung - Restabelece Monica

@gung não é simplesmente excessivo?
theGD

3
@theGD, você pode ter um classificador perfeito que classifique incorretamente alguns dados, se o processo não for determinístico. É assim que as coisas são.
gung - Restabelece Monica

Respostas:


19

Vamos supor que você esteja falando de má classificação nos dados de treinamento, ou seja, difícil minimizar a perda no conjunto de dados de treinamento, sem problemas de excesso de dados de teste envolvidos.

Você está certo de que, na maioria dos casos, a classificação incorreta pode vir de "o modelo é muito simples" ou "os dados são muito ruidosos". Eu gostaria de dar dois exemplos para ilustrar melhor.

  1. O modelo é "muito simples" para capturar os "padrões nos dados".

    • O exemplo é mostrado na figura esquerda. Suponha que desejemos usar uma regressão logística / uma linha para separar duas classes, mas as duas classes não são separáveis ​​linearmente.

    • Nesse caso, ainda existem "padrões notáveis ​​nos dados" e, se mudarmos o modelo, podemos melhorar. Por exemplo, se usarmos o classificador KNN, em vez de regressão logística, podemos ter um desempenho muito bom.

  2. Os dados têm muito ruído, é muito difícil executar a tarefa de classificação.

    • O exemplo é mostrado na figura à direita, onde, se você verificar o código, verá duas classes muito semelhantes (duas classes são 2D gaussianas, a média é de , mas o desvio padrão para cada classe é 1,0 ) . É essencialmente uma tarefa muito desafiadora.0,01×21.0

Conjuntos de dados de exemplo, um com duas espirais de malha, um com distribuições gaussianas fortemente sobrepostas

Observe que os dois exemplos são triviais, pois podemos visualizar os dados e o classificador. No mundo real, não é o caso, quando temos milhões de pontos de dados e classificadores super complicados.

Código:

library(mlbench)
set.seed(0)
par(mfrow=c(1,2))
d=mlbench.spirals(500)
plot(d)
lg_fit=glm(d$classes~d$x[,1]+d$x[,2]-1,family=binomial())
abline(0,-lg_fit$coefficients[1]/lg_fit$coefficients[2])

d2=mlbench.2dnormals(500,r=0.01)
plot(d2)

você mencionou o KNN, observe que estou falando de classificação e não de agrupamento, ou seja, quando temos dados de treinamento e teste. O que me deixa um pouco confuso é que, por exemplo, se temos dois tipos de dados, o que significa recursos diferentes para cada dado, o que faz com que o classificador classifique incorretamente os dados de teste no processo de teste? Eu acho que isso me leva ao seu segundo exemplo, o que significa que meus dados têm muito ruído e o modelo está com problemas por causa disso, mas vamos supor que resolvemos que, pela seleção de recursos, ainda pode haver ruído lá fora, mesmo após a seleção de recursos?
Sofia693

ou posso pensar em outro motivo pelo qual meus dois tipos de dados estão realmente compartilhando semelhanças em seus recursos e que podem "enganar" o modelo, poderia ser esse o caso de alguma forma?
Sofia693

@ Sofia693 1. KNN NÃO é Kmeans, é um modelo de classificação. 2. Eu realmente não estou seguindo seus comentários.
Haitao Du

Eu quis dizer que, se tivermos dois grupos (por exemplo, 50 pacientes com autismo e 50 indivíduos saudáveis ​​e os dados forem extraídos da ressonância magnética, onde cada sujeito é representado como um vetor de característica), treino um classificador e uso a técnica Leave One Out. Agora, o modelo pode classificar incorretamente o assunto do teste por causa do ruído (como você mencionou no segundo exemplo), mas podemos usar a seleção de recursos para reduzir o ruído, certo? por que o modelo ainda classifica incorretamente o sujeito do teste? ainda pode haver ruído mesmo após a seleção de recursos?
Sofia693 25/05

Minha segunda suposição é que os dois grupos estão realmente compartilhando semelhanças em seus vetores de recursos, de modo que o modelo está realmente lutando para atribuir o assunto do teste a um dos grupos.
Sofia693

11

Além de @ hxd1011 (+1).

  1. Desequilíbrio de classe em termos relativos ou termos absolutos. Nos dois casos, construímos uma representação inadequada da classe de interesse. Normalmente, o mais tarde é mais difícil de superar. (Referência de exemplo: Aprendendo com dados desequilibrados por He e Garcia)
  2. Critérios de classificação inadequados. Treinamos nosso classificador usando uma função de avaliação inadequada e / ou usamos critérios inadequados para derivar nossa solução final. Problema muito comum ao usar "soluções em lata". (Exemplo de referência: danos causados ​​pela precisão da classificação e outras regras de pontuação de precisão inadequada descontínua por Harrell)
  3. Não há aula na realidade. Desejamos que haja algo lá, mas realmente não há nada. Geralmente, a experiência em domínio afasta as pessoas disso, mas como um recém-chegado, isso sempre é um problema. (Exemplo de referência: Nossa vida diária. Viés de publicação provavelmente também é um problema aqui ...)
  4. Sobreajuste. Temos um modelo decente e um conjunto de dados decente, mas falhamos em treinar a construção apropriada de um modelo irrealista. Geralmente, isso se refere ao ponto 2. (Pontos extras para adaptação insuficiente!) (Referência de exemplo: The Problem of Overfitting by Hawkings)
  5. Deriva do conceito. As coisas mudam e nós não treinamos novamente. Nosso classificador tem excelente desempenho em nossa amostra de marketing "Vendas de Natal" - sim, usar este modelo em julho provavelmente será uma dor ... (Referência de exemplo: Uma pesquisa sobre adaptação de deriva de conceito de Gama et al.)
  6. Vazamento de dados / recursos mágicos. Treinamos a partir de informações que não estarão disponíveis no momento da previsão. Comum quando há dados de eventos / séries temporais. (Exemplo de referência: vazamento na mineração de dados: formulação, detecção e prevenção por Kaufman et al.)

1
Eu não entendo o ponto 3. A pergunta assume alguma noção de "classe" para ter um classificador que está classificando incorretamente alguns dados. Você quer dizer que a rotulagem é inconsistente (a "classe" está mal definida)? Ou que os recursos não contêm nenhuma informação relevante para a tarefa de classificação?
Charles Staats

@CharlesStaats: "os recursos não contêm nenhuma informação relevante para a tarefa de classificação" é uma falha do segundo tipo, "critérios de classificação inadequados".
MSalters

Você acha que etiquetas ruins cairiam em 2 ou merecem uma entrada separada?
Jonas

@CharlesStaats: Assumir " alguma noção de classe " não significa que ela realmente exista e / ou se pode ser suportada pelos dados disponíveis. É por isso que a experiência no domínio é extremamente útil nesses casos; isso nos ajuda a distinguir entre um "problema real" e a tentativa de "ajustar o ruído". Há casos em que os rótulos refletem uma hipótese (por exemplo, potencial para desenvolver uma doença causada por uma mutação aleatória) em vez de uma noção mensurável (por exemplo, o paciente tem a doença causada por uma mutação aleatória).
usεr11852

@ Jonas: Este é um bom ponto; Penso que a rotulagem incorreta deve ser uma entrada separada. Pode ser potencialmente associado ao ponto sobre "os dados são muito barulhentos", levantados pelo hxd1011.
usεr11852
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.