Classificação Multirrótulo: Calculando Medidas de Avaliação Parte 4
Hamming Loss
Essa medida avalia a fração de rótulos classificados erroneamente, isto é, quando um rótulo incorreto é predito e quando um rótulo relevante não é predito, calculando, portanto, a diferença simétrica entre o conjunto de rótulos predito e o conjunto de rótulos verdadeiro. Vale reforçar aqui que “l” é o número total de rótulos, “m” é o número total de instâncias, “Y” é o rótulo verdadeiro (L), “Ŷ” é o rótulo predito (^L) e “i” é uma instância.
O passo a passo para calcular esta métrica é o seguinte:
1. Fazer L - ^L
2. Em seguida fazer ^L - Li
3. Agora fazer (Li - ^Li) OR (^L – L) → No excel: =IF(OR(Passo1;Passo2);1;0)
4. Somar os resultados do passo 3 (por linha)
5. Somar as instâncias do Passo 4 (somar a coluna)
6. Fazer (1/l) * ( 1/m) * Passo 5
O resultado desses cálculos para o nosso exemplo é o seguinte:
O passo 5 é o cálculo (1/5) * (1/5) * 17, o que resulta no valor 0.68, que não necessariamente é bom. Isto porque para a Hamming Loss, quanto menor o seu resultado melhor, isto porque esta é uma medida de erro, então, quanto menor o erro, melhor! Portanto, quanto mais próximo de 0 melhor, e quanto mais próximo de 1 pior o resultado. Como pudemos notar, essa medida é bem mais elaborada do que as outras que vimos até agora
Precisão
A precisão calcula a fração de rótulos preditos que realmente são relevantes.
O passo a passo para calcularmos esta medida é:
1. Atribuir 1 se (L e ^L) e 0 caso contrario → No excel: =IF(AND(L;^L);1;0)
2. Fazer ^L / Passo1
3. Se houver divisão por zero, substituir por zero
4. Somar os resultados do Passo 2
5. Somar Passo 3
6. Dividir pelo número de instâncias
Vamos ver até o passo 3 como fica o resultado:
Bom, notaram que temos um #DIV/0! Em várias células no Passo 2? Então, isso indica divisão por zero. Neste momento precisamos decidir como tratar disso. Nós podemos considerar que, quando houver divisão por zero, o valor válido será zero! Assim, eu vou substituir #DIV/0! Por zeros na tabela. Vejam como fica agora:
Já podemos prosseguir com os próximos passos a serem calculados:
O último passo consiste em dividir a soma do Passo 4 pelo número total de instâncias. Em nosso exemplo, o valor do Passo 4 deu 5 e o nosso número de instâncias é também 5, o que resulta em 1, que é o valor máximo. Também precisamos relevar que este dataset de exemplo é bem pequeno e está nos ajudando a demonstrar todas as medidas. Em datasets reais é um pouco mais difícil alcançar o valor 1.
Revocação
A medida chamada Revocação calcula a fração de rótulos relevantes verdadeiros que também são preditos.
O passo a passo é o seguinte:
1. Atribuir 1 se (L e ^L) e 0 caso contrario → No excel: =IF(AND(L;^L);1;0)
2. Fazer L / Passo1
3. Se houver divisão por zero, substituir por zero
4. Somar os resultados do Passo 2
5. Somar Passo 3
6. Dividir pelo número de instâncias
Notaram que é praticamente igual à precisão? A diferença está no passo2, aqui nós usamos os rótulos verdadeiros e não os preditos. Assim como na precisão, aqui na revocação também temos a situação de divisão por zero, vejam:
Vamos então substituir, no Passo 2, os divs por zero e então temos o resultado final:
Novamente aqui temos o valor 5 no Passo 4 o que resulta em 1 para a revocação.
F1
É a média harmônica da precisão e revocação
O passo a passo é:
1. Atribuir 1 se (L e ^L) e 0 caso contrário → No excel: =IF(AND(L;^L);1;0)
2. (2 * Passo 1)
3. ^L + L
4. Dividir Passo 2 por Passo 3
5. Somar os rótulos (colunas) e verificar divisão por zero
6. Somar a coluna do Passo 5
7. Dividir o Passo 6 por m
O resultado é o seguinte:
Novamente temos um resultado igual 1! Assim terminamos as medidas baseadas em instâncias. Para não ficar muito difícil de acompanhar, vou parando por aqui. No próximo artigo falarei das medidas baseadas em rótulos.
Este artigo foi escrito por Elaine Cecília Gatto - Cissa e publicado originalmente em Prensa.li.