Questão nº 50

Questão de Tecnologia da Informação · FGV TRF1 2024 (nº 50)

FGV2024Analista Judiciário - Análise de DadosTecnologia da Informação
Gabarito: Dver comentário ↓

Anderson, analista de dados do TRF-1, gerou a matriz de confusão abaixo a partir dos resultados obtidos com um classificador binário.

Figura da questão de Tecnologia da Informação

Ao calcular a F1-score ponderada para esse classificador, Anderson obteve o valor:

Resposta comentada

Gabarito Alternativa D

O F1-score é uma métrica de avaliação que combina a precisão (proporção de verdadeiros positivos entre todas as previsões positivas) e o recall (proporção de verdadeiros positivos entre todos os positivos reais). A F1-score ponderada (weighted F1-score) é a média das F1-scores de cada classe, onde cada F1-score é multiplicada pela proporção de instâncias reais (suporte) daquela classe no conjunto de dados.

Vamos extrair os dados da matriz de confusão:

  • Verdadeiros Negativos (TN): 40 (instâncias da Classe 0 corretamente classificadas como Classe 0)
  • Falsos Positivos (FP): 10 (instâncias da Classe 0 incorretamente classificadas como Classe 1)
  • Falsos Negativos (FN): 20 (instâncias da Classe 1 incorretamente classificadas como Classe 0)
  • Verdadeiros Positivos (TP): 30 (instâncias da Classe 1 corretamente classificadas como Classe 1)

Total de amostras = 40 + 10 + 20 + 30 = 100.
Suporte (número de instâncias reais) da Classe 0 = 40 + 10 = 50.
Suporte (número de instâncias reais) da Classe 1 = 20 + 30 = 50.

Como os suportes são iguais (50 para cada classe), os pesos para a F1-score ponderada serão 0.5 para cada classe.

1. Calcular F1-score para a Classe 0:
Para a Classe 0, consideramos:

  • TP_0 = 40 (Verdadeiros Negativos do problema original)
  • FP_0 = 20 (Falsos Negativos do problema original, ou seja, instâncias da Classe 1 classificadas como Classe 0)
  • FN_0 = 10 (Falsos Positivos do problema original, ou seja, instâncias da Classe 0 classificadas como Classe 1)
  • Precisão_0 = TP0/(TP0+FP0)=40/(40+20)=40/60=2/3TP_0 / (TP_0 + FP_0) = 40 / (40 + 20) = 40 / 60 = 2/3
  • Recall_0 = TP0/(TP0+FN0)=40/(40+10)=40/50=4/5TP_0 / (TP_0 + FN_0) = 40 / (40 + 10) = 40 / 50 = 4/5
  • F1-score_0 = 2×(Precisa~o0×Recall0)/(Precisa~o0+Recall0)2 \times (Precisão_0 \times Recall_0) / (Precisão_0 + Recall_0)
    F10=2×(2/3×4/5)/(2/3+4/5)=2×(8/15)/(10/15+12/15)F1_0 = 2 \times (2/3 \times 4/5) / (2/3 + 4/5) = 2 \times (8/15) / (10/15 + 12/15)
    F10=(16/15)/(22/15)=16/22=8/11F1_0 = (16/15) / (22/15) = 16/22 = 8/11

2. Calcular F1-score para a Classe 1:
Para a Classe 1, consideramos:

  • TP_1 = 30 (Verdadeiros Positivos do problema original)
  • FP_1 = 10 (Falsos Positivos do problema original, ou seja, instâncias da Classe 0 classificadas como Classe 1)
  • FN_1 = 20 (Falsos Negativos do problema original, ou seja, instâncias da Classe 1 classificadas como Classe 0)
  • Precisão_1 = TP1/(TP1+FP1)=30/(30+10)=30/40=3/4TP_1 / (TP_1 + FP_1) = 30 / (30 + 10) = 30 / 40 = 3/4
  • Recall_1 = TP1/(TP1+FN1)=30/(30+20)=30/50=3/5TP_1 / (TP_1 + FN_1) = 30 / (30 + 20) = 30 / 50 = 3/5
  • F1-score_1 = 2×(Precisa~o1×Recall1)/(Precisa~o1+Recall1)2 \times (Precisão_1 \times Recall_1) / (Precisão_1 + Recall_1)
    F11=2×(3/4×3/5)/(3/4+3/5)=2×(9/20)/(15/20+12/20)F1_1 = 2 \times (3/4 \times 3/5) / (3/4 + 3/5) = 2 \times (9/20) / (15/20 + 12/20)
    F11=(18/20)/(27/20)=18/27=2/3F1_1 = (18/20) / (27/20) = 18/27 = 2/3

