Classificação Multirrótulo: Calculando Medidas de Avaliação Parte 3
Introdução
As medidas para avaliar o desempenho de um classificador multirrótulo são categorizadas de acordo com a Figura a seguir:
Como podemos notar são vários tipos de medidas diferentes. Diferente da classificação simples-rótulo, em que a predição pode ser correta ou incorreta, a predição na classificação multirrótulo pode ser parcialmente correta, totalmente correta ou totalmente incorreta.
Portanto, para a classificação multirrótulo, definir qual erro de classificação é o mais ou menos grave não é simples como na classificação simples-rótulo. Por exemplo, uma instância de teste pode ser classificada incorretamente em dois rótulos, enquanto outras cinco instâncias de teste podem ser classificadas corretamente em apenas um rótulo.
Com essa diversidade de medidas, o desempenho dos classificadores pode variar para cada uma delas. Avaliar um classificador multirrótulo usando uma única medida é restritivo, pois cada medida avalia um ou outro aspecto em particular, o que pode levar a análises e conclusões incompletas e até mesmo errôneas. O recomendado é usar um conjunto dessas medidas, obtendo assim uma visão mais coerente do desempenho sob diferentes aspectos.
As medidas baseadas em bipartições podem ser divididas em baseadas em rótulos e baseadas em instâncias. Para a bipartição (valores 0’s e 1’s) gerada pelo classificador multirrótulo, as medidas de avaliação baseadas em instâncias calculam a diferença média entre os conjuntos de rótulos preditos e os conjuntos de rótulos reais (verdadeiros) em cada instância do conjunto de teste.
As baseadas em rótulos avaliam o desempenho preditivo para cada rótulo separadamente e depois calculam a média do desempenho de todos os rótulos. As medidas baseadas em rótulo podem ainda usar duas estratégias diferentes: micro-averaging (Média Micro) e macro-averaging (Média Macro). As medidas baseadas em Ranking serão assunto para outro artigo.
Para que o artigo não fique longo e cansativo, não explicarei todas as medidas só neste artigo. Portanto, é importante seguir a ordem de publicação desta pequena série de artigos para entender bem tá legal?
1. Acurácia
A eficácia geral de um classificador multirrótulo é avaliada pela acurácia. Essa métrica calcula a proporção do número de rótulos corretamente preditos em comparação ao número total de rótulos (verdadeiros e preditos) para uma instância, fazendo em seguida a média sobre todas as instâncias.
Onde “Y” é o rótulo verdadeiro, “Ŷ” é o rótulo predito, “i” é a instância de teste e “m” é o número total de instâncias do conjunto de teste! O passo a passo para calcular essa medida é:
1. Se (Yi OR ^Yi) então 1 caso contrário 0;
2. Somar o resultado do Passo 1;
3. Calcular o verdadeiro positivo para cada rótulo;
4. Somar Passo 3;
5. Dividir Passo 4 por Passo 2 (e não esquecer de verificar a divisão por zero!);
6. Calcular a média.
Agora vamos efetuar estes cálculos. Aqui está o resultado do item 1 e 2:
No Excel você pode fazer da seguinte forma: =IF(OR(L;^L);1;0). Lembre-se de substituir os valores de L e ^L pelo valor correto. Aqui temos o resultado dos itens 3 e 4 que é apenas uma cópia do que já fizemos no artigo anterior.
Por fim, dividimos o TOTAL2 pelo TOTAL1 e o resultado disso dividimos pelo número total de instâncias. Lembrando que aqui o cálculo precisa ser feito considerando todas as instâncias. O resultado é:
As medidas baseadas em instâncias variam de 0 a 1. Quanto mais perto de zero, pior o desempenho, e quanto mais perto de 1, melhor. No caso do nosso exemplo vimos que o resultado não é dos melhores, já que 0.23 está muito mais perto de zero do que de um.
2. Subset Accuraccy
Exact Match Ratio também conhecida como Classification Accuracy ou Subset Accuracy ignora os rótulos parcialmente corretos, atuando como a acurácia da classificação simples-rótulo. Como Subset Accuracy avalia apenas as instâncias classificadas corretamente, ela é bastante restritiva.
O passo a passo para calcular esta medida é:
1. Verificar se Yi = ^Yi, se sim, então marcamos 1, caso contrário 0
2. Em seguida somar os rótulos: (Y1 + Y2 + .... Yi)
3. Encontrar a média: Passo2/l (l é o número total de rótulos do conjunto)
4. Somar Passo 3 (somar todas as linhas resultantes do passo 3)
5. Encontrar a média dividindo o passo 4 pelo número total de instâncias: Passo4/m
A Figura a seguir mostra o resultado dos cálculos efetuados:
O resultado do Passo 4 é 1.6 e o resultado do Passo 5 é 0.32. Portanto, o valor final encontrado para esta medida é 0.32, que também está mais perto de zero do que de um. Novamente, esses passos a passos de cada medida vocês podem implementar em um script R ou Python e assim automatizar o processo, mas não se esqueçam de fazer o tratamento pra quando houver divisão por zero!
3. 0/1 Loss
De forma similar à Subset Accuracy, a medida de avaliação 0/1 Loss mede a diferença entre os rótulos verdadeiros e os rótulos preditos, ao invés da igualdade.
O passo a passo para calcular esta medida é:
1. Verificar se Yi != ^Yi, se sim, então marcamos 1, caso contrário 0
2. Em seguida somar os rótulos: (Y1 + Y2 + .... Yi)
3. Encontrar a média: Passo2/l (l é o número total de rótulos do conjunto)
4. Somar Passo 3 (somar todas as linhas resultantes do passo 3)
5. Encontrar a média dividindo o passo 4 pelo número total de instâncias: Passo4/m
Os resultados desses cálculos para nosso exemplo são apresentados na Figura a seguir:
O valor encontrado para 0/1 Loss é melhor do que o valor de Subset Acuracy e da Acurácia, mas precisamos levar em consideração como cada uma dessas medidas são efetuadas. Aqui um resumo
Acuracia 0,23
Subset Accuracy 0,32
0/1 Loss 0,68
A 0/1 Loss basicamente é o inverso da Subset Acuracy e, se somarmos o valor das duas elas deram exatamente 1. Se o que queremos averiguar no nosso resultado é a diferença entre os rótulos preditos e os rótulos verdadeiros, então 0/1 Loss é ideal para isso e, em nosso exemplo o resultado é bom para esta questão. A acurácia já mede outro conceito, por isso mesmo é até difícil compará-la com estas duas medidas. Podemos entender que as medidas de certa forma complementam informações sobre os resultados.
No próximo artigo continuarei explicando as medidas de desempenho! Te espero lá!
Este artigo foi escrito por Elaine Cecília Gatto - Cissa e publicado originalmente em Prensa.li.