Evaluar un modelo

Esta página es válida para las versiones del motor que se encuentran dentro de los siguientes grupos de versiones principales del motor. Para ver la página de otras versiones del motor, usa el selector que se encuentra en la parte superior de esta página.

En resumen, estos son los cambios de las versiones del motor v003 a v004 (hasta la versión v004.008):

  • Se agregó la métrica ObservedRecallValuesPerTypology al resultado de la prueba de simulación.
  • Se agregaron partiesCount y identifiedPartiesCount al valor de la métrica ObservedRecallValues.

Descripción general

Los resultados de la prueba retrospectiva te proporcionan un resumen del rendimiento del modelo en un período especificado. Se generan a partir de la predicción de todos los clientes dentro de un período de prueba retrospectiva y la evaluación del rendimiento del modelo en función de los eventos de riesgo disponibles.

Los resultados de la prueba retrospectiva se pueden usar para medir el rendimiento del modelo en un período independiente del que se usó en el entrenamiento o también a lo largo del tiempo para verificar si hay una degradación del rendimiento.

Cómo realizar pruebas retrospectivas

Para crear un recurso BacktestResult, consulta Cómo crear y administrar resultados de pruebas retrospectivas.

En particular, debes seleccionar lo siguiente:

  • Los datos que se usarán para la prueba retrospectiva:

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

    El entrenamiento usa etiquetas y atributos basados en meses calendario completos hasta el mes de la fecha y hora de finalización seleccionadas, sin incluirlo. Para obtener más información, consulta Intervalos de tiempo de los conjuntos de datos.

    Especifica cuántos meses de datos etiquetados se usarán para la prueba retrospectiva (es decir, la cantidad de períodos de prueba retrospectiva).

    Especifica la cantidad de partes que se evaluarán como parte de la prueba con el campo PerformanceTarget.

  • El volumen de investigaciones esperado según los modelos:

    Especifica partyInvestigationsPerPeriodHint. La prueba retrospectiva evalúa el modelo de IA de la AML en un rango de volúmenes de investigación mensuales, según la cantidad que especifiques. Para obtener más información, consulta Resultados de la prueba de simulación.

  • Un modelo creado con un conjunto de datos coherente:

    Consulta Crea un modelo.

Períodos de prueba

El campo backtestPeriods especifica cuántos meses calendario consecutivos se deben usar para obtener las características y las etiquetas en la evaluación del rendimiento de este modelo.

Se aplican las siguientes condiciones a los datos de la prueba retrospectiva:

  • Los meses que se usan en la evaluación son los meses calendario completos más recientes anteriores al endTime especificado. Por ejemplo, si endTime es 2023-04-15T23:21:00Z y backtestPeriods es 5, se usan las etiquetas de los siguientes meses: 2023-03, 2023-02, 2023-01, 2022-12 y 2022-11.
  • Debes usar los datos disponibles más recientes para las pruebas retrospectivas cuando evalúes un modelo en preparación para su uso en producción.
  • Los períodos de prueba retrospectiva deben establecerse en 3 o más. Se reservan dos meses del período de la prueba retrospectiva para tener en cuenta las alertas repetidas, y los meses restantes se usan para generar etiquetas positivas para la evaluación del rendimiento.

  • Evita usar meses superpuestos para el entrenamiento y las pruebas retrospectivas, ya que esto podría generar un sobreajuste. Asegúrate de que los tiempos de finalización del entrenamiento y la prueba retrospectiva tengan una diferencia de al menos backtestPeriods. Es decir,

    (Mes de finalización de los resultados de la prueba retrospectiva) >= (Mes de finalización del modelo) + backtestPeriods

De manera opcional, también puedes crear resultados de predicción para un modelo y realizar tus propios análisis a nivel de la campaña sobre el rendimiento del modelo.

Resultados de la prueba retrospectiva

Los metadatos de los resultados de la prueba retrospectiva contienen las siguientes métricas. En particular, estas métricas te muestran lo siguiente:

  • Cómo se desempeña el modelo en comparación con las etiquetas de un período independiente y para una variedad de diferentes volúmenes de investigación o umbrales de puntuación de riesgo

    se espera que el rendimiento en la vida real sea significativamente mejor.

  • Mediciones que se pueden usar para evaluar la coherencia del conjunto de datos (por ejemplo, comparando los valores de datos faltantes de las familias de funciones de diferentes operaciones)

Nombre de la métrica Descripción de la métrica Valor de métrica de ejemplo
ObservedRecallValues Es la métrica de recuperación medida en el conjunto de datos especificado para la prueba retrospectiva. La API incluye 20 de estas mediciones, en diferentes puntos de funcionamiento, distribuidas de manera uniforme desde 0 (sin incluir) hasta 2 * partyInvestigationsPerPeriodHint. La API agrega una medición de recuperación final en partyInvestigationsPerPeriodHint.

Junto con el valor de recuperación, también proporcionamos el numerador y el denominador como partiesCount y identifiedPartiesCount respectivamente.
{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "partiesCount": 60,
      "identifiedPartiesCount": 51,
      "scoreThreshold": 0.30,
    },
  ],
}
ObservedRecallValuesPerTypology Es la métrica de recuperación a nivel de la tipología de riesgo, medida en el conjunto de datos especificado para la prueba retrospectiva. Las mediciones siguen el mismo enfoque que ObservedRecallValues.
{
  "recallValuesPerTypology": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.80,
      "partiesCount": 60,
      "identifiedPartiesCount": 48,
      "scoreThreshold": 0.42,
    },
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_1",
      "recallValue": 0.90,
      "partiesCount": 60,
      "identifiedPartiesCount": 54,
      "scoreThreshold": 0.30,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "riskTypology": "risk_typology_id_2",
      "recallValue": 0.75,
      "partiesCount": 4
      "identifiedPartiesCount": 3,
      "scoreThreshold": 0.30,
    },
  ],
}
Datos faltantes

Es el porcentaje de valores faltantes en todos los atributos de cada familia de atributos.

Idealmente, todas las familias de funciones de IA de la AML deberían tener un valor de Missingness cercano a 0. Pueden ocurrir excepciones en las que los datos subyacentes de esas familias de funciones no estén disponibles para la integración.

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

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

Son métricas que muestran la diferencia entre los conjuntos de datos de entrenamiento y predicción o de pruebas retrospectivas. La desviación familiar indica cambios en la distribución de los valores de los atributos dentro de una familia de atributos, ponderados según la importancia del atributo dentro de esa familia. La desviación máxima indica la desviación máxima de cualquier atributo dentro de esa familia.

Los valores de sesgo varían de 0, que representa que no hay cambios significativos en la distribución de los valores de los atributos de la familia, a 1, que representa el cambio más significativo. Un valor alto para el sesgo de la familia 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. La distorsión de la familia toma el valor -1 cuando el modelo no usa ningún atributo de la familia.

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

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

Debes establecer umbrales para actuar en función de los valores de sesgo familiar y máximo después de observar 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,
    },
  ],
}