Tratamento de Dados Desbalanceados - ppt carregar
PublicouPaulo Lobato Alterado mais de 4 anos atrás
Apresentação em tema: "Tratamento de Dados Desbalanceados"— Transcrição da apresentação:
1 Tratamento de Dados Desbalanceados
2 Introdução É comum nos depararmos com problemas de classificação com dados desbalanceados I.e., Presença de classes majoritárias com freqüência muito maior que as outras classes minoritárias Desbalanceamento de classes pode ser prejudicial dependendo do problema e algoritmo
3 Desbalanceamento de Dados
Conseqüência: Maior tendência para a responder bem para as classes majoritárias em detrimento das minoritárias Entretanto, em muitos casos, o que importa é ter um bom desempenho para as classes minoritárias!!! Ver exemplos no próximo slide
4 Desbalanceamento de Dados
Exemplo: Detecção de Fraude Menos de 1% das transações de cartão de crédito são fraudes Em um conjunto de exemplos relacionados a transações, teremos: 99% dos exemplos para a classe negativa (não-fraude) 1% dos exemplos para a classe positiva (fraude)
5 Desbalanceamento de Dados
Exemplo: Detecção de Fraude Classificadores terão uma tendência a dar respostas negativas para transações com fraude I.e. Alto número de falsos negativos Problema: o custo de um falso negativo é muito maior que o custo de um falso positivo Falso negativo: fraude que não foi detectada em tempo I.e., prejuízo a operadora de cartão Falso positivo: transação normal bloqueada I.e., aborrecimento para o usuário do cartão
6 Desbalanceamento de Dados
Exemplo: Diagnóstico Médico Pacientes doentes são em geral menos comuns que pacientes saudáveis No diagnóstico médico, novamente a classe positiva ( dos pacientes doentes) tem uma freqüência muito menor que a classe negativa (pacientes saudáveis)
7 Desbalanceamento de Dados
Exemplo: Diagnóstico Médico Classificadores terão uma tendência a classificar doentes reais como supostamente saudáveis Novamente, alto número de falsos positivos Conseqüência : Diagnóstico tardio e dano para o paciente
8 Desbalanceamento de Dados
Observações importantes: Taxas globais de precisão não são úteis nesses contextos Use Área Under ROC Curve (AUC) Processo de construção dos classificadores requer adaptações para evitar um viés para as classes majoritárias
9 Desbalanceamento de Dados
Observações importantes: Diferença entre as freqüências de classes não diz tudo a respeito de um problema Outros fatores são importantes Separação linear das classes Existência de sub-conceitos nas classes I.e. problemas moderadamente desbalanceados podem ser muito difíceis e; Problemas fortemente desbalanceados podem não ser tão difíceis assim.
10 Abordagens para Tratamento de Dados Desbalanceados
Resampling aleatório: Reamostragem dos exemplos de treinamento de forma a gerar conjuntos balanceados Undersampling Reduzir número de exemplos da classe majoritária Pode acarretar em perda de informação Oversampling Replicar exemplos da classe minoritária Se feito aleatoriamente, pode gerar overfitting
11 Abordagens para Tratamento de Dados Desbalanceados
SMOTE (Chawla et al., 2002) Oversampling usando exemplos sintéticos da classe minoritária Exemplos sintéticos extraídos ao longo dos segmentos que unem vizinhos mais próximos da classe minoritária One-side-selection (Kubat & Matwin, 1997) Undersampling de exemplos redundantes da classe majoritária
12 Abordagens para Tratamento de Dados Desbalanceados
Wilson's editing (Barandela et al., 2004) Usa kNN para classificar instâncias da classe majoritária e exclui as classificadas erroneamente Cluster-based oversampling (Jo & Japkowicz, 2004) Realizam cluster dos exemplos e replicam exemplos dos clusters mais desbalanceados
13 Abordagens para Tratamento de Dados Desbalanceados
Comparação entre métodos Undersampling aleatório tem se mostrado superior a oversampling (Chawla et al. 2002) (Hulse et al. 2007) Entretanto melhor método de sampling depende do algoritmo sendo utilizado e da métrica de avaliação (Hulse et al. 2007)
14 Abordagens para Tratamento de Dados Desbalanceados
Cost-Sensitive Learning Introdução de custos no processo de aprendizado Exemplo: Custo Total = FP*CFP + FN*CFN Adaptação dos algoritmos para tratamento de dados desbalanceados
15 Abordagens para Tratamento de Dados Desbalanceados
Cost-Sensitive Learning vs. Sampling (Weiss et al. 2007) Nem todos os algoritmos têm versões que lidam com custos e nem sempre é trivial definir custos Undersampling seria interessante por diminuir o tempo de aprendizado
16 Considerações finais Em geral, conjuntos de dados tem algum grau de desbalanceamento das classes Desbalanceamento pode ser um problema difícil dependendo da complexidade das classes Conjuntos desbalanceados podem ser lidados com técnicas de amostragem ou introduzindo custos diretamente Não há "o melhor" método
Carregar ppt "Tratamento de Dados Desbalanceados"
Detecção de tráfego Skype na Web através de Redes Neurais Artigo Original: Freire, P. E., Ziviani, A., and Salles, R. M. (2008). Detecting skype flows.