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
).
Clique aqui para mais detalhes sobre o limite de classificação
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.