Crea un trabajo de evaluación continua

Mediante un trabajo de evaluación continua se define cómo el Servicio de etiquetado de datos de AI Platform realiza una evaluación continua en una versión del modelo que implementaste en AI Platform Prediction. Cuando creas un trabajo de evaluación para una versión del modelo, comienzan a llevarse a cabo dos procesos:

  • Como la versión del modelo entrega predicciones en línea, la entrada y salida de algunas de estas predicciones se guardan en una tabla de BigQuery.
  • A intervalos regulares, el trabajo de evaluación continua se ejecuta y realiza las siguientes tareas:
    1. Con el trabajo se crea un conjunto de datos del Servicio de etiquetado de datos con todas las filas nuevas incorporadas en BigQuery desde la última ejecución.
    2. El trabajo envía una solicitud de etiquetado para que los revisores manuales les proporcionen etiquetas de verdad fundamental a las predicciones (opcional).
    3. En el trabajo, se calcula un conjunto de métricas de evaluación, que puedes ver en la consola de Google Cloud.

Antes de comenzar

Antes de comenzar, debes implementar una versión del modelo en AI Platform Prediction que cumpla con los requisitos específicos del modelo. También debes habilitar ciertas API de Google Cloud. Lee Antes de comenzar la evaluación continua para obtener información sobre cómo cumplir con estos requisitos.

Configura opciones básicas

En las secciones que siguen, se describe cómo navegar a la página de creación de trabajos y configurar los detalles básicos para tu trabajo de evaluación.

Si deseas crear un trabajo de evaluación para una versión del modelo, navega hacia la página de esa versión del modelo en la consola de Google Cloud y abre la página de creación de trabajos:

  1. Abre la página Modelos de AI Platform en la consola de Google Cloud:

    Ir a la página Modelos de AI Platform

  2. Haz clic en el nombre del modelo que contiene la versión del modelo para la que deseas crear un trabajo de evaluación.

  3. Haz clic en el nombre de la versión del modelo para la que deseas crear un trabajo de evaluación. No puede tener un trabajo de evaluación ya adjunto.

  4. Haz clic en la pestaña Evaluación. Luego, haz clic en Configurar trabajo de evaluación.

Especifica la descripción, el objetivo del modelo, las etiquetas y el porcentaje de muestreo

En los siguientes pasos, se describen los detalles básicos de la configuración que debes especificar en el formulario de creación de trabajos:

  1. Agrega una descripción para tu trabajo de evaluación en el campo Descripción del trabajo.

  2. Especifica el tipo de tarea que realiza tu modelo de aprendizaje automático en el campo Objetivo del modelo. Obtén más información sobre los tipos de modelos de aprendizaje automático compatibles con la evaluación continua.

    • Si tu modelo realiza clasificaciones, especifica si se trata de clasificaciones de etiqueta única o clasificaciones de múltiples etiquetas en el campo Tipo de clasificación.
    • Si tu modelo realiza reconocimiento de objetos de imagen, especifica un mínimo de intersección sobre la unión (IOU) entre 0 y 1. Esto define la similitud que debe existir entre los cuadros de límite predichos por tu modelo y los cuadros de límite de verdad fundamental para que la predicción se considere correcta.
  3. En el campo Ruta del archivo de etiquetas de predicción, especifica la ruta de un archivo CSV en Cloud Storage que contenga las posibles etiquetas para las predicciones de tu modelo. Este archivo define un conjunto de especificaciones de anotación para tu modelo. Obtén información sobre cómo estructurar este archivo.

  4. En el campo Porcentaje de muestreo diario, especifica el porcentaje de predicciones que realiza tu versión del modelo que deseas exportar a BigQuery y analizar como parte de la evaluación continua.

    Además, especifica un Límite de muestreo diario a fin de establecer un máximo para la cantidad de predicciones que deseas muestrear durante cualquier período de evaluación.

    Por ejemplo, quizá desees muestrear el 10% de las predicciones en el marco de una evaluación continua. Pero si acaso recibes muchas predicciones en un mismo día, es mejor que te asegures de no tomar muestras de más de 100 predicciones para la ejecución del trabajo de evaluación de ese día. Ante una gran cantidad de predicciones, puede que a los revisores manuales les lleve mucho tiempo etiquetarlas y que se generen más costos del Servicio de etiquetado de datos de lo que esperas.

Especifica la tabla de BigQuery

En el campo Tabla de BigQuery, debes especificar el nombre de una tabla de BigQuery en la que el Servicio de etiquetado de datos pueda almacenar las predicciones que se obtuvieron de tu versión del modelo.

