0 / 0
Volver a la versión inglesa de la documentación
Creación de evaluaciones y métricas personalizadas
Creación de evaluaciones y métricas personalizadas

Creación de evaluaciones y métricas personalizadas

Para crear evaluaciones personalizadas, debe consolidar un conjunto de métricas personalizadas para realizar un seguimiento, de forma cuantitativa, de cualquier aspecto del despliegue del modelo y de la aplicación empresarial. Puede definir métricas personalizadas y utilizarlas junto con las métricas estándar, tales como la calidad del modelo, el rendimiento o las métricas de equidad que se supervisan en IBM Watson OpenScale.

Puede utilizar uno de los métodos siguientes para gestionar evaluaciones y métricas personalizadas:

Gestión de métricas personalizadas con el SDK de Python

Para gestionar métricas personalizadas con el SDK de Python , debe realizar las tareas siguientes:

  1. Registrar el supervisor personalizado con la definición de métricas.
  2. Habilitar el supervisor personalizado.
  3. Almacenar valores de métrica.

La siguiente guía de aprendizaje avanzada muestra cómo hacerlo:

Puede inhabilitar y habilitar de nuevo la supervisión personalizada en cualquier momento. Puede eliminar el supervisor personalizado si ya no lo necesita.

Para obtener más información, consulte la documentación del SDK de Python.

Paso 1: Registrar el supervisor personalizado con la definición de métricas.

Para poder empezar utilizando métricas personalizadas, debe registrar el supervisor personalizado, que es el procesador que realiza el seguimiento de las métricas. También debe definir las propias métricas.

  1. Utilice el método get_definition(monitor_name) para importar los objetos Metric y Tag.
  2. Utilice el método metrics para definir las métricas, que requieren valores de name, thresholds y type.
  3. Utilice el método tags para definir los metadatos.

El código siguiente procede del cuaderno de ejemplo de trabajo que se ha mencionado anteriormente:

def get_definition(monitor_name):
    monitor_definitions = wos_client.monitor_definitions.list().result.monitor_definitions

    for definition in monitor_definitions:
        if monitor_name == definition.entity.name:
            return definition

    return None


monitor_name = 'my model performance'
metrics = [MonitorMetricRequest(name='sensitivity',
                                thresholds=[MetricThreshold(type=MetricThresholdTypes.LOWER_LIMIT, default=0.8)]),
          MonitorMetricRequest(name='specificity',
                                thresholds=[MetricThreshold(type=MetricThresholdTypes.LOWER_LIMIT, default=0.75)])]
tags = [MonitorTagRequest(name='region', description='customer geographical region')]

existing_definition = get_definition(monitor_name)

if existing_definition is None:
    custom_monitor_details = wos_client.monitor_definitions.add(name=monitor_name, metrics=metrics, tags=tags, background_mode=False).result
else:
    custom_monitor_details = existing_definition

Para comprobar cómo lo está haciendo, ejecute el mandato client.data_mart.monitors.list() para ver si el supervisor y las métricas que acaba de crear se han configurado correctamente.

También puede obtener el ID de supervisor ejecutando el mandato siguiente:

custom_monitor_id = custom_monitor_details.metadata.id

print(custom_monitor_id)

Para examinar con más detalle, ejecute el mandato siguiente:

custom_monitor_details = wos_client.monitor_definitions.get(monitor_definition_id=custom_monitor_id).result
print('Monitor definition details:', custom_monitor_details)

Paso 2: Habilitar el supervisor personalizado.

A continuación, debe habilitar el supervisor personalizado para la suscripción. Así se activa el supervisor y se establecen los umbrales.

  1. Utilice el método target para importar el objeto Threshold.
  2. Utilice el método thresholds para establecer el valor de la métrica lower_limit. Proporcione el valor metric_id como uno de los parámetros. Si no lo recuerda, siempre puede utilizar el mandato custom_monitor_details para obtener los detalles tal como se muestra en el ejemplo anterior.

El código siguiente procede del cuaderno de ejemplo de trabajo que se ha mencionado anteriormente:

target = Target(
        target_type=TargetTypes.SUBSCRIPTION,
        target_id=subscription_id
    )

thresholds = [MetricThresholdOverride(metric_id='sensitivity', type = MetricThresholdTypes.LOWER_LIMIT, value=0.9)]

custom_monitor_instance_details = wos_client.monitor_instances.create(
            data_mart_id=data_mart_id,
            background_mode=False,
            monitor_definition_id=custom_monitor_id,
            target=target
).result

Para comprobar los detalles de la configuración, utilice el mandato subscription.monitoring.get_details(monitor_uid=monitor_uid).

Paso 3: Almacenar valores de métrica.

Debe almacenar o guardar las métricas personalizadas en la región en la que existe la instancia de Watson OpenScale.

  1. Utilice el método metrics para establecer qué métricas está almacenando.
  2. Utilice el método subscription.monitoring.store_metrics para confirmar las métricas.

El código siguiente procede del cuaderno de ejemplo de trabajo que se ha mencionado anteriormente:

from datetime import datetime, timezone, timedelta
from ibm_watson_openscale.base_classes.watson_open_scale_v2 import MonitorMeasurementRequest
custom_monitoring_run_id = "11122223333111abc"
measurement_request = [MonitorMeasurementRequest(timestamp=datetime.now(timezone.utc),
                                                 metrics=[{"specificity": 0.78, "sensitivity": 0.67, "region": "us-south"}], run_id=custom_monitoring_run_id)]
print(measurement_request[0])

published_measurement_response = wos_client.monitor_instances.measurements.add(
    monitor_instance_id=custom_monitor_instance_id,
    monitor_measurement_request=measurement_request).result
published_measurement_id = published_measurement_response[0]["measurement_id"]
print(published_measurement_response)

Para listar todos los supervisores personalizados, ejecute el mandato siguiente:

published_measurement = wos_client.monitor_instances.measurements.get(monitor_instance_id=custom_monitor_instance_id, measurement_id=published_measurement_id).result
print(published_measurement)

Gestión de métricas personalizadas en Watson OpenScale

Paso 1: Añadir grupos de métricas

  1. En el separador Configurar , pulse Añadir grupo de métricas.
  2. Si desea configurar un grupo de métricas manualmente, pulse Configurar nuevo grupo.
    a. Especifique un nombre y una descripción para el grupo de métricas.
    b. Pulse el icono Editar en el mosaico Parámetros de entrada y especifique los detalles de los parámetros de entrada.
    El nombre de parámetro que especifique debe coincidir con el nombre de parámetro especificado en la API de métrica.
    c. Si el parámetro es necesario para configurar el supervisor personalizado, seleccione el recuadro de selección Parámetro necesario .
    d. Pulse Añadir.
    Después de añadir los parámetros de entrada, pulse Siguiente.
    e. Seleccione los tipos de modelo a los que da soporte la evaluación y pulse Siguiente.
    f. Si no desea especificar una planificación de evaluación, pulse Guardar.
    g. Si desea especificar una planificación de evaluación, pulse el conmutador.
    Debe especificar el intervalo para la planificación de evaluación y pulsar Guardar. h. Pulse Añadir métrica y especifique los detalles de la métrica.
    Haga clic en Guardar.
  3. Si desea configurar un grupo de métricas utilizando un archivo JSON, pulse Importar desde archivo.
    Cargue un archivo JSON y pulse Importar.

Paso 2: Añadir puntos finales de métrica

  1. En la sección Puntos finales de métrica , pulse Añadir punto final de métrica.
  2. Especifique un nombre y una descripción para el punto final de métrica.
  3. Pulse el icono Editar en el mosaico Conexión y especifique los detalles de conexión.
    Pulse Siguiente.
  4. Seleccione los grupos de métricas que desea asociar con el punto final de métrica y pulse Guardar.

Paso 3: Configurar supervisores personalizados

  1. En la página Panel de instrumentos de Insights , seleccione Configurar supervisores en un mosaico de despliegue de modelo.
  2. En la sección Evaluaciones , seleccione el nombre del grupo de métricas que ha añadido.
  3. Seleccione el icono Editar en el mosaico Punto final de métrica .
  4. Seleccione un punto final de métrica y pulse Siguiente.
    Si no desea utilizar un punto final de métrica, seleccione Ninguno.
  5. Utilice los conmutadores para especificar las métricas que desea utilizar para evaluar el modelo y proporcionar valores de umbral.
    Pulse Siguiente.
  6. Especifique valores para los parámetros de entrada. Si ha seleccionado JSON como tipo de datos para el grupo de métricas, añada los datos JSON.
    Pulse Siguiente.

Ahora puede evaluar modelos con un supervisor personalizado.

Acceder y visualizar métricas personalizadas

Para acceder y visualizar métricas personalizadas, puede utilizar la interfaz programática. La siguiente guía de aprendizaje avanzada muestra cómo hacerlo:

La visualización de las métricas personalizadas aparece en el panel de control de Watson OpenScale .

Tema principal: Preparar modelos para la supervisión

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información