MO432 -Outros assuntos Multiclasse, multilabel, desbalanço

Jacques Wainer

Multiclasse x binario

Métricas

Binário - só duas classes

Multiclasse - 3 ou mais classes

Métricas como AUC, especificidade, sensitividade, F1 etc são definidas para 2 classes

Para multiclasse, acurácia funciona

É possível definir F1, por exemplo, considerando cada classe como positiva e as outras negativas (One-vesus-all OVA one-versus-rest OVR)

Mas há várias formas de combinar as medidas para cada classe (media, media proporcional ao tamanho das classes, outros)

Acurácia para multiclasse é normalmente menor que para binario

Classificadores multiclasse

Nao funcionam diretamente

de binario p/ mutliclasse

OVA/OVR - um classificador para cada classe contra as outras

C classes, C classificadores

cada classificador é meio desbalanceado

para testar um dado, passe ele pelos C classificadores, use a maior medida de confiança/probabilidade

OVO - um classificador para cada par de classes

C(C-1)/2 classificadores.

Para testar some as confianças em cada classe.

OVO:

Ha metodos intermediarios ente OVA e OVO (ECOC).

Há metodos hierarquicos - um subconjunto contra o resto, sub-subconjuntos contra o resto dentro de cada opçao.

Sklearn

Multilabel

Uma solução: OVA se confiança > 0.5 diga que pertence aquela classe

https://scikit-learn.org/stable/modules/multiclass.html

Multitask

mais de uma propriedade, cada um com mais de uma classe

Desbalanceamento

Binario mas uma classe (negativa) é muito maior que a outra.

1 para 3, até 1 para 1000 (classe positiva sobre a negativa)

Acuracia é enganadora pois sempre prever negativo resulta em uma acurácia super alta. Usa-se AUC ou F1 (ou outros). O problema é a sensitividade (taxa de acerto para positivos) que é super baixa.

Alternativas