Avaliar um modelo

Os resultados de backtest fornecem um resumo do desempenho do modelo em um período. Eles são gerados pela previsão de todos os clientes em um backtest. e avaliar o desempenho do modelo em relação aos eventos de risco disponíveis.

Os resultados de backtest podem ser usados para medir o desempenho do modelo em um momento separado diferente do usado no treinamento, ou também ao longo do tempo para verificar o desempenho degradação.

Como fazer o backtest

Para criar um recurso BacktestResult, ver Criar e gerenciar os resultados do backtest.

Especificamente, você precisa selecionar o seguinte:

  • Os dados a serem usados para backtesting:

    Especifique um conjunto de dados e um horário de término no intervalo de datas do conjunto de dados.

    O treinamento usa marcadores e recursos com base nos meses completos do calendário até, mas sem incluir o mês do horário de término selecionado. Para mais informações, ver Intervalos de tempo do conjunto de dados.

    Especificar quantos meses de dados rotulados usar para backtesting (ou seja, os número de períodos de backtest).

  • Um modelo criado usando um conjunto de dados consistente:

    Consulte Crie um modelo.

Períodos de backtest

A backtestPeriods campo especifica quantos meses consecutivos serão usados para recursos e marcadores na avaliação de desempenho do modelo.

O seguinte se aplica aos dados de backtest:

  • Os meses usados na avaliação são os meses completos mais recentes antes do endTime especificado. Por exemplo, se endTime for 2023-04-15T23:21:00Z e backtestPeriods forem 5, depois os rótulos de os seguintes meses são usados: 2023-03, 2023-02, 2023-01, 2022-12 e 11/2022.
  • Use os dados mais recentes disponíveis para fazer backtests quando avaliar um modelo em preparação para uso na produção.
  • Os períodos de backtest precisam ser definidos como 3 ou mais. Dois meses de backtest da conta são reservados para considerar alertas repetidos, e os meses restantes são usados para gerar rótulos positivos para a avaliação de performance.

  • Evite usar meses sobrepostos para treinamento e backtest, porque isso corre o risco o overfitting. Verifique se os horários de término do backtest e do treinamento são pelo menos backtestPeriods separadamente. Ou seja,

    (mês do horário de término dos resultados do backtest) >= (mês do horário de término do modelo) + backtestPeriods

Também é possível Criar resultados de previsão para um modelo e conduzir suas próprias análises no nível da parte do desempenho do modelo.

Saída de backtest

A metadados de resultados de backtest contém as seguintes métricas: Essas métricas mostram especificamente seguintes:

  • o desempenho do modelo comparado a rótulos de um período separado; e de diversos volumes de investigação ou limites de pontuação de risco

  • Medições que podem ser usadas para avaliar a consistência do conjunto de dados (por exemplo, comparando o valores de ausência de famílias de atributos de diferentes operações)

Nome da métrica Descrição da métrica Exemplo de valor de métrica
ObservedRecallValues Métrica de recall medida no conjunto de dados especificado para backtesting. A API inclui 20 dessas medições, em diferentes pontos de operação, uniformemente distribuído de 0 (não incluído) até 2 * partyInvestigationsPerPeriodHint: A API adiciona um recall final em partyInvestigationsPerPeriodHint.
{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "scoreThreshold": 0.30,
    },
  ],
}
Falta

Compartilhamento de valores ausentes entre todos os atributos em cada família de atributos.

O ideal é que todas as famílias de recursos da IA antilavagem de dinheiro tenham Falta próxima de 0. Pode haver exceções quando os dados essas famílias de recursos não estão disponíveis para integração.

Uma mudança significativa nesse valor para qualquer família de atributos entre o ajuste, treinamento, avaliação e previsão podem indicar inconsistências dos conjuntos de dados usados.

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "missingnessValue": 0.00,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "missingnessValue": 0.45,
    },
  ],
}
Desvio

Métricas que mostram desvio entre treinamento e previsão ou conjuntos de dados de backtest. A distorção da família indica mudanças na distribuição dos valores de atributos dentro de uma família de atributos, ponderada pela importância do atributo dentro dessa família. Desvio máximo indica a distorção máxima de qualquer atributo dentro dessa família.

Os valores de distorção variam de 0, representando nenhuma mudança significativa na distribuição de valores dos atributos na família, a 1 para a alteração mais significativa. Um valor alto para o desvio familiar ou máximo indica uma alteração significativa na estrutura dos dados de uma forma que pode afetar o desempenho do modelo. O desvio da família assume o valor -1 quando nenhum atributo da família é usado pelo modelo.

Para valores de desvio grandes, siga um destes procedimentos:

  • Investigar alterações nos dados usados por essa família de recursos (consulte os materiais de suporte de governança do modelo) e corrigir problemas de dados de entrada
  • Treinar novamente um modelo com dados mais recentes

Defina limites para agir com base nos valores de distorção máximo e familiar com base na observação da variação natural nas métricas de distorção ao longo de vários meses.

{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "familySkewValue": 0.10,
      "maxSkewValue": 0.14,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "familySkewValue": 0.11,
      "maxSkewValue": 0.11,
    },
  ],
}