Si especificas el nombre de una tabla que aún no existe, el Servicio de etiquetado de datos creará una tabla con el esquema correcto para ti.

Debes proporcionar el nombre completo de la tabla en el siguiente formato: bq://YOUR_PROJECT_ID.YOUR_DATASET_NAME.YOUR_TABLE_NAME

Si la tabla que especificas ya existe, debe tener el esquema correcto para una evaluación continua:

Nombre del campoTipoModo
modelSTRINGOBLIGATORIO
model_versionSTRINGOBLIGATORIO
timeTIMESTAMPOBLIGATORIO
raw_dataSTRINGOBLIGATORIO
raw_predictionSTRINGACEPTA VALOR NULL
groundtruthSTRINGACEPTA VALOR NULL

La tabla debe contar solo con estas columnas.

Especifica las claves de predicción

Debes especificar las claves de ciertos campos en tu entrada para que el Servicio de etiquetado de datos pueda extraer la información necesaria a partir de las entradas y las salidas JSON de las predicciones sin procesar almacenadas en tu tabla de BigQuery. Asegúrate de que tu versión del modelo acepte entradas y muestre predicciones en el formato requerido. Luego, proporciona las claves relevantes:

  • Clave de datos: Es la clave de un campo en la entrada de predicción de la versión del modelo que contiene los datos usados para la predicción. Si habilitas el etiquetado manual, el Servicio de etiquetado de datos proporciona estos datos a los revisores manuales para que generen etiquetas de verdad fundamental. También se usa para mostrar comparaciones en paralelo cuando visualizas métricas de evaluación en la consola de Google Cloud.

    Si tu modelo de versión realiza clasificación de texto o clasificaciones en general, debes proporcionar esta clave. Si tu modelo de versión realiza clasificación de imágenes o reconocimiento de objetos de imagen además de aceptar imágenes codificadas en Base64 como entrada de predicción, también debes proporcionar esta clave.

  • Clave de referencia de datos: la clave de un campo en la entrada de predicción de tu versión del modelo que contiene una ruta de Cloud Storage a una imagen. El Servicio de etiquetado de datos carga esta imagen y la usa con los mismos fines con que usa la Clave de datos.

    Proporciona esta clave solo si tu versión del modelo realiza clasificación de imágenes o reconocimiento de objetos de imagen además de aceptar rutas a imágenes en Cloud Storage como entrada de predicción. Es obligatorio contar con una Clave de datos o una Clave de referencia de datos.

  • Clave de etiqueta de predicción: la clave de un campo en el resultado de la predicción de tu versión del modelo que contiene un arreglo de etiquetas predichas. El Servicio de etiquetado de datos compara estos valores con los valores de verdad fundamental a fin de calcular métricas de evaluación, como las matrices de confusión.

    Este campo es obligatorio.

  • Clave de puntuación de predicción: la clave de un campo en el resultado de la predicción de tu versión del modelo que contiene un arreglo de puntuaciones predichas. El Servicio de etiquetado de datos usa estos valores junto con las etiquetas de predicción y las etiquetas de verdad fundamental a fin de calcular métricas de evaluación, como curvas de precisión-recuperación.

    Este campo es obligatorio.

  • Clave de cuadro de límite: la clave de un campo en el resultado de la predicción de tu versión del modelo que contiene un arreglo de cuadros de límites. Esto es necesario para evaluar el reconocimiento de objetos de imagen.

    Proporciona esta clave solo si tu versión del modelo realiza reconocimiento de objetos de imagen.

Ejemplos de claves de predicción

En la siguiente sección, se brindan ejemplos de cómo proporcionar claves de predicción para diferentes tipos de modelos:

Clasificación de imágenes

Ejemplo codificado en Base64

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "image_bytes": {
        "b64": "iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAhUlEQVR4AWOAgZeONnHvHcXiGJDBqyDTXa+dVC888oy51F9+eRdY8NdWwYz/RyT//znEsAjEt277+syt5VMJw989DM/+H2MI/L8tVBQk4d38xcWp7ctLhi97ZCZ0rXV6yLA4b6dH59sjTq3fnji1fp4AsWS5j7PXstRg+/b3gU7N351AQgA8+jkf43sjaQAAAABJRU5ErkJggg=="
      }
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de datos: image_bytes/b64
  • Clave de etiqueta de predicción: sentiments
  • Clave de puntuación de predicción: confidence

