A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Mineração de dados Classificação: avaliação de modelos André Salvaro Furtado Prof. Vania Bogorny Parte desta apresentação é baseada em material do prof.

Apresentações semelhantes


Apresentação em tema: "Mineração de dados Classificação: avaliação de modelos André Salvaro Furtado Prof. Vania Bogorny Parte desta apresentação é baseada em material do prof."— Transcrição da apresentação:

1 Mineração de dados Classificação: avaliação de modelos André Salvaro Furtado Prof. Vania Bogorny Parte desta apresentação é baseada em material do prof. Paulo Engel (II/UFRGS)

2 Relembrando Classificação

3 Exemplo de dados para concessão de empréstimo bancário

4

5 ID3 – Passo 1: Calcular a entropia do conjunto Entropia (S) = - (p + * log 2 p + + p - * log 2 p - ) Entropia (S) = - ((9/14 * log 2 9/14) + (5/14 * log 2 5/14)) = 0.940

6 ID3 – Passo 2: Calcular a entropia dos valores dos atributos Entropia(montante=médio) = - ((2/5 * log 2 2/5) + (3/5 * log 2 3/5)) = 0,971

7 ID3 – Passo 2: Calcular a entropia dos valores dos atributos Entropia(montante=médio) = - ((2/5 * log 2 2/5) + (3/5 * log 2 3/5)) = 0,971 Entropia(montante=baixo) = - ((4/4 * log 2 4/4) + (0/4 * log 2 0/4)) = 0

8 ID3 – Passo 2: Calcular a entropia dos valores dos atributos Entropia(montante=médio) = - ((2/5 * log 2 2/5) + (3/5 * log 2 3/5)) = 0,971 Entropia(montante=baixo) = - ((4/4 * log 2 4/4) + (0/4 * log 2 0/4)) = 0 Entropia(montante=alto) = - ((3/5 * log 2 3/5) + (2/5 * log 2 2/5)) = 0,971

9 ID3 – Passo 2: Calcular a entropia dos valores dos atributos Entropia(montante=médio) = - 2/5 log 2 (2/5) - 3/5 log 2 (3/5) = 0,971 Entropia(montante=baixo) = - 4/4 log 2 (4/4) - 0/4 log 2 (0/4) = 0 Entropia(montante=alto) = - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = senior)= - 2/4 log 2 (2/4) - 2/4 log 2 (2/4) = 1 Entropia (idade = média)= - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = jovem)= - 4/5 log 2 (4/5) - 1/5 log 2 (1/5) = 0,722...

10 ID3 – Passo 3: Calcular o ganho de informação dos atributos Entropia(montante=médio) = - 2/5 log 2 (2/5) - 3/5 log 2 (3/5) = 0,971 Entropia(montante=baixo) = - 4/4 log 2 (4/4) - 0/4 log 2 (0/4) = 0 Entropia(montante=alto) = - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = senior)= - 2/4 log 2 (2/4) - 2/4 log 2 (2/4) = 1 Entropia (idade = média)= - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = jovem)= - 4/5 log 2 (4/5) - 1/5 log 2 (1/5) = 0, Ganho (S,montante) = 0,940 - (5/14). 0,971 - (4/14). 0 - (5/14). 0,971 = 0,246 Ganho (S,idade) = 0,940 - (4/14). 1 - (5/14). 0,971 - (5/14). 0,722 = 0,049 Ganho (S,salário) = 0,940 - (7/14). 0,592 - (7/14). 0,985 = 0,151 Ganho (S,conta) = 0,940 - (8/14). 0,811 - (6/14). 1 = 0,047 Entropia (S) = - ((9/14 * log 2 9/14) + (5/14 * log 2 5/14)) = 0.940

11 ID3 – Passo 4: Selecionar o melhor atributo Entropia(montante=médio) = - 2/5 log 2 (2/5) - 3/5 log 2 (3/5) = 0,971 Entropia(montante=baixo) = - 4/4 log 2 (4/4) - 0/4 log 2 (0/4) = 0 Entropia(montante=alto) = - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = senior)= - 2/4 log 2 (2/4) - 2/4 log 2 (2/4) = 1 Entropia (idade = média)= - 3/5 log 2 (3/5) - 2/5 log 2 (2/5) = 0,971 Entropia (idade = jovem)= - 4/5 log 2 (4/5) - 1/5 log 2 (1/5) = 0, Ganho (S,montante) = 0,940 - (5/14). 0,971 - (4/14). 0 - (5/14). 0,971 = 0,246 Ganho (S,idade) = 0,940 - (4/14). 1 - (5/14). 0,971 - (5/14). 0,722 = 0,049 Ganho (S,salário) = 0,940 - (7/14). 0,592 - (7/14). 0,985 = 0,151 Ganho (S,conta) = 0,940 - (8/14). 0,811 - (6/14). 1 = 0,047 Entropia (S) = - ((9/14 * log 2 9/14) + (5/14 * log 2 5/14)) = 0.940

12 Escolha do próximo atributo Qual atributo será colocado aqui? Repetir os passos 1, 2, 3 e 4 para os outros atributos considerando o conjunto de dados S = {C1,C2,C8,C9,C11} montante médiobaixoalto ? ? E=sim {C1,C2,...C14} [9+, 5-] {C1,C2,C8,C9,C11} [2+, 3-] {C3,C7,C12,C13} [4+, 0-] {C4,C5,C6,C10,C14} [3+, 2-] casos proporção dos casos

13 Resultado: modelo de classificação montante médiobaixoalto contasalário baixoaltonãosim E=sim E=não E=sim

