Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS DE INFORMAÇÃO 1 1 1 1SISTEMAS DE INFORMAÇÃO 1 1SISTEMAS DE INFORMAÇÃO 1 1 1 Professora: Ariane Machado Lima Tema 05 Estimação de Desempenho SISTEMAS DE INFORMAÇÃO 2 2 2 2SISTEMAS DE INFORMAÇÃO 2 2SISTEMAS DE INFORMAÇÃO 2 2 2 Ciclo de aprendizado supervisionado mundo Coleta de dados Análise exploratória Pré-processamento Redução de dimensionalidade Escolha do alg. indutor Treinamento do classificador Avaliação do classificador Retreinamento do classificador Fusão de características (PCA) Aula passada Seleção de características Redes Bayesianas, Naive Bayes SISTEMAS DE INFORMAÇÃO 3 3 3 3SISTEMAS DE INFORMAÇÃO 3 3SISTEMAS DE INFORMAÇÃO 3 3 3 Ciclo de aprendizado supervisionado mundo Coleta de dados Análise exploratória Pré-processamento Redução de dimensionalidade Escolha do alg. indutor Treinamento do classificador Avaliação do classificador Retreinamento do classificador Fusão de características (PCA) Aula de hoje Seleção de características Redes Bayesianas, Naive Bayes SISTEMAS DE INFORMAÇÃO 4 4 4 4SISTEMAS DE INFORMAÇÃO 4 4SISTEMAS DE INFORMAÇÃO 4 4 4 SISTEMAS DE INFORMAÇÃO 5 5 5 5SISTEMAS DE INFORMAÇÃO 5 5SISTEMAS DE INFORMAÇÃO 5 5 5 Classificação Vimos na aula anterior que, se você conhece as densidades condicionais das classes envolvidas (P(x|c)), o classificador Bayesiano deve ser usado pois ele é o que fornece MENOR erro (classificador ÓTIMO). SISTEMAS DE INFORMAÇÃO 6 6 6 6SISTEMAS DE INFORMAÇÃO 6 6SISTEMAS DE INFORMAÇÃO 6 6 6 Técnicas de Classificação [JAIN et al, 2000] SISTEMAS DE INFORMAÇÃO 7 7 7 7SISTEMAS DE INFORMAÇÃO 7 7SISTEMAS DE INFORMAÇÃO 7 7 7 Problema • Normalmente não conhecemos as probabilidades condicionais P( . |ci) • Neste caso temos que estimá-las a partir de dados conhecidos, o que pode ser complexo SISTEMAS DE INFORMAÇÃO 8 8 8 8SISTEMAS DE INFORMAÇÃO 8 8SISTEMAS DE INFORMAÇÃO 8 8 8 Alternativas • Nestes casos, temos que optar por um classificador mais simples • Por ex: escolher uma família de densidades conhecida, ou seja, com uma forma matemática conhecida e um número finito de parâmetros. Daí basta estimar os parâmetros (ex. Normal, Poisson, ...) • CLASSIFICADOR PARAMÉTRICO • Quando não é possível escolher uma forma matemática então opta-se por um CLASSIFICADOR NÃO PARAMÉTRICO SISTEMAS DE INFORMAÇÃO 9 9 9 9SISTEMAS DE INFORMAÇÃO 9 9SISTEMAS DE INFORMAÇÃO 9 9 9 Alternativas • Nestes casos, temos que optar por um classificador mais simples • Por ex: escolher uma família de densidades conhecida, ou seja, com uma forma matemática conhecida e um número finito de parâmetros. Daí basta estimar os parâmetros (ex. Normal, Poisson, ...) • CLASSIFICADOR PARAMÉTRICO • Quando não é possível escolher uma forma matemática então opta-se por um CLASSIFICADOR NÃO PARAMÉTRICO SISTEMAS DE INFORMAÇÃO 10 10 10 10SISTEMAS DE INFORMAÇÃO 10 10SISTEMAS DE INFORMAÇÃO 10 10 10 Alternativas • Nestes casos, temos que optar por um classificador mais simples • Por ex: escolher uma família de densidades conhecida, ou seja, com uma forma matemática conhecida e um número finito de parâmetros. Daí basta estimar os parâmetros (ex. Normal, Poisson, ...) • CLASSIFICADOR PARAMÉTRICO • Quando não é possível escolher uma forma matemática então opta-se por um CLASSIFICADOR NÃO PARAMÉTRICO SISTEMAS DE INFORMAÇÃO 11 11 11 11SISTEMAS DE INFORMAÇÃO 11 11SISTEMAS DE INFORMAÇÃO 11 11 11 Métodos de construção de um classificador • Aprendizado supervisionado: o modelo é aprendido a partir de amostras rotuladas (com sua classificação) • Amostra de treinamento: X = {(x,c)| x é um exemplo e c é sua classe} • Aprendizado não supervisionado: a classificação é feita a partir de dados não rotulados SISTEMAS DE INFORMAÇÃO 12 12 12 12SISTEMAS DE INFORMAÇÃO 12 12SISTEMAS DE INFORMAÇÃO 12 12 12 Métodos de Classificação [JAIN et al, 2000] SISTEMAS DE INFORMAÇÃO 13 13 13 13SISTEMAS DE INFORMAÇÃO 13 13SISTEMAS DE INFORMAÇÃO 13 13 13 Como avaliar um classificador? SISTEMAS DE INFORMAÇÃO 14 14 14 14SISTEMAS DE INFORMAÇÃO 14 14SISTEMAS DE INFORMAÇÃO 14 14 14 Como avaliar um classificador? • Taxa de erro • Difícil obter uma expressão analítica • Para regras de treinamento consistentes*, a taxa de erro se aproxima do erro de Bayes à medida que cresce o tamanho da amostra de treinamento • Na prática, como estimar o erro? • Em aprendizado não supervisionado a coisa é mais complicada (veremos mais à frente) • Se eu tenho uma determinada amostra rotulada (aprendizado supervisionado), tenho que treinar e estimar o erro. Como faço? *um estimador é consistente se o valor estimado se aproxima do valor real à medida que a amostra aumenta. SISTEMAS DE INFORMAÇÃO 15 15 15 15SISTEMAS DE INFORMAÇÃO 15 15SISTEMAS DE INFORMAÇÃO 15 15 15 Estimação de erro de um classificador • Uma amostra para treinar e uma amostra para testar • Os erros na amostra de teste são uma estimativa do erro SISTEMAS DE INFORMAÇÃO 16 16 16 16SISTEMAS DE INFORMAÇÃO 16 16SISTEMAS DE INFORMAÇÃO 16 16 16 Aprendizado do erro SISTEMAS DE INFORMAÇÃO 17 17 17 17SISTEMAS DE INFORMAÇÃO 17 17SISTEMAS DE INFORMAÇÃO 17 17 17 Aprendizado do erro SISTEMAS DE INFORMAÇÃO 18 18 18 18SISTEMAS DE INFORMAÇÃO 18 18SISTEMAS DE INFORMAÇÃO 18 18 18 Estimação de erro de um classificador • As amostras de treinamento e de teste deveriam ser: • Grandes • Independentes • Mas nem sempre conseguimos... • Como utilizar uma dada amostra para isso? • Vários métodos de estimação de erro SISTEMAS DE INFORMAÇÃO 19 19 19 19SISTEMAS DE INFORMAÇÃO 19 19SISTEMAS DE INFORMAÇÃO 19 19 19 Métodos de estimação de erro de um classificador • Resubstituição • Holdout • Leave-one-out • Leave-p-out • k-fold cross-validation (validação cruzada k- vezes) • Subamostragem aleatória (múltiplos holdouts) • Bootstrap SISTEMAS DE INFORMAÇÃO 20 20 20 20SISTEMAS DE INFORMAÇÃO 20 20SISTEMAS DE INFORMAÇÃO 20 20 20 Resubstituição • Toda a amostra original é usada para treinamento e depois para teste • Problema? Treinamento e teste SISTEMAS DE INFORMAÇÃO 21 21 21 21SISTEMAS DE INFORMAÇÃO 21 21SISTEMAS DE INFORMAÇÃO 21 21 21 Resubstituição • Toda a amostra original é usada para treinamento e depois para teste • Fornece uma estimativa otimista do erro • Não revela se está havendo overfitting • Quanto menor a amostra de treinamento, pior a estimativa • Pior opção Treinamento e teste SISTEMAS DE INFORMAÇÃO 22 22 22 22SISTEMAS DE INFORMAÇÃO 22 22SISTEMAS DE INFORMAÇÃO 22 22 22 Holdout Uma parte da amostra original é usada para treinamento e o restante para teste (não necessariamente 50%) Problema: diferentes divisões provavelmente darão diferentes estimativas (alta variância entre as estimativas se várias forem feitas) Treinamento Teste SISTEMAS DE INFORMAÇÃO 23 23 23 23SISTEMAS DE INFORMAÇÃO 23 23SISTEMAS DE INFORMAÇÃO 23 23 23 Holdout Uma parte da amostra original é usada para treinamento e o restante para teste (não necessariamente 50%) Problema: diferentes divisões provavelmente darão diferentes estimativas (dependendo de quão diferentes são as instâncias entre treinamento e teste) Treinamento Teste SISTEMAS DE INFORMAÇÃO 24 24 24 24SISTEMAS DE INFORMAÇÃO 24 24SISTEMAS DE INFORMAÇÃO 24 24 24 Leave-one-out • Se a amostra original tem n dados, treina com n-1 dados e testa no que restou • Repetir o processo n vezes, cada vez deixando um dado de fora para teste • A estimativa de erro é a média do erro de cada rodada SISTEMAS DE INFORMAÇÃO 25 25 25 25SISTEMAS DE INFORMAÇÃO 25 25SISTEMAS DE INFORMAÇÃO 25 25 25 Leave-one-out • Estimativa menos enviesada • Alta variância entre os n testes (erro = 0 ou 1) • Alto custo computacional (n treinamentos e testes de classificadores) SISTEMAS DE INFORMAÇÃO26 26 26 26SISTEMAS DE INFORMAÇÃO 26 26SISTEMAS DE INFORMAÇÃO 26 26 26 Leave-p-out SISTEMAS DE INFORMAÇÃO 27 27 27 27SISTEMAS DE INFORMAÇÃO 27 27SISTEMAS DE INFORMAÇÃO 27 27 27 Validação cruzada k-vezes (k-fold cross-validation) • Divida a amostra original em k (k < n) partes • Treina com k-1 partes, testa com a que sobrou • Repetir o processo k vezes, cada vez deixando uma parte diferente de fora do treinamento (para teste) SISTEMAS DE INFORMAÇÃO 28 28 28 28SISTEMAS DE INFORMAÇÃO 28 28SISTEMAS DE INFORMAÇÃO 28 28 28 Validação cruzada k-vezes (k-fold cross-validation) • Divida a amostra original em k (k < n) partes • Treina com k-1 partes, testa com a que sobrou • Repetir o processo k vezes, cada vez deixando uma parte diferente de fora do treinamento (para teste) Balanço entre holdout e leave-one-out: Mais/menos? enviesada que o holdout Mais/menos? custoso que o leave-one-out Maior/menor? variância que a do leave-one-out SISTEMAS DE INFORMAÇÃO 29 29 29 29SISTEMAS DE INFORMAÇÃO 29 29SISTEMAS DE INFORMAÇÃO 29 29 29 Validação cruzada k-vezes (k-fold cross-validation) • Divida a amostra original em k (k < n) partes • Treina com k-1 partes, testa com a que sobrou • Repetir o processo k vezes, cada vez deixando uma parte diferente de fora do treinamento (para teste) Balanço entre holdout e leave-one-out: Menos enviesada que o holdout Mais/menos? custoso que o leave-one-out Maior/menor? variância que a do leave-one-out SISTEMAS DE INFORMAÇÃO 30 30 30 30SISTEMAS DE INFORMAÇÃO 30 30SISTEMAS DE INFORMAÇÃO 30 30 30 Validação cruzada k-vezes (k-fold cross-validation) • Divida a amostra original em k (k < n) partes • Treina com k-1 partes, testa com a que sobrou • Repetir o processo k vezes, cada vez deixando uma parte diferente de fora do treinamento (para teste) Balanço entre holdout e leave-one-out: Menos enviesada que o holdout Menos custoso que o leave-one-out (k classificadores) Maior/menor? variância que a do leave-one-out Obs: não testa todas as combinações possíveis (não exaustivo) SISTEMAS DE INFORMAÇÃO 31 31 31 31SISTEMAS DE INFORMAÇÃO 31 31SISTEMAS DE INFORMAÇÃO 31 31 31 Validação cruzada k-vezes (k-fold cross-validation) • Divida a amostra original em k (k < n) partes • Treina com k-1 partes, testa com a que sobrou • Repetir o processo k vezes, cada vez deixando uma parte diferente de fora do treinamento (para teste) Balanço entre holdout e leave-one-out: Menos enviesada que o holdout Menos custoso que o leave-one-out (k classificadores) Menor variância que a do leave-one-out Obs: não testa todas as combinações possíveis (não exaustivo) SISTEMAS DE INFORMAÇÃO 32 32 32 32SISTEMAS DE INFORMAÇÃO 32 32SISTEMAS DE INFORMAÇÃO 32 32 32 Validação cruzada k-vezes ESTRATIFICADA SISTEMAS DE INFORMAÇÃO 33 33 33 33SISTEMAS DE INFORMAÇÃO 33 33SISTEMAS DE INFORMAÇÃO 33 33 33 Qual valor de k? K = 10 (ou 5) são os mais comuns, mas cuidado com o viés de superestimação do erro [HASTIE et al., 2017] SISTEMAS DE INFORMAÇÃO 34 34 34 34SISTEMAS DE INFORMAÇÃO 34 34SISTEMAS DE INFORMAÇÃO 34 34 34 Validações cruzadas repetidas Várias validações cruzadas, cada vez embaralhando a ordem das instâncias (e reestratificando-as se for o caso) SISTEMAS DE INFORMAÇÃO 35 35 35 35SISTEMAS DE INFORMAÇÃO 35 35SISTEMAS DE INFORMAÇÃO 35 35 35 SISTEMAS DE INFORMAÇÃO 36 36 36 36SISTEMAS DE INFORMAÇÃO 36 36SISTEMAS DE INFORMAÇÃO 36 36 36 Bootstrap • Gera várias amostras de tamanho de tamanho m, m <,= ou > n (sorteios com reposição) • Treina com uma e testa com outra SISTEMAS DE INFORMAÇÃO 37 37 37 37SISTEMAS DE INFORMAÇÃO 37 37SISTEMAS DE INFORMAÇÃO 37 37 37 Bootstrap • Variância menor • Computacionalmente caro • Útil quando a amostra original é pequena SISTEMAS DE INFORMAÇÃO 38 38 38 38SISTEMAS DE INFORMAÇÃO 38 38SISTEMAS DE INFORMAÇÃO 38 38 38 Medidas* de desempenho * medidas ou métricas? SISTEMAS DE INFORMAÇÃO 40 40 40 40SISTEMAS DE INFORMAÇÃO 40 40SISTEMAS DE INFORMAÇÃO 40 40 40 Matriz de confusão Mij: quantos elementos preditos como sendo da classe i são da classe j SISTEMAS DE INFORMAÇÃO 41 41 41 41SISTEMAS DE INFORMAÇÃO 41 41SISTEMAS DE INFORMAÇÃO 41 41 41 Matriz de confusão Mij: quantos elementos preditos como sendo da classe i são da classe j SISTEMAS DE INFORMAÇÃO 42 42 42 42SISTEMAS DE INFORMAÇÃO 42 42SISTEMAS DE INFORMAÇÃO 42 42 42 Medidas de acurácia • Classificação binária: considere uma classe positiva • Ex: peça defeituosa (+; P; positivo) e normal (-; N; negativo) • Há dois tipos de erro: • Falso positivo (FP): o classificador diz que é (+) quando na verdade não é (-) • Falso negativo (FN): o classificador diz que não é (-) quando na verdade é (+) • Há dois tipos de acerto: • Verdadeiro positivo (TP – true positive) • Verdadeiro negativo (TN – true negative) SISTEMAS DE INFORMAÇÃO 43 43 43 43SISTEMAS DE INFORMAÇÃO 43 43SISTEMAS DE INFORMAÇÃO 43 43 43 Matriz de confusão (caso binário) SISTEMAS DE INFORMAÇÃO 44 44 44 44SISTEMAS DE INFORMAÇÃO 44 44SISTEMAS DE INFORMAÇÃO 44 44 44 Medidas de desempenho • Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia Mas os erros e acertos podem não ser simétricos... SISTEMAS DE INFORMAÇÃO 45 45 45 45SISTEMAS DE INFORMAÇÃO 45 45SISTEMAS DE INFORMAÇÃO 45 45 45 Medidas de desempenho • Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN • Taxa de Falsa Aceitação (FAR): FP/m • Taxa de Falsa Rejeição (FRR): FN/m • Sensibilidade ou revocação ou taxa de verd. positivos: TP/P • Especificidade: TN/N • Taxa de falsos positivos = FP/N = 1-especificidade • Precisão ou valor preditivo positivo (VPP): TP/(TP+FP) • Valor preditivo negativo (VPN): TN/(TN+FN) Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia SISTEMAS DE INFORMAÇÃO 46 46 46 46SISTEMAS DE INFORMAÇÃO 46 46SISTEMAS DE INFORMAÇÃO 46 46 46 Medidas de desempenho • Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN • Taxa de Falsa Aceitação (FAR): FP/m • Taxa de Falsa Rejeição (FRR): FN/m • Sensibilidade ou revocação ou taxa de verd. positivos: TP/P • Especificidade: TN/N • Taxa de falsos positivos = FP/N = 1-especificidade • Precisão ou valor preditivo positivo (VPP): TP/(TP+FP) • Valor preditivo negativo (VPN): TN/(TN+FN) Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia SISTEMAS DE INFORMAÇÃO 47 47 47 47SISTEMAS DE INFORMAÇÃO 47 47SISTEMAS DE INFORMAÇÃO 47 47 47 Medidas de desempenho • Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN • Taxa de Falsa Aceitação (FAR): FP/m • Taxa de Falsa Rejeição (FRR): FN/m • Sensibilidade ou revocação ou taxa de verd. positivos: TP/P • Especificidade: TN/N • Taxa de falsos positivos = FP/N = 1-especificidade • Precisão ou valor preditivo positivo (VPP): TP/(TP+FP) • Valor preditivo negativo (VPN): TN/(TN+FN) Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia SISTEMAS DE INFORMAÇÃO 48 48 48 48SISTEMAS DE INFORMAÇÃO 48 48SISTEMAS DE INFORMAÇÃO 48 48 48 Medidas de desempenho • Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN • Taxa de Falsa Aceitação (FAR): FP/m • Taxa de Falsa Rejeição (FRR): FN/m • Sensibilidade ou revocação ou taxa de verd. positivos: TP/P • Especificidade: TN/N • Taxa de falsos positivos = FP/N = 1-especificidade • Precisão ou valor preditivo positivo (VPP): TP/(TP+FP) • Valor preditivo negativo (VPN): TN/(TN+FN) Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia SISTEMAS DE INFORMAÇÃO 49 49 49 49SISTEMAS DE INFORMAÇÃO 49 49SISTEMAS DE INFORMAÇÃO 49 49 49 Medidas de desempenho• Amostra de tamanho m • N objetos negativos • P objetos positivos • N+P = m • N = TN + FP • P = TP + FN • Taxa de Falsa Aceitação (FAR): FP/m • Taxa de Falsa Rejeição (FRR): FN/m • Sensibilidade ou revocação ou taxa de verd. positivos: TP/P • Especificidade: TN/N • Taxa de falsos positivos = FP/N = 1-especificidade • Precisão ou valor preditivo positivo (VPP): TP/(TP+FP) • Valor preditivo negativo (VPN): TN/(TN+FN) Acurácia: (TP+TN)/m Erro: (FP+FN)/m = 1-acurácia SISTEMAS DE INFORMAÇÃO 50 50 50 50SISTEMAS DE INFORMAÇÃO 50 50SISTEMAS DE INFORMAÇÃO 50 50 50 Medidas de desempenho • Medida F: 2 * precisão * revocação precisão + revocação • Coeficiente de correlação de Matthews (MCC): valor entre -1 e 1, sendo -1 péssimo (totalmente discordante), 1 ótimo (acerto total), 0 aleatório • G-mean: ∨ sensibilidade * especificidade Medidas que combinam duas medidas antagônicas: SISTEMAS DE INFORMAÇÃO 51 51 51 51SISTEMAS DE INFORMAÇÃO 51 51SISTEMAS DE INFORMAÇÃO 51 51 51 Para quê tantas medidas? • O que você acha desses 2 cenários? SISTEMAS DE INFORMAÇÃO 52 52 52 52SISTEMAS DE INFORMAÇÃO 52 52SISTEMAS DE INFORMAÇÃO 52 52 52 Para quê tantas medidas? • O que você acha desses 2 cenários? • Acurácia, embora muito usada, é uma medida pouco informativa, às vezes até ilusória • Quanto maior a desproporção das classes, mais ilusória algumas medidas são • Prefira as medidas que mostram melhor o que você espera do seu classificador SISTEMAS DE INFORMAÇÃO 53 53 53 53SISTEMAS DE INFORMAÇÃO 53 53SISTEMAS DE INFORMAÇÃO 53 53 53 Curvas ROC (ainda sobre medidas de desempenho) SISTEMAS DE INFORMAÇÃO 54 54 54 54SISTEMAS DE INFORMAÇÃO 54 54SISTEMAS DE INFORMAÇÃO 54 54 54 Medidas de desempenho • Dependendo da aplicação, prioriza-se mais a sensibilidade ou a especificidade • Diferentes limiares de classificação modificam esses valores (se o classificador usa um limiar) SISTEMAS DE INFORMAÇÃO 55 55 55 55SISTEMAS DE INFORMAÇÃO 55 55SISTEMAS DE INFORMAÇÃO 55 55 55 Medidas de desempenho • Dependendo da aplicação, prioriza-se mais a sensibilidade ou a especificidade • Diferentes limiares de classificação modificam esses valores (se o classificador usa um limiar) • Quando uma sobe a outra desce • Ex: maçã x outras frutas SISTEMAS DE INFORMAÇÃO 56 56 56 56SISTEMAS DE INFORMAÇÃO 56 56SISTEMAS DE INFORMAÇÃO 56 56 56 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores SISTEMAS DE INFORMAÇÃO 57 57 57 57SISTEMAS DE INFORMAÇÃO 57 57SISTEMAS DE INFORMAÇÃO 57 57 57 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores • Qual dos dois algoritmos é melhor? Por quê? SISTEMAS DE INFORMAÇÃO 58 58 58 58SISTEMAS DE INFORMAÇÃO 58 58SISTEMAS DE INFORMAÇÃO 58 58 58 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores • Qual dos dois algoritmos é melhor? Por quê? – 2 (linha vermelha) – Porque apresenta melhores taxas de TP e FP SISTEMAS DE INFORMAÇÃO 59 59 59 59SISTEMAS DE INFORMAÇÃO 59 59SISTEMAS DE INFORMAÇÃO 59 59 59 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores • Qual dos dois algoritmos é melhor? Por quê? – 2 (linha vermelha) – Porque apresenta melhores taxas de TP e FP • Como seria a curva para um classificador ideal? SISTEMAS DE INFORMAÇÃO 60 60 60 60SISTEMAS DE INFORMAÇÃO 60 60SISTEMAS DE INFORMAÇÃO 60 60 60 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores • Qual dos dois algoritmos é melhor? Por quê? – 2 (linha vermelha) – Porque apresenta melhores taxas de TP e FP • Como seria a curva para um classificador ideal? – Ponto (0,1) SISTEMAS DE INFORMAÇÃO 61 61 61 61SISTEMAS DE INFORMAÇÃO 61 61SISTEMAS DE INFORMAÇÃO 61 61 61 Como construir uma curva ROC Classificadores que só fornecem a classe: representam um único ponto Classificadores que fornecem uma probabilidade ou um score: Teoricamente: basta variar o limiar de -∞ a +∞ Na prática: variar o limiar para cada probabilidade/score apresentado pelas instâncias de teste SISTEMAS DE INFORMAÇÃO 62 62 62 62SISTEMAS DE INFORMAÇÃO 62 62SISTEMAS DE INFORMAÇÃO 62 62 62 Como construir uma curva ROC Ex: 20 instâncias de teste (10 positivas e 10 negativas) Apenas para fins didáticos, as intâncias positivas e negativas estão ordenadas decrescentemente pelo score SISTEMAS DE INFORMAÇÃO 63 63 63 63SISTEMAS DE INFORMAÇÃO 63 63SISTEMAS DE INFORMAÇÃO 63 63 63 Como construir uma curva ROC Ex: 20 instâncias de teste (10 positivas e 10 negativas) Apenas para fins didáticos, as intâncias positivas e negativas estão ordenadas decrescentemente pelo score Cada valor distinto de score (acrescido do ponto (0,0)) corresponde a um possível limiar que resultará em um ponto da função degrau que define a curva ROC SISTEMAS DE INFORMAÇÃO 64 64 64 64SISTEMAS DE INFORMAÇÃO 64 64SISTEMAS DE INFORMAÇÃO 64 64 64 Como construir uma curva ROC A função degrau tenderá a uma curva de verdade à medida que o número de instâncias tender a infinito SISTEMAS DE INFORMAÇÃO 65 65 65 65SISTEMAS DE INFORMAÇÃO 65 65SISTEMAS DE INFORMAÇÃO 65 65 65 Curvas ROC Comparar visualmente dois ou mais classificadores pode não ser fácil SISTEMAS DE INFORMAÇÃO 66 66 66 66SISTEMAS DE INFORMAÇÃO 66 66SISTEMAS DE INFORMAÇÃO 66 66 66 AUC – Area Under the Curve A área sob a curva ROC (AUC) é uma boa medida da qualidade do classificador - quanto mais próximo do ideal (ponto (0,1)) maior a AUC (0 <= AUC <= 1) SISTEMAS DE INFORMAÇÃO 68 68 68 68SISTEMAS DE INFORMAÇÃO 68 68SISTEMAS DE INFORMAÇÃO 68 68 68 AUC balanceada SISTEMAS DE INFORMAÇÃO 69 69 69 69SISTEMAS DE INFORMAÇÃO 69 69SISTEMAS DE INFORMAÇÃO 69 69 69 Curvas ROC – Receiver Operating Characteristic : dois usos • Ajuda a escolher um limiar • Forma de comparar diferentes classificadores • A AUC te ajuda a avaliar um classificador para os vários limiares, mas na hora de usá- lo, qual limiar escolher? • Você pode definir um balanço específico entre sensibilidade e especificidade • Ou utilizar um critério específico SISTEMAS DE INFORMAÇÃO 70 70 70 70SISTEMAS DE INFORMAÇÃO 70 70SISTEMAS DE INFORMAÇÃO 70 70 70 Curvas ROC – escolha de um limiar (optimal cutpoints) • Alguns critérios: – Youden: escolher o que apresenta maior distância (no eixo y) da diagonal (que representa uma classificação totalmente ao acaso (na figura: ponto P) – 01: escolher o mais próximo do ponto (0,1) (na figura: ponto O) SISTEMAS DE INFORMAÇÃO 71 71 71 71SISTEMAS DE INFORMAÇÃO 71 71SISTEMAS DE INFORMAÇÃO 71 71 71 Curvas “ROC-like” Ex: curvas precision-recall • Outras medidas (além da TPR e FPR) podem ser usadas • Duas medidas “opostas”: no sentido de que quando uma sobre outra desce • Ponto ótimo depende das medidas, assim como a melhor AUC ftp://ftp.cs.wisc.edu/machine-learning/shavlik-group/davis.icml06.pdf ftp://ftp.cs.wisc.edu/machine-learning/shavlik-group/davis.icml06.pdf SISTEMAS DE INFORMAÇÃO 72 72 72 72SISTEMAS DE INFORMAÇÃO 72 72SISTEMAS DE INFORMAÇÃO 72 72 72 Taxa de rejeição • O que fazer com os dados que caem muito próximos da fronteira de decisão? [DUDA, HART & STORK, 2001] SISTEMAS DE INFORMAÇÃO 73 73 73 73SISTEMAS DE INFORMAÇÃO 73 73SISTEMAS DE INFORMAÇÃO 73 73 73 Taxa de rejeição • Uma alternativa é rejeitá-los (recusar-se a classificá-los) [DUDA, HART & STORK, 2001] SISTEMAS DE INFORMAÇÃO 74 74 74 74SISTEMAS DE INFORMAÇÃO 74 74SISTEMAS DE INFORMAÇÃO 74 74 74 Taxa de rejeição • Taxa de rejeição: razão do númerode rejeitados (para classificação) sobre o total • Quanto maior a taxa de rejeição, menor a taxa de erro sobre os que sobraram, e vice- versa SISTEMAS DE INFORMAÇÃO 75 75 75 75SISTEMAS DE INFORMAÇÃO 75 75SISTEMAS DE INFORMAÇÃO 75 75 75 Curva taxa de rejeição x erro de classificação [JAIN et al, 2000] SISTEMAS DE INFORMAÇÃO 76 76 76 76SISTEMAS DE INFORMAÇÃO 76 76SISTEMAS DE INFORMAÇÃO 76 76 76 Mais no final da disciplina Mais para frente falaremos mais sobre medidas de desempenho no contexto de classificação multiclasse e multilabel SISTEMAS DE INFORMAÇÃO 77 77 77 77SISTEMAS DE INFORMAÇÃO 77 77SISTEMAS DE INFORMAÇÃO 77 77 77 Outras questões envolvidas com estimação de desempenho Estimativas de desempenho servem para: – Ter uma estimativa do desempenho do classificador treinado com a amostra completa – Comparar algoritmos indutores de classificadores (SVM, Redes Neurais, etc.) – Calibração de hiperparâmetros SISTEMAS DE INFORMAÇÃO 78 78 78 78SISTEMAS DE INFORMAÇÃO 78 78SISTEMAS DE INFORMAÇÃO 78 78 78 Outras questões envolvidas com estimação de desempenho Estimativas de desempenho servem para: – Ter uma estimativa do desempenho do classificador treinado com a amostra completa – Comparar algoritmos indutores de classificadores (SVM, Redes Neurais, etc.) – Calibração de hiperparâmetros SISTEMAS DE INFORMAÇÃO 79 79 79 79SISTEMAS DE INFORMAÇÃO 79 79SISTEMAS DE INFORMAÇÃO 79 79 79 Estimativa do desempenho do classificador • O valor de cada medida de desempenho é uma média (de k-folds, etc.) • O quanto esses valores variaram? O quanto você confiaria no valor estimado? • Menor variabilidade → maior confiança no valor estimado • Conclusão: além de apresentar a média, você deveria apresentar no mínimo alguma medida de dispersão (ex: desvio padrão), box plot, ou intervalo de confiança – Se a altura de uma barra (em um gráfico de barras) é uma média, tem que ter alguma barra de erro SISTEMAS DE INFORMAÇÃO 80 80 80 80SISTEMAS DE INFORMAÇÃO 80 80SISTEMAS DE INFORMAÇÃO 80 80 80 Estimativa do desempenho do classificador Vídeos recomendados sobre intervalo de confiança: SISTEMAS DE INFORMAÇÃO 81 81 81 81SISTEMAS DE INFORMAÇÃO 81 81SISTEMAS DE INFORMAÇÃO 81 81 81 Outras questões envolvidas com estimação de desempenho Estimativas de desempenho servem para: – Ter uma estimativa do desempenho do classificador treinado com a amostra completa – Comparar algoritmos indutores de classificadores (SVM, Redes Neurais, etc) – Calibração de hiperparâmetros SISTEMAS DE INFORMAÇÃO 82 82 82 82SISTEMAS DE INFORMAÇÃO 82 82SISTEMAS DE INFORMAÇÃO 82 82 82 Comparação de classificadores • Para isso, a medida de dispersão (ex: desvio padrão), box plot, ou intervalo de confiança é o mínimo que deve ser usado – Comparar só pela média é uma falácia... • Ex: dois classificadores, F1-scores de 0.9039 e outro 0.9184. Qual é melhor? SISTEMAS DE INFORMAÇÃO 83 83 83 83SISTEMAS DE INFORMAÇÃO 83 83SISTEMAS DE INFORMAÇÃO 83 83 83 Comparação de classificadores • Para isso, a medida de dispersão (ex: desvio padrão), box plot, ou intervalo de confiança é o mínimo que deve ser usado – Comparar só pela média é uma falácia... • Ex: dois classificadores, F1-scores de 0.9039 e outro 0.9184. Qual é melhor? Barras: IC de 95% SISTEMAS DE INFORMAÇÃO 84 84 84 84SISTEMAS DE INFORMAÇÃO 84 84SISTEMAS DE INFORMAÇÃO 84 84 84 Comparação de classificadores • Para isso, a medida de dispersão (ex: desvio padrão), box plot, ou intervalo de confiança é o mínimo que deve ser usado – Comparar só pela média é uma falácia... SISTEMAS DE INFORMAÇÃO 85 85 85 85SISTEMAS DE INFORMAÇÃO 85 85SISTEMAS DE INFORMAÇÃO 85 85 85 Comparação de classificadores • Para isso, a medida de dispersão (ex: desvio padrão), box plot, ou intervalo de confiança é o mínimo que deve ser usado – Comparar só pela média é uma falácia... SISTEMAS DE INFORMAÇÃO 86 86 86 86SISTEMAS DE INFORMAÇÃO 86 86SISTEMAS DE INFORMAÇÃO 86 86 86 Comparação de classificadores • Dá para fazer melhor… • Testes estatísticos para, com um p-valor, dizer se a diferença entre eles é ou não significativa. • Para comparar todos (3 ou mais classificadores): teste de Friedman – Se p-valor < pv crítico (por ex. 0.05), há uma diferença significativa entre os classificadores (quais???) • Para comparar dois: teste de Wilcoxon – Se p-valor < pv crítico (por ex. 0.05), há uma diferença significativa entre os classificadores – Se fez entre vários pares de classificadores, melhor aplicar antes uma correção dos p-valores (ex: Bonferroni – divide p-value crítico pelo nr de testes realizados → 0.05 torna-se 0.167) • Ambos os testes são: – Não-paramétricos: não assumem que os dados (no nosso caso valores das medidas de desempenho) tenham uma distribuição conhecida (ao contrário do ANOVA e teste t de Student) – Pareados: devem ser comparados os resultados de cada fold específico SISTEMAS DE INFORMAÇÃO 87 87 87 87SISTEMAS DE INFORMAÇÃO 87 87SISTEMAS DE INFORMAÇÃO 87 87 87 Outras questões envolvidas com estimação de desempenho Estimativas de desempenho servem para: – Ter uma estimativa do desempenho do classificador treinado com a amostra completa – Comparar algoritmos indutores de classificadores (SVM, Redes Neurais, etc) – seleção de modelos – Calibração de hiperparâmetros SISTEMAS DE INFORMAÇÃO 88 88 88 88SISTEMAS DE INFORMAÇÃO 88 88SISTEMAS DE INFORMAÇÃO 88 88 88 Ciclo de aprendizado supervisionado mundo Coleta de dados Análise exploratória Pré-processamento Redução de dimensionalidade Escolha do alg. indutor Treinamento do classificador Avaliação do classificador Retreinamento do classificador Calibração de hiperparâmetros SISTEMAS DE INFORMAÇÃO 89 89 89 89SISTEMAS DE INFORMAÇÃO 89 89SISTEMAS DE INFORMAÇÃO 89 89 89 Exemplos de hiperparâmetros SISTEMAS DE INFORMAÇÃO 90 90 90 90SISTEMAS DE INFORMAÇÃO 90 90SISTEMAS DE INFORMAÇÃO 90 90 90 Calibração de hiperparâmetros (hyperparameter tuning / model selection) • Cada combinação de valores dos hiperparâmetros induzirá um classificador diferente, por sua vez terão diferentes valores das medidas de desempenho (acurácia, f1-score, etc.) • Testar várias combinações, e escolher a que maximiza uma determinada medida de interesse (ex: f1-score) SISTEMAS DE INFORMAÇÃO 91 91 91 91SISTEMAS DE INFORMAÇÃO 91 91SISTEMAS DE INFORMAÇÃO 91 91 91 Calibração de hiperparâmetros (hyperparameter tuning / model selection) • Quais valores testar? • Estratégias: – Grid-search – Random search – Busca sequencial (otimiza um enquanto os outros ficam congelados) SISTEMAS DE INFORMAÇÃO 92 92 92 92SISTEMAS DE INFORMAÇÃO 92 92SISTEMAS DE INFORMAÇÃO 92 92 92 Questões críticas de uma boa estimação de desempenho • Regra de ouro: o treinamento NUNCA deveria usar QUALQUER informação contida (mesmo que parcialmente) na amostra de teste (isso seria “anti-ético” – informação privilegiada) • Isso quer dizer que o que não deveria ser feito no dataset completo (antes da divisão entre treinamento e teste)? – Balanceamento de classes baseado em superamostragem (oversampling) – Redução de dimensionalidade – Filtro de correlação, normalização, etc... – Nem a calibração de parâmetros na amostra de teste SISTEMAS DE INFORMAÇÃO 93 93 93 93SISTEMAS DE INFORMAÇÃO 93 93SISTEMAS DE INFORMAÇÃO 93 93 93 O que fazer então? Fase 1: calibração de hiperparâmetros Para cada rodada da validação cruzada - preparar a amostra de treinamento (folds de treino de uma linha): pré-processamento (as várias tarefas), redução de dimensionalidade - para cada combinação de valores de hiperparâmetros - treinar um classificador - calcular a medida de desempenho a ser otimizada na amostra de calibração - deixar a amostra de teste intocada não fazer nada com ela nesta fase 1 Calcular a média da medida de desempenho a ser otimizada para cada combinaçãode hiperparâmetros Selecionar a combinação de valores de hiperparâmetros que maximizou essa média SISTEMAS DE INFORMAÇÃO 94 94 94 94SISTEMAS DE INFORMAÇÃO 94 94SISTEMAS DE INFORMAÇÃO 94 94 94 O que fazer então? Fase 2: Estimação de desempenho Para cada rodada da validação cruzada - preparar a amostra de treinamento (folds de treino + calibração de uma linha): pré-processamento (as várias tarefas), redução de dimensionalidade - apenas para a combinação ótima de valores de hiperparâmetros - treinar um classificador - calcular todas as medidas de desempenho de interesse na amostra de teste Calcular a média de cada medida de desempenho SISTEMAS DE INFORMAÇÃO 95 95 95 95SISTEMAS DE INFORMAÇÃO 95 95SISTEMAS DE INFORMAÇÃO 95 95 95 O que fazer então? • Observações: – Se você testará diferentes algoritmos de indução de classificadores, você pode fazer uma única vez a preparação das amostras de treinamento, calibração e teste – Não sei se o sklearn te dá toda essa flexibilidade... SISTEMAS DE INFORMAÇÃO 96 96 96 96SISTEMAS DE INFORMAÇÃO 96 96SISTEMAS DE INFORMAÇÃO 96 96 96 SISTEMAS DE INFORMAÇÃO 97 97 97 97SISTEMAS DE INFORMAÇÃO 97 97SISTEMAS DE INFORMAÇÃO 97 97 97 SISTEMAS DE INFORMAÇÃO 98 98 98 98SISTEMAS DE INFORMAÇÃO 98 98SISTEMAS DE INFORMAÇÃO 98 98 98 O que fazer então? • Observações: – Se você testará diferentes algoritmos de indução de classificadores, você pode fazer uma única vez a preparação das amostras de treinamento, calibração e teste – Não sei se o sklearn te dá toda essa flexibilidade… mas dá para aproveitar pelo menos uma parte! SISTEMAS DE INFORMAÇÃO 99 99 99 99SISTEMAS DE INFORMAÇÃO 99 99SISTEMAS DE INFORMAÇÃO 99 99 99 Livro do “Mãos à obra…” (Géron, 2021) SISTEMAS DE INFORMAÇÃO 100 100 100 100SISTEMAS DE INFORMAÇÃO 100 100SISTEMAS DE INFORMAÇÃO 100 100 100 Atividade 5 (para 22/9) • Implementar o processo adequado (fase 1 e 2) de calibração de hiperparâmetros (maximizando a F1-score, ou outra medida de maior importância para seu projeto) e estimação de desempenho (pelo menos f1- score, acurácia, revocação e precisão) baseada em validação cruzada estratificada (k=10 se puder, mas deixar k como parâmetro) SISTEMAS DE INFORMAÇÃO 101 101 101 101SISTEMAS DE INFORMAÇÃO 101 101SISTEMAS DE INFORMAÇÃO 101 101 101 Atividade 5 (para 22/9) – O que acrescentar aos slides? • Métodos: – Que valor de k? – Quais valores de quais hiperparâmetros testou? Que estratégia (grid-serch?)? – Que medida maximizou? SISTEMAS DE INFORMAÇÃO 102 102 102 102SISTEMAS DE INFORMAÇÃO 102 102SISTEMAS DE INFORMAÇÃO 102 102 102 Atividade 5 (para 22/9) – O que acrescentar aos slides? • Resultados: 1) Tabela: Cada linha corresponde às medidas (médias) referente ao classificador treinado com os hiperparâmetros associados à maior f1-score (ou sua outra medida) Hiperparâmetros ótimos SISTEMAS DE INFORMAÇÃO 103 103 103 103SISTEMAS DE INFORMAÇÃO 103 103SISTEMAS DE INFORMAÇÃO 103 103 103 Atividade 5 (para 22/9) – O que acrescentar aos slides? • Resultados: 2) Gráficos de barras: Um para cada medida (f1, acurácia, revocação e precisão) representando as médias da tabela anterior com os devidos intervalos de confiança ou desvio padrão, etc. • Cada gráfico deverá ter 3-4 barras referentes ao classificador Naive Bayes: uma barra para cada “dataset” (todas as características – se puder, PCA, selecionador de características 1, selecionador de características 2) • Não esqueçam de colocar no gráfico e rótulo nas barras e uma legendano slide explicando a “figura”. • Exemplo: (próximo slide) SISTEMAS DE INFORMAÇÃO 104 104 104 104SISTEMAS DE INFORMAÇÃO 104 104SISTEMAS DE INFORMAÇÃO 104 104 104 Exemplo • Cada medida (f1-score, acurácia, revocação e precisão) terá um gráfico desses • Cada cor de barra corresponde a um classificador testado (por enquanto apenas o Naive Bayes) SISTEMAS DE INFORMAÇÃO 105 105 105 105SISTEMAS DE INFORMAÇÃO 105 105SISTEMAS DE INFORMAÇÃO 105 105 105 Referências • DUDA, R.; HART, P.; STORK, D. Pattern Classification . John Willey, 2001 (Cap. 2.1 a 2.3) • FAWCETT, T. An Introduction to ROC Analysis. Pattern Recognition Letters, v. 27, p. 861-874, 2006. • GÉRON, A. Mãos à Obra: Aprendizado de Máquina com Scikit- Learn, Keras & TensorFlow. 2a ed. Alta Books, 2021. Cap 3 • JAIN, A.K.; DUIN, R.P.W.; MAO, J. Statistical Pattern Recognition : A Review. IEEE Transactions on Pattern Analysis and Machine Intelligence, v. 22, n. 1, p. 4-37, 2000 (seções 2 e 7) • HASTIE, T.; TIBSHIRANI, R.; FRIEDMAN, J. The elements of statistical learning. 2a ed, 2017. Cap 7 • Refaeilzadeh P., Tang L., Liu H. (2009) Cross-Validation. In: LIU L., ÖZSU M.T. (eds) Encyclopedia of Database Systems. Springer, Boston, MA • Outras no edisciplinas Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 40 Slide 41 Slide 42 Slide 43 Slide 44 Slide 45 Slide 46 Slide 47 Slide 48 Slide 49 Slide 50 Slide 51 Slide 52 Slide 53 Slide 54 Slide 55 Slide 56 Slide 57 Slide 58 Slide 59 Slide 60 Slide 61 Slide 62 Slide 63 Slide 64 Slide 65 Slide 66 Slide 68 Slide 69 Slide 70 Slide 71 Slide 72 Slide 73 Slide 74 Slide 75 Slide 76 Slide 77 Slide 78 Slide 79 Slide 80 Slide 81 Slide 82 Slide 83 Slide 84 Slide 85 Slide 86 Slide 87 Slide 88 Slide 89 Slide 90 Slide 91 Slide 92 Slide 93 Slide 94 Slide 95 Slide 96 Slide 97 Slide 98 Slide 99 Slide 100 Slide 101 Slide 102 Slide 103 Slide 104 Slide 105
Compartilhar