Limites e a matriz de confusão

Digamos que você tenha um modelo de regressão logística para a detecção de e-mails spam que prevê um valor entre 0 e 1, representando a probabilidade de um determinado e-mail ser spam. Uma previsão de 0,50 significa uma probabilidade de 50% de que o e-mail seja spam, uma previsão de 0,75 significa uma probabilidade de 75% de que o e-mail seja spam, e assim por diante.

Você quer implantar esse modelo em um aplicativo de e-mail para filtrar spam em uma pasta de e-mail separada. Para isso, você precisa converter a saída numérica bruta do modelo (por exemplo, 0.75) em uma das duas categorias: "spam" ou "não spam".

Para fazer essa conversão, escolha uma probabilidade de limite, chamada de limite de classificação. Os exemplos com uma probabilidade acima do valor de limite são atribuídos à classe positiva, a classe que você está testando (neste caso, spam). Os exemplos com uma probabilidade menor são atribuídos à classe negativa, a classe alternativa (neste caso, not spam).

Você pode estar se perguntando: o que acontece se a pontuação prevista for igual ao limiar de classificação (por exemplo, uma pontuação de 0,5 em que o limiar de classificação também é 0,5)? O processamento para esse caso depende da implementação específica escolhida para o modelo de classificação. A biblioteca Keras prevê a classe negativa se a pontuação e o limite forem iguais, mas outras ferramentas/frameworks podem processar esse caso de maneira diferente.

Suponha que o modelo dê a pontuação 0,99 a um e-mail, prevendo que ele tem 99% de chance de ser spam, e outro e-mail como 0,51, prevendo que ele tem 51% de chance de ser spam. Se você definir o limite de classificação como 0,5, o modelo vai classificar os dois e-mails como spam. Se você definir o limite como 0,95, apenas o e-mail com pontuação 0,99 será classificado como spam.

Embora 0, 5 possa parecer um limite intuitivo, não é uma boa ideia se o custo de um tipo de classificação incorreta for maior que o outro ou se as classes estiverem desequilibradas. Se apenas 0, 01% dos e-mails forem spam ou se o arquivamento incorreto de e-mails legítimos for pior do que deixar o spam na caixa de entrada, marcar qualquer coisa que o modelo considere com pelo menos 50% de probabilidade de ser spam como spam produz resultados indesejáveis.

Matriz de confusão

A pontuação de probabilidade não é uma realidade ou informações empíricas. Há quatro resultados possíveis para cada saída de um classificador binário. No exemplo do classificador de spam, se você organizar as informações empíricas como colunas e a previsão do modelo como linhas, a tabela a seguir, chamada de matriz de confusão, será o resultado:

Verdadeiro positivo Verdadeiro negativo
Positivo previsto Verdadeiro positivo (VP): um e-mail de spam classificado corretamente como spam. São as mensagens de spam enviadas automaticamente para a pasta de spam. Falso positivo (FP): um e-mail não spam classificado incorretamente como spam. Esses são os e-mails legítimos que acabam na pasta de spam.
Negativo previsto Falso negativo (FN): um e-mail de spam classificado incorretamente como não spam. São e-mails de spam que não são detectados pelo filtro de spam e chegam à caixa de entrada. Verdadeiro negativo (VN): um e-mail não spam classificado corretamente como não spam. Esses são os e-mails legítimos que são enviados diretamente para a caixa de entrada.

O total em cada linha mostra todos os positivos previstos (VP + FP) e todos os negativos previstos (FN + TN), independentemente da validade. O total em cada coluna, por sua vez, mostra todos os verdadeiros positivos (TP + FN) e todos os verdadeiros negativos (FP + TN), independentemente da classificação do modelo.

Quando o total de positivos reais não está próximo do total de negativos reais, o conjunto de dados está desbalanceado. Uma instância de um conjunto de dados desequilibrado pode ser um conjunto de milhares de fotos de nuvens, em que o tipo raro de nuvem em que você está interessado, digamos, nuvens de voluta, aparece apenas algumas vezes.

Efeito do limite em verdadeiros e falsos positivos e negativos

Limites diferentes geralmente resultam em números distintos de verdadeiros e falsos positivos e verdadeiros e falsos negativos. O vídeo a seguir explica por que isso acontece.

Tente mudar o limite por conta própria.

Esse widget inclui três conjuntos de dados de brinquedo:

  • Separados, em que exemplos positivos e negativos geralmente são bem diferenciados, sendo que a maioria dos exemplos positivos tem pontuações mais altas do que os negativos.
  • Não separados, em que muitos exemplos positivos têm notas mais baixas do que exemplos negativos, e muitos exemplos negativos têm notas mais altas do que exemplos positivos.
  • Desequilíbrio, contendo apenas alguns exemplos da classe positiva.

Teste seu conhecimento

1. Imagine um modelo de classificação de phishing ou malware em que sites de phishing e malware estão na classe 1 (verdadeiro) e sites inofensivos estão na classe 0 (falso). Esse modelo classifica por engano um site legítimo como malware. Como isso é chamado?
Um verdadeiro negativo
Um verdadeiro positivo
Falso positivo
Um falso negativo
2. Em geral, o que acontece com o número de falsos positivos quando o limite de classificação aumenta? E quanto aos verdadeiros positivos? Teste o controle deslizante acima.
Os falsos positivos e verdadeiros diminuem.
Os verdadeiros positivos aumentam. Os falsos positivos diminuem.
Os verdadeiros e falsos positivos aumentam.
3. Em geral, o que acontece com o número de falsos negativos quando o limiar de classificação aumenta? E os verdadeiros negativos? Teste o controle deslizante acima.
Os verdadeiros e falsos negativos diminuem.
Os falsos positivos e negativos aumentam.
Os verdadeiros negativos aumentam. Os falsos negativos diminuem.