- Documentos da API
- CLI
- Guias de integração
- Blog
- Como as máquinas aprendem a entender as palavras: um guia para incorporações ao NLP
- Aprendizado baseado em solicitação com Transformers
- Efficient Transformers II: extração de conhecimento e ajustes finos
- Transformers eficientes I: mecanismos de atenção
- Modelagem de intenção hierárquica profunda não supervisionada: obtenção de valor sem dados de treinamento
- Corrigindo viés de anotação com Communications Mining
- Aprendizado ativo: melhores modelos de ML em menos tempo
- Está tudo nos números - avaliando o desempenho do modelo com métricas
- Por que a validação de modelos é importante
- Comparação do Communications Mining e do Google AutoML para inteligência de dados conversacional
Está tudo nos números - avaliando o desempenho do modelo com métricas
Ao construir e treinar um modelo de aprendizado de máquina, entender o desempenho é essencial. Dependendo dos dados e da tarefa de treinamento, mesmo o modelo mais avançado pode produzir previsões incorretas, resultando em análises enganosas ou fluxos de automação defeituosos.
Percorrer manualmente os exemplos para verificar as previsões do modelo não é prático, especialmente para conjuntos de dados com milhões de pontos de dados. Em vez disso, o Communications Mining calcula e exibe continuamente várias métricas para ajudar a analisar modelos e localizar falhas.
No entanto, sob algumas condições, as métricas podem se comportar de maneira inesperada. Neste post do blog, abordamos alguns dos problemas que surgem ao usar métricas e algumas das soluções que o Communications Mining usa para simplificar o processo.
O CommunicationsMining permite que os usuários criem modelos de machine learning personalizados para dados de comunicação. Para entender como usamos as métricas durante esse processo, é útil visualizar um caso de uso específico.
Considere uma caixa de correio compartilhada para um banco, que pode receber milhares de emails por dia. O Communications Mining é usado para classificar automaticamente esses e-mails e ajudar os funcionários que usam a caixa de correio a trabalhar com mais eficiência.
Em um caso de uso real, os especialistas no assunto da caixa de correio criariam centenas de rótulos para rastrear e automatizar vários fluxos de trabalho. Para nossos propósitos, vamos considerar um caso simplificado
-
E-mails urgentes. Essas falhas precisam ser detectadas e sinalizadas nos clientes de e-mail dos funcionários.
-
E-mails gerados automaticamente. Eles devem ser detectados e movidos para uma pasta de arquivo morto para manter a caixa de entrada organizada.
Urgent
e Auto Generated
para essas tarefas e anota alguns e-mails de exemplo. O Communications Mining treina automaticamente um modelo de ML que prevê quais rótulos se aplicam a um e-mail. Esse modelo é então usado para automatizar as tarefas de classificação de e-mails para dados ao vivo.
Nonível mais baixo, as métricas comparam as previsões do rótulo com as respostas corretas, na forma de anotações de rótulos Sim/Não criadas pelos usuários.
Os modelos no Communications Mining não fornecem previsões binárias (sim/não) sobre a presença do rótulo. Em vez disso, elas retornam um número entre 00 e 11. Isso representa a confiança do modelo de que um rótulo se aplica.
Os valores de confiança do modelo são convertidos em previsões de rótulo binário usando um limite. É simplesmente um número entre 00 e 11 que divide os valores de confiança para um rótulo.
-
Acima do limite, o rótulo deve ser aplicado (um exemplo "positivo").
-
Abaixo do limite, não se espera que o rótulo seja aplicado (um exemplo "negativo").
Usando anotações, previsões de rótulos e um limite, podemos dividir um conjunto de exemplos em quatro grupos distintos
-
Positivos verdadeiros (TP). O modelo prevê um rótulo, e o rótulo é aplicado.
-
Falsos positivos (PF). O modelo prevê um rótulo e o rótulo não é aplicado.
-
Falsos negativos (FN). O modelo não prevê um rótulo, e o rótulo se aplica.
-
Verdadeiro negativos (TN). O modelo não prevê um rótulo e o rótulo não se aplica.
Alterar o limite de um rótulo afetará quais e-mails se enquadram em cada um desses quatro grupos, que atuam como ponto de partida para muitas métricas.
Precisão
Podemos ficar tentados a prestar atenção na precisão do nosso modelo.
De todas as previsões do modelo, qual porcentagem está correta.
Isso parece razoável, e a precisão é frequentemente considerada a métrica padrão para o desempenho da IA. No entanto, em alguns casos, a precisão pode enganoso.
Urgent
para qualquer e-mail, recebemos uma pontuação de precisão de:
A pontuação é alta, mas na verdade nosso modelo está apresentando um desempenho ruim. A precisão pode superestimar o desempenho em tarefas com rótulos raros, como Urgent
e Auto Generated
.
Precisão e recall
Urgent
em 25 comentários, nosso modelo obteria valores de precisão e recall de 00. Isso destaca o quão ruim esse modelo está funcionando.
Essas métricas têm um melhor desempenho em rótulos que ocorrem com diferentes frequências, conhecidas como instabilidade de classes. Tópicos em dados de comunicação raramente ocorrem nas mesmas taxas, por isso é importante que as métricas no Communications Mining levem isso em consideração.
Paraum determinado limite, podemos calcular os valores de precisão e recall. No entanto, existe, na verdade, uma contrapartida entre essas duas métricas
-
Alta precisão. Requer poucos falsos positivos. Isso significa um limite alto; portanto, apenas exemplos com confiança do modelo próxima a 1 são "positivos".
-
Alta recall. Requer poucos falsos negativos. Isso significa um limite baixo, de modo que apenas exemplos com confiança do modelo próxima a 0 são "negativos".
É fácil obter uma boa pontuação para precisão ou recall (definindo limites próximos a 00 ou próximos a 11, respectivamente). A definição de um limite representa um equilíbrio entre os dois, e a melhor contrapartida depende de para que o rótulo é usado.
Balanceamento de custos
Auto Generated
deve ter alta precisão (alguns falsos positivos).
Urgent
deve ter alta recall (alguns falsos negativos).
O limite ideal para um rótulo minimiza o custo quando o modelo comete um erro.
Para fins de argumento, suponhamos que isso custe para o banco GBP 5 para cada e-mail urgente perdido (falso negativo) e GBP 10 para cada e-mail marcado erroneamente como gerado automaticamente (falso positivo). O banco também paga a um funcionário GBP 20 por hora para remover emails gerados automaticamente urgentes incorretos e perdidos a uma taxa de 100 por hora.
Para uma caixa de correio que recebe 1000 e-mails por dia, os limites podem ser ajustados para minimizar o custo esperado por dia.
A precisãoe o recall precisam de um limite para cada rótulo. Definir esses limites é lento, especialmente para grandes conjuntos de dados, que podem ter centenas de rótulos. Uma métrica que funciona sem um limite ideal é mais útil.
Modelos perfeitos
Considere um modelo "perfeito" hipertético que prevê todos os rótulos corretamente. Haverá um limite em que este modelo tem 100% de precisão e recall.
Acima desse limite, alguns pontos positivos serão identificados incorretamente como negativos. Isso reduz a precisão, mas mantém o recall em 100%. Da mesma forma, reduzir o limite marcará incorretamente negativos como positivos. Isso reduz o recall, mas mantém a precisão em 100%.
Por essa lógica, a curva de precisão/recall para um modelo perfeito é uma forma de caixa com o canto no ponto (100%,100%)(100%,100%). Qualquer modelo imperfeito terá uma curva abaixo desse modelo perfeito.
Isso significa que melhorar um modelo é o mesmo que aumentar a área sob a curva de precisão/recall.
Precisão média
Embora permitamos que os usuários escolham limites e explorem a contrapartida precisão/recall, a precisão média é a métrica principal que usamos para marcar modelos no Communications Mining. Em média, funciona bem, especialmente nos casos em que falsos positivos e falsos negativos têm custos semelhantes. Como usa precisão e recall, ele é robusto a desbalanceamentos de classes, mas os usuários não precisam definir um limite para calculá-lo.
Relatamos essa métrica de duas maneiras na página Validação
-
Precisão média. O desempenho de um rótulo individual, relatado para cada rótulo.
-
Média Precisão média. A Precisão média para cada rótulo, média entre todos os rótulos. Isso mede o desempenho de todos os rótulos no conjunto de dados.
Usamosmétricas para estimar o desempenho do modelo, mas essa estimativa depende dos dados que usamos para calculá-la. Embora avaliemos os modelos em um conjunto de testes separado daquele em que foram treinados, esse conjunto de testes ainda é extraído dos exemplos anotados pelos usuários. Se esses dados não forem representativos da tarefa de destino, nossa métrica pode ser enganosa.
Para o exemplo bancário, suponha que anotamos apenas e-mails urgentes enviados às segundas-feiras, e e-mails gerados automaticamente enviados às sextas-feiras. Um modelo treinado nesses exemplos poderia prever rótulos perfeitamente a partir do dia em que o e-mail foi enviado.
A precisão média do modelo seria alta, pois ela identificou um padrão que sempre funciona nos dados anotados do usuário. No entanto, emails urgentes e gerados automaticamente podem ser enviados em qualquer dia. Em e-mails ao vivo, o padrão não funcionaria e o modelo teria um desempenho ruim.
É por isso que, quando pontuamos modelos no Communications Mining, não retornamos apenas valores de precisão, recall e precisão média. Em vez disso, calculamos uma classificação de modelo.
As classificações do modelo consideram muitos fatores de desempenho diferentes, não apenas a precisão média. Essa visão holística evita os problemas de usar uma única métrica e, ao mesmo tempo, fornece um feedback claro do modelo. Em um post futuro, exploraremos as classificações de modelos com mais detalhes e como elas foram usadas para criar modelos melhores em menos tempo.
-
Precisãoe recall medem com precisão o desempenho para rótulos com diferentes frequências.
-
A precisão média mede o desempenho do modelo sem exigir um limite.
-
Nenhuma métrica fornece uma imagem completa. Até mesmo a precisão e o recall têm pontos de vista ocultos quando os dados de treinamento são baixos ou mal coletados.