Inteligência Artificial: Uma Abordagem
de Aprendizado de Máquina
Avaliação Modelos Preditivos
Não existe técnica de AM universal, que se saia
melhor em qualquer tipo de problema
Implica na necessidade de experimentos
Características do problema e das técnicas pode
auxiliar em alguns casos
Ex. modelo deve ser interpretável ⇒ técnicas
simbólicas, dados possuem alta dimensão ⇒ SVM, etc.
Mesmo assim diversos algoritmos podem ser
Avaliação Modelos Preditivos
Mesmo que um único algoritmo seja escolhido
Variações de parâmetros produzem diferentes modelos
⇒
Domínio de AM: necessidade de
experimenta-ção
Experimentos controlados
Procedimentos que garantem a corretude e
Avaliação Modelos Preditivos
Diferentes aspectos podem ser considerados:
Acurácia do modelo nas previsões
Compreensibilidade do conhecimento extraído Tempo de aprendizado
Requisitos de armazenamento Etc.
Concentraremos discussões a medidas de desempenho preditivo
Métricas de Erro
Desempenho na rotulação de objetos
Métricas para classificação:
Taxa de erro Acurácia
Métricas para regressão:
Erro quadrático médio Distância absoluta média
Métricas para classificação
Taxa de erro
de um classificador f
De classificações incorretas
Proporção de exemplos classificados incorretamente
em um conjunto com n objetos
Comparação da classe conhecida com a predita I é função identidade
= 1 se argumento é verdadeiro e 0 em caso contrário
Varia entre 0 e 1 e valores próximos de 0 são melhores
Métricas para classificação
Taxa de acerto
ou
acurácia
de um classificador f
Complemento da taxa de erro
Proporção de exemplos classificados corretamente em
um conjunto com n objetos
Varia entre 0 e 1 e valores próximos de 1 são melhores
Métricas para classificação
Matriz de confusão
Alternativa para visualizar desempenho de classificador Predições corretas e incorretas em cada classe
Classe predita c1 c2 c3 c1 11 1 3 c2 1 4 0 c3 2 1 6 Classe verdadeira
• Linhas representam classes verdadeiras
• Colunas representam classes preditas
• Elemento mij: número de exemplos da clas-se ci classificados como pertencentes à clas-se cj
• Diagonal da matriz: acertos do classificador • Outros elementos: erros cometidos
Métricas para classificação
Métricas para regressão
Erro
pode ser calculado pela distância entre o
valor conhecido e o valor predito pelo modelo
Erro quadrático médio (Mean
Squared Error – MSE)
MSE(f) = (1/n) ∑(yi − f(xi))2
Distância absoluta média
(Mean Absolute Distance MDA) MDA(f) = (1/n) ∑|yi − f(xi)|
MSE e MAD são sempre não negativos;
Amostragem
Tem-se usualmente um único conjunto de n
objetos
Deve ser usado para induzir e avaliar o preditor
Desempenho no conjunto de treinamento é
otimista
Todos algoritmos tentam de alguma forma melhorar seu
desempenho no conjunto de treinamento na fase indutiva
Avaliar modelo no conjunto de treinamento é conhecido
Amostragem
Métodos de amostragem
: obter estimativas de
desempenho mais confiáveis
Definindo subconjuntos disjuntos de:
Treinamento
Dados empregados na indução
e no ajuste do modelo Qualquer ajuste de
parâmetros deve ser feito
nos dados de treinamento
Teste
Simulam a apresentação de
novos exemplos ao preditor
(não vistos em sua indução)
Somente avaliar o modelo
obtido
Em algumas situações, dados de treinamento são sub-divididos, gerando conjunto de validação dedicado ao ajuste de
Amostragem
Principais
métodos de amostragem
:
Holdout
Amostragem aleatória
Validação cruzada
Leave-one-out
Bootstrap
Holdout
Método mais simples:
Divide conjunto de dados em proporção p para
treinamento e (1-p) para teste Uma única partição
Valores típicos de p: ½, 2/3 ou ¾
Conj. dados
trein.
teste Estimativa de desempenho Treinamento do modelo
2/3
Holdout
Exemplo:
Objeto Atributo 1 Atributo 2 Atributo 3 Classe1 855 5142 2708 Safra 952 854 23155 2716 Safra 95 3 885 16586 2670 Safra 95 4 877 16685 2677 Safra 95 5 839 5142 2708 Safra 95 6 854 5005 2685 Safra 95 7 885 19455 2708 Safra 95 8 839 5027 2708 Safra 95 9 877 16823 2677 Safra 95 10 892 19180 2716 Safra 95 11 24628 39437 381 Safra 96 12 43183 39277 328 Safra 96 13 27871 39712 389 Safra 96 14 42329 40307 328 Safra 96 15 41627 40032 335 Safra 96
Holdout
Exemplo:
Objeto Atributo 1 Atributo 2 Atributo 3 Classe
4 877 16685 2677 Safra 95 6 854 5005 2685 Safra 95 8 839 5027 2708 Safra 95 2 854 23155 2716 Safra 95 10 892 19180 2716 Safra 95 1 855 5142 2708 Safra 95 6 854 5005 2685 Safra 95 18 33539 40078 335 Safra 96 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 12 43183 39277 328 Safra 96 17 33677 40375 328 Safra 96 20 34485 40742 358 Safra 96 11 24628 39437 381 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3 Classe
3 885 16586 2670 Safra 95 5 839 5142 2708 Safra 95 9 877 16823 2677 Safra 95 13 27871 39712 389 Safra 96 14 42329 40307 328 Safra 96 16 39399 40322 335 Safra 96 Conjunto de treinamento Conjunto de teste
Holdout
Indicado para grande quantidade de dados
Se pequena quantidade de dados
Poucos exemplos são usados no treinamento Modelo pode depender da composição dos
conjuntos de treinamento e teste
Quanto menor conjunto de treinamento, maior a variância
do modelo
Quanto menor conjunto de teste, menos confiável a
Holdout
Não avalia o quanto o desempenho de uma
técnica varia
Quanto a diferentes combinações de exemplos de
treinamento
É possível que uma divisão deixe no subconjunto de
teste exemplos “mais fáceis”
Para tornar os resultados menos dependentes da
partição feita: vários holdout
André Ponce de Leon de Carvalho 19
Amostragem aleatória
Repetições de holdout
Há sobreposição entre os conjuntos de teste gerados Fornece uma média de desempenho
Conj. dados trein1 teste1 Trein. (2/3) Teste (1/3) trein2 teste2 treinr tester . . . Média e desvio-padrão de desempenho
Validação cruzada
Método mais usado: r-fold cross validation
Conjunto é dividido em r partes de tamanho
aproxima-damente igual
Objetos de r-1 partes são usados no treinamento e a
parte restante é usada para teste
Procedimento é repetido r vezes usando cada partição
para teste
⇒ subconjuntos de teste são independentes entre si
Desempenho é dado por média Valor típico de r: 10
Validação cruzada
Ilustração para r = 3:
Trein. Teste Média e desvio-padrão de desempenho r=3 Conj. dadosValidação cruzada
Variação: r-fold cross validation estratificado
Manter a distribuição de classes em cada partição
Ex: se conjunto de dados original tem 20% na classe c
1 e 80% na classe c2, cada partição também deve manter essa proporção
Distribuição de classes: proporção de exemplos em
cada classe
Para cada classe c
j, dist(cj) = número de exemplos que possuem a classe cj / número total de exemplos
(
)
∑
= = = n i j i j I y c n c dist 1 1 ) (Distribuição de classes
Ex.: conjunto de dados com 100 exemplos
60 são da classe c 1 15 são da classe c 2 25 são da classe c 3
A distribuição de classe é dist(c
1,c2,c3) = (0,60, 0,15,
0,25) = (60%, 15%, 25%)
A classe c
1 é a classe majoritária ou prevalente A classe c é a classe minoritária
Cross-validation
estratificado
Exemplo:
r = 5
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 6 854 5005 2685 Safra 95 2 854 23155 2716 Safra 95 17 33677 40375 328 Safra 96 12 43183 39277 328 Safra 96 8 839 5027 2708 Safra 95 5 839 5142 2708 Safra 95 15 41627 40032 335 Safra 96 16 39399 40322 335 Safra 96
Cross-validation
estratificado
Ex.: Iteração 1
Objeto Atributo 1 Atributo 2 Atributo 3Classe
1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 6 854 5005 2685 Safra 95 2 854 23155 2716 Safra 95 17 33677 40375 328 Safra 96 12 43183 39277 328 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 Conjunto de treinamento Conjunto de teste
Cross-validation
estratificado
Ex.: Iteração 2
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 6 854 5005 2685 Safra 95 2 854 23155 2716 Safra 95 17 33677 40375 328 Safra 96 12 43183 39277 328 Safra 96 8 839 5027 2708 Safra 95 5 839 5142 2708 Safra 95 15 41627 40032 335 Safra 96 16 39399 40322 335 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3Classe
1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 Conjunto de treinamento Conjunto de teste
Cross-validation
estratificado
Ex.: Iteração 3
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 6 854 5005 2685 Safra 95 2 854 23155 2716 Safra 95 17 33677 40375 328 Safra 96 12 43183 39277 328 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3Classe
7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 Conjunto de treinamento Conjunto de teste
Cross-validation
estratificado
Ex.: Iteração 4
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96 8 839 5027 2708 Safra 95 5 839 5142 2708 Safra 95 15 41627 40032 335 Safra 96 16 39399 40322 335 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3Classe
6 854 5005 2685 Safra 95 2 854 23155 2716 Safra 95 17 33677 40375 328 Safra 96 12 43183 39277 328 Safra 96 Conjunto de treinamento Conjunto de teste
Cross-validation
estratificado
Ex.: Iteração 5
Objeto Atributo 1 Atributo 2 Atributo 3Classe
4 877 16685 2677 Safra 95 9 877 16823 2677 Safra 95 18 33539 40078 335 Safra 96 11 24628 39437 381 Safra 96 1 855 5142 2708 Safra 95 3 885 16586 2670 Safra 95 14 42329 40307 328 Safra 96 20 34485 40742 358 Safra 96 7 885 19455 2708 Safra 95 10 892 19180 2716 Safra 95 15 41627 40032 335 Safra 96 19 34150 40353 358 Safra 96
Objeto Atributo 1 Atributo 2 Atributo 3Classe
8 839 5027 2708 Safra 95 5 839 5142 2708 Safra 95 15 41627 40032 335 Safra 96 16 39399 40322 335 Safra 96 Conjunto de treinamento Conjunto de teste
Leave-one-out
Caso extremo de cross-validation com r = n
A cada ciclo exatamente um exemplo é separado para
testes
Os n-1 restantes são usados no treinamento
Desempenho: soma dos desempenhos calculados para
cada exemplo de teste individual
Produz estimativa mais fiel do desempenho preditivo Mas é computacionalmente caro
Leave-one-out
Ex.: no caso do nosso exemplo a amostra tem 20
exemplos, então r=20
Ou seja, cada conjunto de treinamento será formado
por 19 exemplos e o conjunto de teste por um único exemplo
Assim, o processo todo será repetido 20 vezes E se o conjunto de dados tivesse 500 exemplos?
Validação cruzada
Crítica
: uma parte dos dados é partilhada entre os
subconjuntos de treinamento
Para r ≥ 2, uma propor-ção de (1 – 2/r) dos objetos é compartilhada Ex. r = 10 ⇒ 80% dos
Bootstrap
Baseado em amostragem com reposição
r subconjuntos de treinamento são amostrados, com
reposição
Um exemplo pode estar presente mais de uma vez em
um conjunto de treinamento
Exemplos não selecionados compõem conjuntos de
teste
Desempenho: média dos desempenhos nos testes Valor típico para r: 100 ou mais
Bootstrap
Ilustração:
Conj. dados trein1 Amostragem com reposição . . . trein2 treinr teste1 teste2 tester Média e desvio-padrão de desempenhoBootstrap
Há vários estimadores bootstrap, mais comum: e
0 Cada subconjunto de treinamento tem n exemplos
Cada exemplo tem probabilidade 1 – (1 – 1/n)n de ser
selecionado ao menos uma vez
Para n grande, tende a 1 - 1/e = 0,632
Fração de exemplos não repetidos é de 63,2%
Exemplos remanescentes formam subconjunto de teste Desempenho: média das iterações
Amostragem
Observações:
Para médias de desempenho, é importante reportar
também os valores de desvio-padrão
Alto desvio padrão ⇒ alta variabilidade dos resultados Indicativo de sensibilidade a variações nos dados de
treinamento
Estimativas mais precisas também podem ser obtidas
Amostragem
Ex. Seja um dos métodos de amostragem
r–fold CV, por ser o mais utilizado Um indutor A gerará r hipóteses h
1, h2, ..., hr
E cada hipótese terá uma taxa de erro, medida em no
i-ésimo fold
A média e desvio-padrão do desempenho de A são
então dados por (usando medida de erro):
∑
= r
er
h
A
Amostragem
Exemplo:
Em 10-fold CV, algoritmo A obteve os erros:
(5,5; 11,40; 12,70; 5,20; 5,90; 11,30; 10,90; 11,20; 4,90; 11,00) Temos então: 9 10 90 ) (
A
= =med
90,30 3,17 9 1 ) (A = = dpClassificação binária
Seja um problema com duas classes: + e
- Matriz de confusão: Classe predita + -Classe + VP FN verdadeira - FP VN VP: verdadeiros positivos
Número de exemplos da classe + classificados corretamente
VN: verdadeiros negativos
FP: falsos positivos
Número de exemplos da classe -classificados incorretamente como +
FP: falsos negativos VP FN FP VN + -+
-Medidas de desempenho
Outras medidas calculadas por matriz de confusão:
Taxa de erro na classe + (taxa de falsos negativos):
Proporção de exemplos da classe + incorretamente classificados err+(f) = FN
VP+FN
Taxa de erro na classe - (taxa de falsos positivos):
Proporção de exemplos da classe - incorretamente classificados err-(f) = FP VN+FP VP FN FP VN VP FN FP VN
Medidas de desempenho
Outras medidas calculadas por matriz de confusão:
Taxa de erro total:
Soma da diagonal secundária da matriz / n err(f) = FP + FN
n Taxa de acerto ou acurácia total: Soma da diagonal principal / n
ac(f) = VP + VN
VP FN FP VN
Medidas de desempenho
Outras medidas calculadas por matriz de confusão:
Precisão:
Proporção de exemplos + classificados corretamente entre os preditos como +
prec(f) = VP
VP + FP Sensibilidade ou revocação:
Taxa de acerto na classe positiva (taxa de verdadeiros positivos) sens(f) = VP VP + FN VP FN FP VN VP FN FP VN
Medidas de desempenho
Outras medidas calculadas por matriz de confusão:
Especificidade:
Taxa de acerto na classe -. Seu complemento é a taxa de falsos positivos.
esp(f) = VN
VN + FP
VP FN FP VN
Medidas de desempenho
Ex.: avaliação de três classificadores
Classificador 1 TVP = 0.4 TFP = 0.3 Classificador 2 TVP = 0.7 TFP = 0.5 Classificador 3 TVP = 0.6 TFP = 0.2 Classe predita 40 60 30 70 p n P n Cl as se v erd ad ei ra Classe predita 70 30 50 50 p n P N Cl as se v erd ad ei ra Classe predita 60 40 20 80 p n P N Cl as se v erd ad ei ra
Exemplo
Seja um classificador com a seguinte matriz
de confusão, definir:
Acurácia
Precisão
Revocação
Especificidade
Classe predita 70 30 40 60 p n P n Cl as se v erd ad ei raExemplo
Acurácia = Precisão = Revocação = Especificidade = FP VP VP + FN FP VN VP VN VP + + + + FN VP VP + p n p n VP FN FP VN p n p n 70 30 40 60 FP VN VN + Predito Ve rd ad ei roExemplo
Acurácia = = (70 + 60) / (70 + 30 + 40 + 60) = 0.65 Precisão = = 70/(70+40) = 0.64 Revocação = = 7/(70+30) = 0.70 Especificidade = = 60/(40+60) = 0.60 FP VP VP + FN FP VN VP VN VP + + + + FN VP VP + FP VN VN + p n p VP FN FP VN p n p n 70 30 Predito Ve rd ad ei roGeneralizando para mais classes
Para mais que duas classes:
Considera cada uma + e as demais
-
Ex. C1:
prec(C1) = 1 rev(C1) = 0,98
Generalizando para mais classes
Para mais que duas classes:
Ex. C2:
Generalizando para mais classes
Para mais que duas classes:
Ex. C3:
prec(C3) = 0,94 rev(C3) = 0,96
Precisão vs revocação
Precisão: exatidão do modelo
Ex. precisão 1,0 para uma classe C: itens rotulados
como C realmente pertencem a C
Não fornece informação sobre exemplos de C que não
foram corretamente classificados
Revocação: completude do modelo
Ex. revocação 1,0 para uma classe C: itens da classe
Precisão vs revocação
5 5 4 3 4 2 1 3 2 1 Revocação Pre ci sã o Classificador 1 Classificador 2Precisão vs revocação
Precisão e revocação costumam ser discutidas em
conjunto, combinadas em uma medida F:
Média harmônica da previsão e revocação
Usando w = 1 ⇒ mesmo grau de importância para
duas medidas ⇒ F1
F(f) = (w + 1) rev(f) prec(f) rev(f) + w prec(f)
Análise ROC
Forma de avaliar classificadores binários
Curvas ROC (Receiving Operating Characteristics) Gráfico bidimensional plotado em espaço ROC
Eixo x = taxa de falsos positivos (TFP)
Eixo y = taxa de verdadeiros positivos (TVP)
Desempenho de um classificador pode ser plotado
nessa curva
Análise ROC
Ex.: colocar no gráfico ROC os 3 classificadores do
exemplo anterior
Classificador 1 TFP = 0.3 TVP = 0.4 Classificador2 TFP = 0.5 TVP = 0.7 Classificador 3 TFP = 0.2 TVP = 0.6Análise ROC
Taxa de FP Ta xa d e VP Escolha aleatória Sempre positiva Classificador ideal Sempre negativaROC para os três classificadores
0.0 0.2 0.4 0.6 0.8 1.0 Robert Holte University of Alberta 1.0 0.8 0.6 0.4 0.2 0.0 Pior classificador
Análise ROC
Mais usual: gerar
curva ROC
É necessário empregar um ranqueamento na
classificação
Muitos classificadores produzem medidas que
permitem ranquear respostas
Ex. NB: saída é discretizada com limiar default de 0,5 Ex. SVM: saída é discretizada por função sinal (limiar 0)
Análise ROC
Exemplo:
Comparando duas curvas:
• Sem intersecção: a que se mais se aproxima do ponto (0,1) é de melhor desempenho • Com intersecções: cada algo-ritmo tem uma região em que é melhor que o outro
Classificador A Classificador B
Análise ROC
Mais usual: gerar
curva ROC
e calcular
área abaixo
da curva ROC
AUC (Area Under ROC Curve) Produz valores no intervalo [0,1]
Valores mais próximos de 1 são considerados melhores
É mais confiável usar média de AUCs
AUC
0.0 0.2 0.4 0.6 0.8 1.0 1.0 0.8 0.6 0.4 0.2 0.0 Taxa de FP Ta xa d e VP Área = 0.5 Nenhuma DiscriminaçãoAUC
1.0 0.8 0.6 0.4 0.2 Ta xa d e VP Discriminação Perfeita Área = 1.0AUC
0.0 0.2 0.4 0.6 0.8 1.0 1.0 0.8 0.6 0.4 0.2 0.0 Taxa de FP Ta xa d e VP Área = 0.66AUC
1.0 0.8 0.6 0.4 0.2 Ta xa d e VP Área = 0.66 Área = 0.82Análise ROC
Vantagens:
Realizar medidas de desempenho independentes do
limiar de classificação e de custos associados às classificações incorretas e distribuição das classes
Uso de diferentes limiares representa maior ou menor
ênfase à classe positiva
Permite lidar com desbalanceamento e diferentes custos de
classificação
Taxa de erro/acerto é bastante sensível a desbalanceamentos (ex. Conjunto com 90 + e 10 -, taxa de acerto de 0,90 não
Análise ROC
Desvantagens:
Testes de hipóteses
Comparando o desempenho de dois ou mais
algoritmos
Há vários testes na literatura
Não há consenso sobre teste mais adequado
Embora se concorde que o ideal é comparar os
de-sempenhos de diferentes algoritmos estatisticamente Diferença entre eles é estatisticamente significante (a
Testes de hipóteses
Comparação de algoritmos: todos devem ser
testados em igualdade de condições
Mesmas partições dos dados
Desempenho medido nos mesmos objetos
Obtida estimativas de desempenho ⇒ comparar com
teste de hipóteses
Testes de hipóteses
Hipótese estatística
: alegação sobre o valor de
um ou mais parâmetros
Ex. Sejam m
1 e m2 as médias de erro de dois
algoritmos
Algumas hipóteses possíveis:
m
1 = m2 (médias podem ser consideradas equivalentes)
m
Testes de hipóteses
Suposições
: normalmente há duas suposições
contraditórias em consideração
Ex. H
0: m1 = m2 vs H1: m1 ≠ m2 H
0 é chamada hipótese nula
É inicialmente assumida verdadeira
H
1 é chamada hipótese alternativa
Deve-se decidir qual das hipóteses é a correta
Testes de hipóteses
Procedimento de teste
: regra para decidir se H
0
é
rejeitada
Procedimento de teste tem:
Estatística de teste: em função dos dados em que
decisão se baseia
Região de rejeição: conjunto de valores da estatística de
teste para os quais H0 é rejeitada
Hipótese nula é rejeitada se o valor da estatística de teste
Testes de hipóteses
Procedimentos de teste
podem cometer erros
Erro do tipo I: H
0 é rejeitada quando é verdadeira Erro do tipo II: H
0 é falsa e não é rejeitada
Normalmente erros do tipo I são considerados mais sérios
⇒ maioria dos testes envolve controlar a probabilidade de ocorrência de erro do tipo I, denotada por α
(calculam região de rejeição para manter α sob controle)
Testes de hipóteses
Serão discutidos testes para comparar modelos
em vários conjuntos de dados
Wilcoxon signed-rank Friedman
Ambos são pareados e não paramétricos
E são baseados em ranqueamento
Comparando dois modelos
H
0
: desempenhos dos modelos são equivalentes
Ex. algoritmo padrão A vs novo algoritmo B
Teste Wilconxon signed-ranks
Calcular diferenças das medidas de desempenho Valores absolutos das diferenças são ranqueados
Ordem crescente
Comparando dois modelos
Sejam dois algoritmos A e B
Se diferenças de B – A usando medida em que
maiores valores são melhores:
Diferenças positivas: melhor desempenho de B
Diferenças negativas: melhor desempenho de A
Conj C4.5 C4.5+m Diferença DifAbs Posição
pulmão 0,583 0,583 0,000 0,000 1,5 fungo 0,583 0,583 0,000 0,000 1,5 atmosfera 0,882 0,888 0,006 0,006 3 mama 0,599 0,591 -0,008 0,008 4
Comparando dois modelos
Sejam dois algoritmos A e B
R+: soma das posições em que B é melhor que A R-: soma das posições em que B é pior que A
Diferenças nulas são repartidas igualmente
R+ = ∑di>0pos(di) + ½ ∑di=0pos(di)
Comparando dois modelos
Sejam dois algoritmos A e B
Alguns livros apresentam tabelas com valores críticos
exatos para S, até N = 25 conjuntos de dados
Para mais conjuntos de dados, estatística do teste é:
z = S - ¼ N(N-1)
√(1/24) N (N+1) (2N+1)
Comparando mais modelos
A algoritmos sendo comparados
Múltiplos testes
Ex. H
0: m1 = m2 = ... = mA
Efeito da multiplicidade: probabilidade de um teste
detec-tar diferença estatística quando ela não existe aumenta
Comparando mais modelos
Teste de Friedman
Ranquea algoritmos pelo valor absoluto da medida de
desempenho em cada conjunto de dados Dos melhores aos piores
Empates: valores médios de posição são atribuídos
Seja ri
j a posição do desempenho do algoritmo j no
conjunto de dados I
Compara ranqueamentos médios R
j dos algoritmos H
0: todos algoritmos são equivalentes
Comparando mais modelos
Teste de Friedman
Estatística do teste: FF = (N-1) χ 2 N (A-1) - χ2 χ2 = 12N [∑ R j2 – (A (A+1)2)/4] A(A-1)Comparando mais modelos
Teste de Friedman
Hipótese nula rejeitada ⇒ há diferenças entre os
algoritmos
Mas não diz quais são
Necessário fazer um pós-teste
Pós-teste: um par de algoritmos tem desempenho diferente
caso diferença entre os valores médios de posição seja maior ou igual a CD (critical difference)
Comparando mais modelos
Teste de Friedman
Comparando todos algoritmos em pares: estatística de
Nemenyi
Comparando vários a um único algoritmo: estatística
de Bonferroni-Dunn
A 2 3 4 5 6 7 8 9 10
Nemenyi 1,960 2,343 2,569 2,728 2,850 2,949 3,031 3,102 3,164 Bonferroni-Dunn 1,960 2,241 2,394 2,498 2,576 2,648 2,690 2,724 2,773
Comparando mais modelos
Representando os resultados dos pós-testes
4 3 2 1 D C A B CD
Pós-teste Nemenyi comparando quatro algoritmos A, B, C e D
Comparando mais modelos
Representando os resultados dos pós-testes
Pós-teste Bonferroni-Dunn comparando
4 3 2 1
D C
A B
Decomposição viés-variância
Decomposição do erro dos algoritmos de AM
Um algoritmo de AM comete dois tipos de erro:
Sistemáticos: devido à linguagem de representação
usada
Erros devido à dependência em relação aos dados de
treinamento
Origem da análise: regressão quadrática
Decomposição viés-variância
Erro esperado pode ser dividido na soma de três
quantidades não negativas:
Ruído intrínseco do objetivo
Limite inferior do erro esperado para qualquer algoritmo de AM (erro do classificador de Bayes ótimo)
Quadrado do enviesamento
Mede quão bem a predição média do algoritmo (sobre todos algoritmos de treinamento de mesmo tamanho) corresponde à variável objetivo
Decomposição viés-variância
Resumindo:
Viés: mede erro sistemático (persistente) do algoritmo
Variância: mede flutuação do erro
Devido ao uso de uma amostra particular de treinamento Componente tende para 0 quando n → ∞
Conclusões
Na prática, o mais usado é:
10 fold cross validation
Estratificado para classificação
Leave-one-out para conjuntos de dados pequenos
Medidas de desempenho preditivo
Taxa de erro/acerto para classificação
Medicina: importante sensibilidade
Recuperação de informação: medida F
Conclusões
Atenção
:
Reportar média e desvio-padrão de desempenhos Conjunto de teste deve ser somente para teste
Simular a chegada de dados totalmente novos ao modelo Indução/ajustes devem ser feitos usando os dados de
treinamento
Realizar testes estatísticos para comparar
desempenhos de diferentes algoritmos
Equilíbrio viés-variância
Quando um aspecto de um algoritmo é modificado,
pode haver um efeito oposto no viés e na variância
Ex. aumentando graus de liberdade do algoritmo, viés
diminui, mas variância aumenta
⇒ buscar equilíbrio
Referências
Slides de:
ICMC-USP:
Prof Dr André C. P. L. F. de Carvalho Profa Dra Maria Carolina Monard
Prof Dr Ricardo Campello
Profa Dra Solange O. Rezende Prof Dr Thiago Pardo
UFRN: