Crear y administrar resultados de backtest

En esta página, se muestra cómo crear y administrar los resultados de la predicción de pruebas pendientes de AML AI. La predicción de backtest usa un modelo entrenado sobre datos históricos existentes. Durante estos meses, el conjunto de datos debe contener una etiqueta.

Se puede usar el mismo conjunto de datos para el entrenamiento y la prueba inversa, siempre y cuando la fecha de finalización del entrenamiento sea anterior a las fechas de la prueba.

En este punto, solo debes crear los resultados de la prueba inversa. Para tu comodidad, se proporcionan los otros métodos de resultados de la prueba inversa.

Antes de comenzar

Crear resultados de backtest

Algunos métodos de la API muestran una operación de larga duración (LRO). Estos métodos son asíncronos. Es posible que la operación no se complete cuando el método muestra una respuesta. Para estos métodos, envía la solicitud y, luego, verifica el resultado.

Envía la solicitud

Para crear resultados de la prueba inversa, usa el método projects.locations.instances.backtestResults.create.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: Un identificador definido por el usuario para la instancia
  • BACKTEST_RESULTS_ID: Un identificador definido por el usuario para los resultados de la prueba backtest
  • MODEL_ID: Es un identificador definido por el usuario para el modelo.
  • BACKTEST_DATASET_ID: Es el identificador definido por el usuario para el conjunto de datos que se usa en la prueba backtest; las tablas no deben tener las columnas de etiquetas de entrenamiento.
  • BACKTEST_END_DATE: La hora más reciente a partir de la cual se usan los datos a fin de generar atributos para las pruebas backtest. Esta fecha debe ser la misma o anterior a la hora de finalización de los conjuntos de datos. Usa el formato RFC3339 UTC “Zulú” (por ejemplo, 2014-10-02T15:01:23Z).
  • PARTY_INVESTIGATIONS_PER_PERIOD_HINT: Es un número que le da al sintonizador una sugerencia sobre la cantidad de investigaciones que se realizarán en estos datos por período (mensual). Se usa para controlar cómo se evalúa el modelo.

Cuerpo JSON de la solicitud:

{
    "model": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/models/MODEL_ID",
    "dataset": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/BACKTEST_DATASET_ID",
    "endTime": "BACKTEST_END_DATE",
    "backtestPeriods": 5,
    "performanceTarget": {
      "partyInvestigationsPerPeriodHint": "PARTY_INVESTIGATIONS_PER_PERIOD_HINT"
    }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Verifica el resultado

Para verificar si se crearon los resultados de la prueba, usa el método projects.locations.operations.get. Si la respuesta contiene "done": false, repite el comando hasta que la respuesta contenga "done": true. Estas operaciones pueden tardar entre unos minutos y varias horas en completarse.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es el ID del proyecto de Google Cloud que aparece en la configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • OPERATION_ID: Es el identificador de la operación.

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "endTime": END_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/dataresidency.monitoring.DataResidencyAugmentedView",
    "tpIds": [
      "i608e8cf4abb2a7d9-tp"
    ]
  }
}

Obtener resultados de la prueba

Para obtener resultados de la prueba inversa, usa el método projects.locations.instances.backtestResults.get.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: El identificador definido por el usuario para la instancia
  • BACKTEST_RESULTS_ID: El identificador definido por el usuario para los resultados de la prueba backtest

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
    "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "createTime": CREATE_TIME,
    "updateTime": UPDATE_TIME,
    "state": "ACTIVE",
    "dataset": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/BACKTEST_DATASET_ID",
    "model": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/models/MODEL_ID",
    "endTime": "BACKTEST_END_DATE",
    "performanceTarget": {
      "partyInvestigationsPerPeriodHint": "PARTY_INVESTIGATIONS_PER_PERIOD_HINT"
    },
    "lineOfBusiness": "RETAIL"
}

Actualizar los resultados de la prueba exhaustiva

Para actualizar los resultados de la prueba interna, usa el método projects.locations.instances.backtestResults.patch.

No se pueden actualizar todos los campos de los resultados de la prueba preliminar. En el siguiente ejemplo, se actualizan las etiquetas de usuario del par clave-valor asociadas con los resultados de la prueba.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: El identificador definido por el usuario para la instancia
  • BACKTEST_RESULTS_ID: El identificador definido por el usuario para los resultados de la prueba backtest
  • KEY: Es la clave en un par clave-valor que se usa para organizar los resultados de la prueba. Consulta labels para obtener más información.
  • VALUE: Es el valor de un par clave-valor que se usa para organizar los resultados de la prueba. Consulta labels para obtener más información.

Cuerpo JSON de la solicitud:

{
  "labels": {
    "KEY": "VALUE"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Si quieres obtener más información para obtener el resultado de la operación de larga duración (LRO), consulta Verifica el resultado.

Enumerar los resultados de la prueba

Para enumerar los resultados de la prueba exhaustiva de una instancia determinada, usa el método projects.locations.instances.backtestResults.list.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: El identificador definido por el usuario para la instancia

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "backtestResults": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
      "createTime": CREATE_TIME,
      "updateTime": UPDATE_TIME,
      "state": "ACTIVE",
      "dataset": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/datasets/BACKTEST_DATASET_ID",
      "model": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/models/MODEL_ID",
      "endTime": "BACKTEST_END_DATE",
      "performanceTarget": {
        "partyInvestigationsPerPeriodHint": "PARTY_INVESTIGATIONS_PER_PERIOD_HINT"
      },
      "lineOfBusiness": "RETAIL"
    }
  ]
}

Exportar metadatos

Para exportar metadatos desde los resultados de la prueba interna, usa el método projects.locations.instances.backtestResults.exportMetadata.

Para obtener más información, consulta Metadatos exportados en el modelo de datos de salida AML.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: El identificador definido por el usuario para la instancia
  • BACKTEST_RESULTS_ID: Un identificador definido por el usuario para los resultados de la prueba backtest
  • BQ_OUTPUT_DATASET_NAME: Un conjunto de datos de BigQuery en el que se exportará una tabla que describe los metadatos estructurados de los resultados de la prueba inversa
  • STRUCTURED_METADATA_TABLE: Es la tabla en la que se escribirán los metadatos estructurados.
  • WRITE_DISPOSITION: Es la acción que se produce si la tabla de destino ya existe. Usa uno de los siguientes valores:
    • WRITE_EMPTY: Solo exportar datos si la tabla de destino está vacía.
    • WRITE_TRUNCATE: Borra todos los datos existentes en la tabla de BigQuery antes de escribir en ella.

Cuerpo JSON de la solicitud:

{
  "structuredMetadataDestination": {
    "tableUri": "bq://PROJECT_ID.BQ_OUTPUT_DATASET_NAME.STRUCTURED_METADATA_TABLE",
    "writeDisposition": "WRITE_DISPOSITION"
  }
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "verb": "exportMetadata",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Si quieres obtener más información para obtener el resultado de la operación de larga duración (LRO), consulta Verifica el resultado.

Borrar resultados de la prueba inversa

Para borrar los resultados de la prueba interna, usa el método projects.locations.instances.backtestResults.delete.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: Es tu ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • LOCATION: Es la ubicación de la instancia. Usa una de las regiones compatibles:
    • us-central1
    • us-east1
    • europe-west1
    • europe-west2
    • europe-west4
    • southamerica-east1
  • INSTANCE_ID: El identificador definido por el usuario para la instancia
  • BACKTEST_RESULTS_ID: El identificador definido por el usuario para los resultados de la prueba backtest

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.financialservices.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID/backtestResults/BACKTEST_RESULTS_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Si quieres obtener más información para obtener el resultado de la operación de larga duración (LRO), consulta Verifica el resultado.