14 Avaliação da Árvore de Decisão Como avaliar as regras utilizadas na árvore de decisão na tarefa de classificação? Taxa de Acertos: número de casos classificados corretamente dividido pelo número total de casos taxa_de_acertos = N acertos / N total Taxa de Erros: número de casos classificados de forma incorreta dividido pelo número total de casos taxa_de_erros = N erros / N total

15 Avaliação da árvore de decisão montante médiobaixo alto conta salário baixoaltonãosim E=sim E=não E=sim Avaliação através da taxa de acertos/erros:  taxa_de_erros = N erros / N total  taxa_de_acertos = N acertos / N total Utilizando o conjunto de treinamento:  proporção_de_acertos = 14 / 14 = 100%  proporção_de_erros = 0 / 14 = 0%

16 Conjunto de teste

17 Proporção de acertos/erros Utilizando o conjunto de teste:  proporção_de_acertos = N acertos / N total proporção_de_acertos = 5 / 7 = 71,4%  proporção_de_erros = N erros / N total proporção_de_erros = 2 / 7 = 28,6%

18 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 Classe prevista SimNão Classe real Sim Verdadeiro Positivo (VP) Falso Negativo (FN) Não Falso Positivo (FP) Verdadeiro Negativo (VN)

19 Métricas para avaliação de desempenho... Classe prevista SimNão Classe real Sim Verdadeiro Positivo (VP) Falso Negativo (FN) Não Falso Positivo (FP) Verdadeiro Negativo (VN) Métricas mais usadas: –Acurácia (mais usada), Erro Acurácia: Erro:

20 Métricas para avaliação de desempenho... Classe prevista SimNão Classe real Sim Verdadeiro Positivo (VP) Falso Negativo (FN) Não Falso Positivo (FP) Verdadeiro Negativo (VN) Acurácia: Erro:

21 Métricas para avaliação de desempenho... Classe prevista SimNão Classe real Sim Verdadeiro Positivo (VP) Falso Negativo (FN) Não Falso Positivo (FP) Verdadeiro Negativo (VN) Acurácia: Erro:

22 Exercício em sala Casa Própria Est.Civil não sim separado solteiro casado Casa PrópriaEst.CivilRenda Mau Pagador simsolteiro125Não nãocasado100Não nãosolteiro70Não simcasado120Não nãoseparado95Sim nãocasado60Não simseparado220Não nãosolteiro85Sim nãocasado75Não nãosolteiro90sim 1.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. 2.Faça a matriz de confusão correspondente.

23 Taxa de VP : (sensibilidade, abrangência, recall) Outras métricas para avaliação de desempenho Taxa de VN (especificidade): Precisão: Classe prevista SimNão Classe real SimVPFN NãoFPVN F-measure: (Média harmônica entre precisão e recall)

24 Considere um problema de 2 classes –Número de exemplos da classe 0 = –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 em julgamento: positivo  pena de morte Limitação da acurácia

25 C(i|j): custo de classificar exemplos da classe j, como sendo da classe i Matriz de custo C(i|j)C(i|j) Classe prevista SimNão Classe real SimC(Sim|Sim)C(Não|Sim) NãoC(Sim|Não)C(Não|Não)

26 Acurácia = 80% Custo = 3910 Cálculo de custos de classificação Matriz de Custo C(i|j) Classe prevista SimNão Classe real Sim100 Não10 Modelo M1 Classe prevista SimNão Classe real Sim15040 Não60250 Modelo M2 Classe prevista SimNão Classe real Sim25045 Não5200 Acurácia = 90% Custo = 4255

27 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 Métodos para avaliação de modelos

28 Avaliação de modelos

29

30

31 Conjunto de treinamento: conjunto de exemplos (registros) que foram usados na geração do modelo Conjunto de teste: conjunto de exemplos (registros) independentes que não foram 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 Treinamento e teste …

32 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 Tirando o máximo dos dados

33 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 IMPORTANTE: Após a avaliação, todos os dados podem ser usados para construir o classificador final !!!! Estimação por retenção (holdout)

34 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) Validação cruzada (cross-validation)

35 four-fold-cross-validation subconj 1 subconj 2 subconj 3 subconj 4 Conjunto de Exemplos subconj 1 subconj 2 subconj 3 subconj 4 teste treino subconj 1 subconj 2 subconj 3 subconj 4 teste treino subconj 1 subconj 2 subconj 3 subconj 4 teste treino subconj 1 subconj 2 subconj 3 subconj 4 teste treino Modelo 1 Modelo 2 Modelo 3 Modelo 4

36 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) Mais sobre validação cruzada

37 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 Validação cruzada deixando um fora

38 Navalha de Occam l Dados dois modelos com mesma taxa de erros, o modelo mais simples é melhor (preferível)

39 lágrimasastigma- tismo pressãoprescriçãoLENTES normalsimnormalhipermetr. NÃO normalnãonormalmiopia GELAT. normalsimnormalmiopia DURA reduzidasimaltamiopia NÃO reduzidanãonormalhipermetr. NÃO normalnãoaltahipermetr. NÃO normalnãoaltamiopia GELAT. normalsimnormalmiopia DURA normalsimaltahipermetr. NÃO normalsimaltamiopia DURA normalsimnormalmiopia. DURA lágrimas normal reduzida astigmat. simnão prescrição miopiahipermetr. 1.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. 2.Faça a matriz de confusão correspondente. Exercício em sala


Carregar ppt "Mineração de dados Classificação: avaliação de modelos André Salvaro Furtado Prof. Vania Bogorny Parte desta apresentação é baseada em material do prof."

Apresentações semelhantes


Anúncios Google