Ejemplo de referencia de Cloud Storage

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "image_path": "gs://cloud-samples-data/datalabeling/image/flower_1.jpeg"
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de referencia de datos: image_path
  • Clave de etiqueta de predicción: sentiments
  • Clave de puntuación de predicción: confidence

Clasificación de texto

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "text": "If music be the food of love, play on;"
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de datos: text
  • Clave de etiqueta de predicción: sentiments
  • Clave de puntuación de predicción: confidence

Clasificación general

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "weather": [
        "sunny",
        72,
        0.22
      ]
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de datos: weather
  • Clave de etiqueta de predicción: sentiments
  • Clave de puntuación de predicción: confidence

Detección de objetos de imagen

Ejemplo codificado en Base64

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "image_bytes": {
        "b64": "iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAhUlEQVR4AWOAgZeONnHvHcXiGJDBqyDTXa+dVC888oy51F9+eRdY8NdWwYz/RyT//znEsAjEt277+syt5VMJw989DM/+H2MI/L8tVBQk4d38xcWp7ctLhi97ZCZ0rXV6yLA4b6dH59sjTq3fnji1fp4AsWS5j7PXstRg+/b3gU7N351AQgA8+jkf43sjaQAAAABJRU5ErkJggg=="
      }
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "bird_locations": [
        {
          "top_left": {
            "x": 53,
            "y": 22
          },
          "bottom_right": {
            "x": 98,
            "y": 150
          }
        }
      ],
      "species": [
        "rufous hummingbird"
      ],
      "probability": [
        0.77
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de datos: image_bytes/b64
  • Clave de etiqueta de predicción: species
  • Clave de puntuación de predicción: probability
  • Clave de cuadro de límite: bird_locations

Ejemplo de referencia de Cloud Storage

Supongamos que tu versión del modelo puede aceptar la siguiente entrada:

{
  "instances": [
    {
      "image_path": "gs://cloud-samples-data/datalabeling/image/flower_1.jpeg"
    }
  ]
}

Supongamos que muestra el siguiente resultado:

{
  "predictions": [
    {
      "bird_locations": [
        {
          "top_left": {
            "x": 53,
            "y": 22
          },
          "bottom_right": {
            "x": 98,
            "y": 150
          }
        }
      ],
      "species": [
        "rufous hummingbird"
      ],
      "probability": [
        0.77
      ]
    }
  ]
}

Luego, proporciona las siguientes claves:

  • Clave de referencia de datos: image_path
  • Clave de etiqueta de predicción: species
  • Clave de puntuación de predicción: probability
  • Clave de cuadro de límite: bird_locations

Especifica el método de verdad fundamental

La evaluación continua consiste en comparar las predicciones de tu modelo de aprendizaje automático con las etiquetas de verdad fundamental que se asignan de forma manual. Para elegir cómo crear etiquetas de verdad fundamental, haz clic en tu Método de verdad fundamental preferido:

  • Servicio de etiquetado administrado por Google: Si seleccionas esta opción, cada vez que se ejecute el trabajo de evaluación, el Servicio de etiquetado de datos enviará todos los datos nuevos muestreados a los revisores manuales para que los etiqueten de acuerdo con la verdad fundamental. Se aplican los precios del Servicio de etiquetado de datos. Si eliges esta opción, debes proporcionar instrucciones en PDF para etiquetar tu entrada de predicción. Aprende cómo escribir buenas instrucciones.

  • Proporciona tus propias etiquetas: si seleccionas esta opción, tú mismo debes agregar las etiquetas de verdad fundamental a la tabla de BigQuery de tu trabajo de evaluación. Debes agregar etiquetas de verdad fundamental a cualquier entrada de predicción nueva que forme parte del muestreo antes de la próxima ejecución del trabajo de evaluación. De manera predeterminada, el trabajo de evaluación se ejecuta todos los días a las 10:00 a.m. UTC, por lo que debes agregar las etiquetas de verdad fundamental siempre antes de esa hora para cualquier fila nueva en la tabla de BigQuery. De lo contrario, esos datos no se evaluarán y verás un error en la consola de Google Cloud.

    Esta es la única opción si la versión del modelo realiza una clasificación general.

Crea un trabajo

Haz clic en el botón Crear para crear un trabajo de evaluación. Las entradas y los resultados de las predicciones deben formar parte del muestreo de tu versión del modelo y se deben incorporar a tu tabla de BigQuery de inmediato.

¿Qué sigue?

Obtén más información sobre cómo ver las métricas de evaluación.