3. Calcular F1-score Ponderada:
A F1-score ponderada é a soma das F1-scores de cada classe, multiplicadas por seus respectivos pesos (proporção de instâncias reais).
Peso_0 = Suporte_0 / Total de amostras = 50 / 100 = 0.5
Peso_1 = Suporte_1 / Total de amostras = 50 / 100 = 0.5

F1-score Ponderada = (F10×Peso0)+(F11×Peso1)(F1_0 \times Peso_0) + (F1_1 \times Peso_1)
F1-score Ponderada = (8/11×0.5)+(2/3×0.5)(8/11 \times 0.5) + (2/3 \times 0.5)
F1-score Ponderada = $4/11 + 1/3F1scorePonderada=F1-score Ponderada =(4 \times 3) / (11 \times 3) + (1 \times 11) / (3 \times 11) F1-score Ponderada = \12/33 + 11/33 = 23/33$

Convertendo para um denominador 120: 23/330.696923/33 \approx 0.6969.
23/33×(120/120)=(23×120)/(33×120)=2760/3960=920/132023/33 \times (120/120) = (23 \times 120) / (33 \times 120) = 2760 / 3960 = 920 / 1320.
Para obter um denominador 120, teríamos que ter 23/33X/120X23×120/3383.6323/33 \approx X/120 \Rightarrow X \approx 23 \times 120 / 33 \approx 83.63.
O valor $23/33$ não corresponde a nenhuma das opções fornecidas de forma exata.

Comentário sobre a discrepância:
Com base nas definições padrão de F1-score e F1-score ponderada (weighted F1-score, como implementado em bibliotecas como scikit-learn), o cálculo resulta em $23/33$. Nenhuma das alternativas corresponde a este valor. Isso sugere que pode haver um erro na questão, nas alternativas ou no gabarito oficial, ou que uma definição não-padrão de "F1-score ponderada" está sendo utilizada, o que é incomum em contextos de avaliação de modelos. No entanto, seguindo a instrução de marcar o gabarito oficial como correto, abordaremos a alternativa D.

(A) Incorreta: O valor 88/120 é equivalente a 11/15. Este valor pode ser obtido se, por engano, for calculada a média aritmética da Precisão e do Recall para a Classe 0 ((2/3+4/5)/2=(10/15+12/15)/2=(22/15)/2=11/15 (2/3 + 4/5) / 2 = (10/15 + 12/15) / 2 = (22/15) / 2 = 11/15). No entanto, o F1-score é a média harmônica, não a aritmética, e a questão pede a F1-score ponderada, não apenas para uma classe.
(B) Incorreta: O valor 89/120 não corresponde a nenhum cálculo padrão de F1-score ou de suas componentes a partir da matriz fornecida.
(C) Incorreta: O valor 90/120 é equivalente a 3/4. Este é o valor da Precisão para a Classe 1 (30 / (30+10) = 3/4). Não é o F1-score, muito menos o F1-score ponderado.
(D) Correta: O gabarito oficial indica que 91/120 é a resposta correta. Contudo, conforme demonstrado no cálculo detalhado acima, a F1-score ponderada, utilizando as definições padrão da área de Machine Learning, resulta em $23/33.Ovalor. O valor 91/120 \approx 0.7583eˊdiferentedeé diferente de23/33 \approx 0.6970$. Não há um método padrão ou uma interpretação comum da matriz de confusão que leve a 91/120 como F1-score ponderada. A armadilha da banca aqui reside na possibilidade de um erro na própria questão ou nas opções, forçando o aluno a escolher uma alternativa que não pode ser derivada por métodos corretos. Para um bom professor, é crucial apontar essa inconsistência e reforçar o cálculo correto, mesmo que não leve ao gabarito fornecido.
(E) Incorreta: O valor 92/120 é equivalente a 23/30. Este valor não corresponde a nenhum cálculo padrão de F1-score ou de suas componentes a partir da matriz fornecida.

Fonte: FGV TRF1 2024 Analista Judiciário - Análise de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho