Aprendizagem Estatística de DadosAprendizagem Estatística de Dados
Francisco Carvalho
Avaliação dos Classificadores• Existem poucos estudos analíticos sobre o
comportamento de algoritmos de aprendizagem.
• A análise de classificadores é fundamentalmente experimental.
• Dimensões de análise:Taxa de erroComplexidade dos modelosTempo de aprendizagem…
Avaliação de Algoritmos de Classificação• Dois Problemas distintos:
Dados um algoritmo e um conjunto de dados:¤ Como estimar a taxa de erro do algoritmo nesse
problema?Dados dois algoritmos e um conjunto de dados:
¤ A capacidade de generalização dos algoritmos é igual?
Avaliação• Qual o desempenho do modelo aprendido?
• Erro no conjunto de treinamento não é um bom indicador em relação ao que vai ser observado no futuro
• Solução simples quando os dados são abundantes
dividir os dados em treinamento e teste
• Porém: dados (com rótulo) usualmente são raros• Ex.: dados sobre falhas em sistemas elétricos nos últimos 15
anos
Avaliação• Confiabilidade estatística nas diferenças de
performance estimadas
• Escolha de medidas de desempenhoNúmero de classificações corretasErro em previsões numéricasetc
• Custo atribuído a deferentes tipos de erroMuitas aplicações práticas envolvem custos
Treinamento e teste• Medida natural de desempenho para problemas
de classificação: taxa de erroSucesso: a classe da instancia é prevista corretamenteErro: classe da instancia é prevista incorretamenteTaxa de erro: proporção dos erros em relação ao
conjunto de exemplos
• Erro de re-substituição: erro calculado a partir do conjunto de treinamento
• Erro de re-substituição é otimista!
Treinamento e teste• Conjunto de Teste: conjunto de exemplos
independentes que não tiveram nenhum papel na construção do classificador
Suposição: os conjuntos de treinamento e teste são amostras representativas do problema em questão
• Dados de teste e de treinamento podem ser de natureza diferente
Exemplo: classificadores construídos usando-se dados de clientes de duas cidades diferentes A e B
¤ Para estimar o desempenho do classificador da cidade A em uma nova cidade, teste-o com os dados de B
Ajuste de parâmetro• É importante que os dados de teste não sejam
usados de nenhuma maneira para construir o classificador
• Alguns algoritmos de aprendizagem operam em dois estágios
Estágio 1: construção da estrutura básicaEstágio 2: otimização do ajuste dos parâmetros
• Procedimento correto: usar 3 conjuntos: treinamento, validação e teste
Validação: usado para otimizar os parâmetros
Usar ao máximo os dados• Uma vez completada a avaliação, todos os dados
podem ser usados para construir o classificador final
• Geralmente, quanto maior o conjunto de treinamento melhor o classificador
• Quando maior o conjunto de teste mais exata a estimativa do erro
• Holdout: divisão dos dados originais em treinamento e teste
Dilema: idealmente deseja-se que ambos, o treinamento e o teste, sejam o maior possível
Previsão de desempenho• Suponha que a taxa de erro estimada é 25%. Quão
próxima isso está da verdadeira taxa de erro? Depende da quantidade de dados de teste
• Classificar pode ser assimilado ao lançamento de uma moeda viciada
Cara, sucesso; coroa, erro
• Em estatística, uma sucessão de eventos independentes como esse é chamado de processo de Bernoulli
A teoria estatística permite a construção de intervalos de confiança com uma certa probabilidade de conter a verdadeira taxa de erro
Intervalos de confiança• Pode-se dizer: com um certo nível de confiança,
um certo intervalo especificado pode conter p
• Exemplo: S=750 sucessos em N=1000 tentativasTaxa de sucesso estimada: 75%Quão próximo é isso da verdadeira taxa de sucesso?
¤ Resposta: com 95% de confiança [73.3;76.8] contém p
• Outro exemplo: S=75 e N=100Taxa de sucesso estimada: 75%com 95% de confiança [70;81] contém p
Média e Variância• S: número de sucessos. V.a. de tipo Binomial
• Média e variância para um v.a de tipo Binomial: p, Np(1-p)
• Taxa de sucesso f = S / N. V.a de tipo binomial
• Média e variância para f: p, p(1-p)/N
• Para N grande uma v.a. de tipo binomial pode ser aproximada por uma normal
Resultados da Estatística• V. a. de tipo t-Student
• Intervalo de confiança par ao nivel de confiança de (1-)
nsX
t nv
1
1)( ,2/,2/ tttP
]);/([ ,2/,2/ tXnstX
Resultados da Estatística• Grandes amostras
• Intervalo de confiança par ao nível de confiança de (1-)
• A v.a f tem que ser reduzida para ter média 0 e variância 1
1)( 2/2/ zZzP
)]n/s(zX);n/s(zX[ 2/2/
nsX
)1,0(NZns
Xt 1nv
Transformação para f• Intervalo de confiança par p ao nível de
confiança de (1-)
Nff
pNf)1(
, 1)
/)1(( 2/2/ z
Nffpf
zP
])1(
;)1(
[ 2/2/ Nff
zfN
ffzf
Estimação Holdout• O que fazer se os dados são limitados• O método holdout reserva uma certa quantidade
para teste e o restante para a aprendizagemusalmente, 1/3 para teste e 2/3 para treinamento
• Problema: a amostra pode não ser representativaexemplo: uma classe pode estar ausente no conjunto
de teste
• Amostragem estratificada: as classes são representadas com aproximadamente a mesma proporção tanto no teste como no treinamento
Holdout repetido• Estimação holdout pode ser realizada com mais
confiança repetindo-se o processo com diferentes sub-amostras
Em cada iteração, uma certa proporção é selecionada aleatoriamente para treino, com ou sem estratificação
uma taxa de erro global é calculada pela média das taxas de erro nas iterações
• Esse processo é chamado holdout repetido
• Problema: os diferentes conjuntos de teste não são mutuamente excludentes
Validação cruzada• Validação cruzada evita conjuntos de teste com
interseção não vaziaos dados são divididos em k conjuntos de mesmo
cardinalcada subconjunto é usado como teste e o restante
como treino
• Isso é chamado de validação cruzada k-fold• Os subconjuntos podem ser estratificados antes
de realizar a validação cruzada• A taxa de erro global é a média das taxas de erro
calculadas em cada etapa
Validação cruzada• Método usual: validação cruzada estratificada
10-fold
• Porque? Evidencias experimentais
• A estratificação reduz a variância da estimativa
• Melhor ainda: validação cruzada estratificada repetida
validação cruzada 10-fold repetida 10 vezes
Validação cruzada leave-one-out• É uma forma particular de validação cruzada
O número de folds é o número de exemploso classificador é construído n vezes
• usa os dados completamente no treino
• não envolve sub-amostras aleatórias
• computacionalmente custoso
• a estratificação não é possível
Bootstrap• Validação cruzada usa amostragem sem repetição• Bootstrap é um método de estimação que usa
amostragem com reposição para formar o conjunto de treinamento
Retira-se uma amostra aleatória de tamanho n de um conjunto de n exemplos com reposição
Essa amostra é usada para o treinamento os exemplos dos dados originais que não estão no conjunto de
treino são usados como teste
• É a melhor maneira quando o conjunto de dados é pequeno
Comparação de Classificadores• Situação freqüente: deseja-se saber entre dois
classificadores, qual o de melhor desempenho
• Atenção: isso depende do domínio
• Maneira óbvia: comparar as estimativas obtidas através de VC 10-fold (repetida ou não)
• Problema: variância das estimativas
Testes de hipóteses• Um teste de hipótese é um guia em relação a
confiança com que assumimos que realmente existe uma diferença de desempenho
• Hipótese nula: não há diferença
• Hipótese alternativa: há diferença
• Um teste mede a evidencia que existe em favor da rejeição da hipótese nula
Qual o melhor algoritmo para um problema ?• Dados dois algoritmos e um conjunto de dados, que
algoritmo utilizar? Que algoritmo tem menor erro na população ?
• Estimar o erro dos dois algoritmos Usando uma estratégia de amostragem Para cada algoritmo é estimado um erro
• São os dois erros estatisticamente diferentes ?• Exemplo
Usando 10-validação cruzada:
Teste de Hipóteses• Hipótese nula:
Ambos os algoritmos têm a mesma performance
• Como verificar a hipótese nula ?“paired tests” são mais apropriados.
¤ Eliminar a variabilidade devida a fatores externos¤ Ambos os algoritmos devem:
Aprender nos mesmosconjuntos de treinamento
Os modelos devem ser avaliadosnos mesmos conjuntos de teste
Teste para 2 caudas¤ X >> Y ou Y >> X
Student paired t-test• Para decidir se duas médias são estatisticamente
diferentes: Calcular di = xi – yi
Calcular
Escolher um nível de confiança
¤ Usual 5% ou 1%
¤ Usar a tabela da distribuição de t para calculo de z k-1 graus de liberdade
Se t > z ou t < -z então as médias são significativamente diferentes
¤ Para o nível de confiança escolhido.
k/
dt
2d
Exemplo
Amostras independentes• Em um esquema foi usado uma VC k-fold e no outro
uma VC j-fold• Deve-se usar um teste-t para amostras não pareadas com
min(k,j)-1 graus de liberdade• a estatística agora é
j
s
ks
mmt
yx
yx
22
Critica• A utilização de t-testes não é pacífica.
Elevada probabilidade de sugerir diferenças onde elas não existem (erro de Tipo I)
• Problemas: Na validação cruzada:
¤ Os conjuntos de treinamento não são independentes. Assume a distribuição normal
• Alguns autores sugerem: Wilcoxon matched-pairs signed-ranks test
Contabilizando os CustosContabilizando os Custos
Na prática, diferentes tipos de erros de classificação geralmente incorrem em diferentes custos
Exemplos:• Decisões de empréstimo• Detecção de vazamento de óleo• Diagnóstico de falha• Cartas promocionais
enviar carta p/ família q ñ responderá x ñ enviar carta p/ família q responderá
Levar em conta CustosLevar em conta Custos
A matriz “confusão”:
Há muitos outros tipos de custos• Custos de coleta de dados para treinamento
Predicted classYes No
Classe Yes True FalseAtual positive negative
No False Truepositive negative
Sensibilidade (abrangência):FNTP
TP
Especificidade:FPTN
TN
Valor de Predição Positivo (precisão):FPTP
TP
Valor de Predição Negativo:FNTN
TN
Acerto:FNFPTNTP
TNTP
Erro:FNFPTNTP
FNFP
F-MeasureFNFPTP2
TP2
VPP1
S1
2F
F-Measure (bis)FNFPTN2
TN2
VPN1
E1
2F
O VPP é diretamente influenciado pela especificidade e pouco influenciado pela sensibilidade
O VPN é diretamente influenciado pela sensibilidade e pouco influenciado pela especificidade
Aprendizado Sensível ao CustoAprendizado Sensível ao Custo
A maioria dos esquemas de aprendizado não realizam aprendizado sensível ao custo• Eles geram o mesmo classificador não importando
qual o custo associado a diferentes classes• Exemplo: aprendizado de árvore de decisão
padrão Métodos simples para aprendizado sensível
ao custo:• Replicação de instâncias de acordo com os custos• Utilização de pesos para instâncias de acordo com
os custos
Avaliando Previsões NuméricasAvaliando Previsões Numéricas
Algumas estratégias: conjunto de teste independente, cross-validation, testes de significância, etc.
Diferença: medidas de erro Valores atuais: a1, a2, ..., an
Valores previstos: p1, p2, ..., pn Medida mais popular: erro quadrático médio(mean-
squared error)
• manipulação matemática fácil
n
apap nn22
11
Outras MedidasOutras Medidas
Raiz do erro quadrático médio:
O erro absoluto médio é menos sensível a outliers que o erro médio quadrático:
Às vezes valores de erros relativos são mais apropriados que valores absolutos• 10% corresponde a um erro de 50 quando prevendo 500• 10% corresponde a um erro de 0,2 quando prevendo 2
n
apap nn22
11
n
apap nn 11
Aprimoramento da MédiaAprimoramento da Média
As vezes queremos saber o quanto o esquema é aprimorado simplesmente prevendo a média
Erro quadrático relativo é (ā é a média):
Erro absoluto relativo é:
22
1
2211
n
nn
aaaa
apap
n
nn
aaaa
apap
1
11
O Coeficiente de CorrelaçãoO Coeficiente de Correlação
Mede a correlação estatística entre os valores previstos e os valores atuais
Escala independente, entre –1 e +1
Boa performance leva a grandes valores
AP
PA
SS
S
1
))((
n
aappS i
ii
PA 1
)( 2
n
ppS i
i
P
1
)( 2
n
aaS i
i
A
Qual a melhor medida?Qual a melhor medida?
Melhor verificar todas elas Geralmente não importa Exemplo:
A B C DRaiz do erro quadrático médio 67,8 91,7 63,3 57,4Erro absoluto médio 41,3 38,5 33,4 29,2Raiz do erro quadrático relativo 42,2% 57,2% 39,4% 35,8%Erro absoluto relativo 43,1% 40,1% 34,8% 30,4%Coeficiente de correlação 0,88 0,88 0,89 0,91
Decomposição do Erro• O erro esperado de um classificador pode ser
decomposto em
Ruído no conjunto de dados Viés (Bias)
¤ Mede os erros sistemáticos
¤ Estimativa da capacidade de adaptação da linguagem de representação utilizada pelo algoritmo ao problema
Variância
¤ Mede a variabilidade das predições
¤ Estimativa da dependência do modelo gerado ao conjunto de treino
x
2x
2x
2x ianciavarviésE
O Compromisso Bias-Variance• Aumentando o número de graus de liberdade de um
modelo: Diminuição da componente do “Bias” Aumento da variância.
• Minimizar o erro esperado requer um compromisso entre as duas componentes
Decomposição em “Bias-Variance”• Funções Discriminantes
Variância reduzida Viés elevado
• Arvores de decisão Variância elevada Bias reduzido
Sumario• Avaliação de classificadores
Como estimar o erro do classificador num conjunto de dados?
Qual o melhor algoritmo para um problema?
• AmostragemValidação cruzadaAmostragem com reposição
• Teste de Hipóteses
• Decomposição do erro em viés e variância