Evaluar un modelo

Los resultados del backtest te proporcionan un resumen del rendimiento del modelo en un período. Se generan a partir de la predicción de todos los clientes dentro de una backtest y evaluar el rendimiento del modelo comparado con los eventos de riesgo disponibles.

Los resultados de la prueba se pueden usar para medir el rendimiento del modelo en otro momento van desde la que se usa en el entrenamiento o, con el tiempo, también para verificar el rendimiento de la degradación de los datos.

Cómo hacer la prueba hacia atrás

Para crear un Recurso BacktestResult, ver Crear y administrar resultados de pruebas retrospectivas.

En particular, debes seleccionar lo siguiente:

  • Los datos que se deben usar para hacer pruebas retrospectivas:

    Especifica un conjunto de datos y una hora de finalización dentro del período del conjunto de datos.

    La capacitación usa etiquetas y funciones basadas en meses calendario completos, hasta pero sin incluir, el mes de la hora de finalización seleccionada. Para obtener más información, ver Intervalos de tiempo del conjunto de datos.

    Especifica por cuántos meses de datos etiquetados usar para hacer pruebas retrospectivas (es decir, la cantidad de períodos de prueba).

  • Modelo creado con un conjunto de datos coherente:

    Consulta Crea un modelo.

Períodos de backtest

El backtestPeriods especifica cuántos meses calendario consecutivos se deben usar atributos y etiquetas en la evaluación del rendimiento de este modelo.

Lo siguiente se aplica a los datos de backtest:

  • Los meses usados en la evaluación son los meses calendario completos más recientes anterior al endTime especificado. Por ejemplo, si endTime es 2023-04-15T23:21:00Z y backtestPeriods son 5; luego, las etiquetas de se usaron los siguientes meses: 2023-03, 2023-02, 2023-01, 2022-12 y 2022-11
  • Debes usar los datos más recientes disponibles para hacer pruebas retrospectivas que evalúan un modelo para usarlo en producción.
  • Los períodos de backtest deben establecerse en 3 o más. Dos meses del backtest del período se reservan para considerar las alertas repetidas, y los meses restantes se usan para generar etiquetas positivas para la evaluación del rendimiento.

  • Evitar usar meses superpuestos para el entrenamiento y las pruebas retrospectivas el sobreajuste. Asegúrate de que las horas de finalización de la prueba retroactiva y del entrenamiento sean al menos backtestPeriods de distancia. Es decir,

    (hora de finalización de los resultados de la prueba anterior) >= (hora de finalización del modelo del mes) + backtestPeriods

Si lo deseas, también puedes crear resultados de predicción para un modelo y realizar tus propios análisis de rendimiento del modelo a nivel de parte.

Resultado de la prueba de versiones anteriores

El metadatos de resultados de backtest contiene las siguientes métricas. En particular, estas métricas te muestran lo siguiente:

  • El rendimiento del modelo en comparación con las etiquetas de otros períodos para una variedad de diferentes volúmenes de investigación o umbrales de puntuación de riesgo

  • Son mediciones que se pueden usar para evaluar la coherencia del conjunto de datos (por ejemplo, comparando el valores faltantes de familias de atributos de diferentes operaciones)

Nombre de la métrica Descripción de la métrica Ejemplo de valor de métrica
ObservedRecallValues Métrica de recuperación medida en el conjunto de datos especificado para backtesting. La API incluye 20 de estas mediciones, en diferentes puntos de operación, de manera distribuido desde 0 (no incluido) hasta 2 * partyInvestigationsPerPeriodHint La API agrega una recuperación final de medición en partyInvestigationsPerPeriodHint.
{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "scoreThreshold": 0.30,
    },
  ],
}
Falta

Porcentaje de los valores faltantes entre todos los atributos de cada familia de atributos.

Idealmente, todas las familias de atributos de IA contra el lavado de dinero deberían tener Falta cercana a 0. Pueden ocurrir excepciones cuando los datos subyacentes esas familias de atributos no están disponibles para la integración.

Un cambio significativo en este valor para cualquier familia de atributos entre el ajuste el entrenamiento, la evaluación y la predicción pueden indicar una incoherencia conjuntos de datos utilizados.

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

Métricas que muestran el sesgo entre los conjuntos de datos de entrenamiento y predicción o de pruebas retrospectivas. El sesgo de familia indica cambios en la distribución de los valores de atributos dentro de una familia de atributos, ponderados por la importancia del atributo dentro de esa familia. El sesgo máximo indica el sesgo máximo de cualquier atributo en esa familia.

Los valores de sesgo varían de 0, lo que no representa un cambio significativo en la distribución de los valores de los atributos de la familia, a 1, el cambio más significativo. Un valor alto para el sesgo familiar o el sesgo máximo indica un cambio significativo en la estructura de tus datos de una manera que puede afectar el rendimiento del modelo. El sesgo familiar toma el valor -1 cuando el modelo no usa atributos en la familia.

Para valores grandes de sesgo, debes realizar una de las siguientes acciones:

  • Investigar los cambios en los datos que usa esa familia de atributos (consulta los materiales de asistencia de la administración de modelos) y corregir cualquier problema con los datos de entrada
  • Vuelve a entrenar un modelo con datos más recientes

Debes establecer umbrales para actuar sobre los valores de sesgo familiar y máximo según la observación de la variación natural en las métricas de sesgo durante varios 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,
    },
  ],
}