280 likes | 389 Views
Mineração de dados. Classificação: avaliação de modelos Prof. Luis Otavio Alvares (INE/UFSC) Parte desta apresentação é baseada em material do prof. Paulo Engel (II/UFRGS). Relembrando Classificação. Exemplo de dados para concessão de empréstimo bancário. montante. médio. baixo. alto.
E N D
Mineração de dados Classificação: avaliação de modelos Prof. Luis Otavio Alvares (INE/UFSC) Parte desta apresentação é baseada em material do prof. Paulo Engel (II/UFRGS)
montante médio baixo alto E=sim salário conta baixo alto não sim E=sim E=sim E=não E=não Resultado: modelo de classificação
montante médio baixo alto conta E=sim salário baixo alto não sim E=sim E=sim E=não E=não Avaliação da árvore de decisão Avaliação através da taxa de acertos/erros: • taxa_de_erros = Nerros / Ntotal • taxa_de_acertos = Nacertos / Ntotal Utilizando o conjunto de treinamento: • proporção_de_acertos = 14 / 14 = 100% • proporção_de_erros = 0 / 14 = 0%
Proporção de acertos/erros Utilizando o conjunto de teste: • proporção_de_acertos = Nacertos / Ntotal proporção_de_acertos = 5 / 7 = 71,4% • proporção_de_erros = Nerros / Ntotal proporção_de_erros = 2 / 7 = 28,6%
Métricas para avaliação de desempenho • O foco deve estar na capacidade preditiva do modelo • E não no tempo que leva para classificar ou criar um modelo, na escalabilidade, etc. • Baseadas na Matriz de Confusão (exemplo com duas classes):
Métricas para avaliação de desempenho... • Métricas mais usadas: • Acurácia (mais usada), Erro Acurácia: Erro:
Exercício em sala Casa Própria sim não 1 Est.Civil separado casado solteiro 2 3 4 Complete a árvore de decisão colocando no lugar dos números das folhas, a classe, de forma a minimizar os erros de classificação. Faça a matriz de confusão correspondente.
Outras métricas para avaliação de desempenho Taxa de VP : (sensibilidade, abrangência, recall) Taxa de VN (especificidade): Precisão: (Média harmônica entre precisão e recall) F-measure:
Limitação da acurácia • Considere um problema de 2 classes • Número de exemplos da classe 0 = 9.990 • Número de exemplos da classe 1 = 10 • Se o modelo predizer que qualquer amostra é da classe 0, a acurácia é 9990/10000 = 99,9 % • A acurácia é enganosa porque o modelo não detecta nenhum exemplo da classe 1! • Solução: levar em consideração custos por classe para erros de classificação • Exemplo: Previsão de culpa emjulgamento: • positivo pena de morte
Matriz de custo • C(i|j): custo de classificar exemplos da classe j, como sendo da classe i
Cálculo de custos de classificação Acurácia = 80% Custo = 3910 Acurácia = 90% Custo = 4255
Métodos para avaliação de modelos • Quão preditivo é o modelo aprendido? • Erro sobre os dados de treinamento não é um bom indicador de desempenho sobre dados futuros: é muito otimista • Solução simples pode ser usada se existirem muitos dados rotulados: • Dividir dados em conjuntos de treinamento e de teste • Mas: normalmente o número de dados rotulados é limitado • São necessárias técnicas mais sofisticadas de avaliação
Treinamento e teste … • Conjunto de teste: conjunto de exemplos (registros) independentes que nãoforam usados na geração do modelo • Suposição: os dados de treinamento e os dados de teste são amostras representativas do problema • Arquivos de teste e de treinamento podem ter naturezas diferentes • Exemplo: classificadores construídos usando dados de consumidores de duas cidades diferentes A e B • Para estimar o desempenho do classificador, gerado com os dados da cidade A, numa cidade diferente, testá-lo com dados de B
Tirando o máximo dos dados • Geralmente, quanto maior o arquivo de treinamento melhor o classificador • Quanto maior o arquivo de teste mais exata será a estimativa de erro • Procedimento holdout (retenção): dividir os dados originais em conjuntos de treinamento e de teste • Dilema: queremos tanto um grande arquivo de treinamento quanto um grande arquivo de teste
Estimação por retenção (holdout) • O que fazer se a quantidade de dados é limitada? • Método holdout reserva uma certa quantidade dos dados para teste e usa o resto para o treinamento • Usualmente 1/3 para teste, o resto para treinamento • Mas: as amostras podem não ser representativas • Exemplo: pode não haver amostras de uma classe nos dados de teste • Versão avançada usa estratificação • Assegura que cada classe esteja representada com proporções aproximadamente iguais em ambos os conjuntos • Após a avaliação, todos os dadospodem ser usados para construir o classificador final !!!!
Validação cruzada (cross-validation) • Validação cruzada evita superposição dos conjuntos de teste • Primeiro passo: conjunto de dados é dividido em k subconjuntos de tamanhos iguais • Segundo passo: um subconjunto é usado para teste e os demais para treinamento. • O segundo passo é repetido k vezes, variando o subconjunto usado para teste • Esta é a chamada validação cruzada por k vezes • Muitas vezes os subconjuntos são estratificados antes de realizar a validação cruzada • A estimativa de erro global é calculada como a média das k estimativas de erro (uma para cada iteração)
subconj 1 Conjunto de Exemplos subconj 2 subconj 3 subconj 4 Modelo 1 Modelo 4 Modelo 3 Modelo 2 subconj 1 subconj 1 treino subconj 1 subconj 1 treino teste treino subconj 2 subconj 2 subconj 2 treino treino subconj2 teste treino subconj 3 subconj 3 treino teste subconj 3 treino subconj 3 treino treino teste treino subconj 4 subconj 4 treino subconj 4 subconj 4 four-fold-cross-validation
Mais sobre validação cruzada • Método padrão de avaliação: validação cruzada por dez vezes estratificada • Por que dez? Experimentos demonstraram que esta é uma boa escolha para se obter uma estimativa precisa • Estratificação reduz a variância da estimativa • Melhor ainda: validação cruzada estratificada repetida • P. ex. se repete dez vezes a validação cruzada por dez vezes e se calcula a média (reduz variância)
Validação cruzada deixando um fora • Validação cruzada deixando um fora (leave-one-out c-v): • O número de vezes é escolhido como o número de exemplos de treinamento • Isto é, deve-se construir n classificadores, onde n é o número de exemplos de treinamento • Aproveita ao máximo os dados • Não envolve sub-amostragem aleatória • Computacionalmente muito custoso
Navalha de Occam • Dados dois modelos com mesma taxa de erros, o modelo mais simples é melhor (preferível)
Exercício em sala lágrimas reduzida normal astigmat. 1 sim não prescrição 2 miopia hipermetr. 4 3 Complete a árvore de decisãocolocando no lugar dos números das folhas, a classe, de forma a minimizaroserros de classificação. Faça a matriz de confusãocorrespondente.