Prepara tus datos de entrenamiento

En esta página, se describe cómo preparar los datos de entrenamiento y prueba para que AutoML Video Intelligence Classification pueda crear un modelo de anotaciones de video personalizado para ti.

Prepara tus videos

  • AutoML Video Intelligence Classification admite los siguientes formatos de video (que se muestran a continuación) para entrenar tu modelo o solicitar una predicción (anota un video). El tamaño máximo del archivo es de 50 GB (hasta 3 horas de duración). No se admiten archivos de video individuales con marcas de tiempo incorrectas o con formato incorrecto en el contenedor.

    • .MOV
    • .MPEG
    • .MP4
    • .AVI
  • Los datos de entrenamiento deben ser lo más parecido posible a los datos sobre los que se harán las predicciones. Por ejemplo, si tu caso práctico incluye videos borrosos y de baja resolución (como los de una cámara de seguridad), los datos de entrenamiento deben estar compuestos por videos borrosos y de baja resolución. En general, también deberías tratar de proporcionar videos de entrenamiento con varios ángulos, resoluciones y fondos.

  • Por lo general, los modelos de clasificación de videos de AutoML no pueden predecir etiquetas que las personas no pueden asignar. Por lo tanto, si no se puede entrenar a las personas para que asignen etiquetas con tan solo mirar el video durante 1 o 2 segundos, es probable que tampoco se pueda entrenar al modelo para que lo haga.

  • Recomendamos que agregues aproximadamente 1,000 videos de entrenamiento o segmentos de video por etiqueta. El mínimo por etiqueta es de 10. En general, se necesitan más ejemplos por etiqueta para entrenar modelos con múltiples etiquetas por video. Además, las puntuaciones resultantes son más difíciles de interpretar.

  • El modelo funciona mejor cuando hay, como máximo, 100 veces más videos destinados a la etiqueta más común que a la etiqueta menos común. Recomendamos quitar etiquetas de muy baja frecuencia.

  • Considera incluir una etiqueta None_of_the_above y videos que no coincidan con ninguna de tus etiquetas definidas. Por ejemplo, para un conjunto de datos de animales, incluye videos de animales fuera de tus variedades etiquetadas y etiquétalos como None_of_the_above. Esto puede mejorar la exactitud de tu modelo. Ten en cuenta que, si bien cualquier nombre de etiqueta funcione, el sistema trata a None_of_the_above de forma especial.

Conjuntos de datos de entrenamiento, validación y prueba

Los datos en un conjunto de datos se dividen en tres cuando se entrena un modelo: un conjunto de datos de entrenamiento, uno de validación y uno de prueba.

  • Un conjunto de datos de entrenamiento se usa para compilar un modelo. Cuando se buscan patrones en los datos de entrenamiento, se prueban múltiples algoritmos y parámetros.
  • A medida que se identifican los patrones, el conjunto de datos de validación se utiliza para probar los algoritmos y patrones. Los algoritmos y patrones con mejor rendimiento se eligen a partir de aquellos identificados durante la etapa de entrenamiento.
  • Una vez identificados, se comprueba la tasa de errores, la calidad y la exactitud mediante el conjunto de datos de prueba.

Se usa tanto una validación como un conjunto de datos de prueba para evitar sesgos en el modelo. Durante la etapa de validación, se usan los parámetros óptimos del modelo, lo que puede dar como resultado métricas sesgadas. El uso del conjunto de datos de prueba para evaluar la calidad del modelo luego de la etapa de validación proporciona una evaluación imparcial sobre la calidad del modelo.

Para identificar tus datos de entrenamiento, pruebas y validación, usa archivos CSV como se describe en la siguiente sección.

Crea archivos CSV con los URI de video y etiquetas

Una vez que los archivos se subieron a Google Cloud Storage, puedes crear archivos CSV que enumeren todos tus datos de entrenamiento y las etiquetas de categoría para esos datos. Los archivos CSV pueden tener cualquier nombre de archivo, deben estar en el mismo depósito que tus archivos de video, deben estar codificado en UTF-8 y deben terminar con una extensión .csv.

Existen tres archivos que puedes usar para entrenar y verificar tu modelo:

File Descripción
Lista de archivos de entrenamiento de modelos

Contiene rutas de acceso al entrenamiento, la prueba y la validación de archivos CSV.

Este archivo se usa para identificar las ubicaciones de hasta tres archivos CSV distintos que describen tus datos de entrenamiento y pruebas.

A continuación, se muestran algunos ejemplos del contenido del archivo CSV de la lista de archivos:

Ejemplo 1:


      TRAIN,gs://automl-video-demo-data/hmdb_split1_5classes_train.csv
      TEST,gs://automl-video-demo-data/hmdb_split1_5classes_test.csv
      

Ejemplo 2:


      UNASSIGNED,gs://automl-video-demo-data/hmdb_split1_5classes_all.csv
      
Datos de prueba

Se usa para entrenar el modelo. Contiene rutas de acceso a archivos de video, horas de inicio y finalización de los segmentos del video y etiquetas que identifican el tema del segmento.

Si especificas un archivo CSV de datos de entrenamiento, también debes especificar un archivo CSV de datos de prueba.

Datos de prueba

Se usa para probar el modelo durante la fase de entrenamiento. Contiene rutas de acceso a archivos de video, horas de inicio y finalización de los segmentos del video y etiquetas que identifican el tema del segmento.

Si especificas un archivo CSV de datos de prueba, también debes especificar un archivo CSV de datos de entrenamiento.

Datos sin asignar

Se usa para entrenar y probar el modelo. Contiene rutas de acceso a archivos de video, horas de inicio y finalización de los segmentos del video y etiquetas que identifican el tema del segmento. Las filas del archivo no asignado se dividen automáticamente en datos de entrenamiento y de prueba. 80% para entrenamiento y 20% para pruebas

Solo puedes especificar un archivo CSV de datos sin asignar sin tener que entrenar y probar archivos CSV. También puedes especificar solo los archivos CSV de entrenamiento y prueba de datos sin un archivo CSV de datos sin asignar.

Los archivos de entrenamiento, de prueba y sin asignar tienen una fila para cada video en el conjunto que subes y tiene estas columnas en cada fila:

  1. El contenido a clasificar o anotar. Este campo contiene el URI de Google Cloud Storage para el video. Los URI de Google Cloud Storage distinguen entre mayúsculas y minúsculas.

  2. Una etiqueta que identifica cómo se categoriza el video. . Las etiquetas deben comenzar con una letra y solo deben contener letras, números y guiones bajos. Puedes especificar múltiples etiquetas para un video. Para ello, agrega varias filas en el archivo CSV que identifiquen el mismo segmento de video con una etiqueta diferente para cada fila.

  3. Hora de inicio y de finalización del segmento de video. Estos dos campos separados por comas identifican el tiempo de inicio y finalización del segmento de video que se analizará, en segundos. La hora de inicio debe ser menor que la de finalización. Ambos valores no deben ser negativos y deben estar dentro del intervalo de tiempo del video. Por ejemplo, 0.09845,1.3600555. Para usar todo el contenido del video, especifica una hora de inicio de 0 y una hora de finalización de la duración total del video o "inf". Por ejemplo, 0,inf.

A continuación, se incluyen algunas filas de ejemplo para un archivo de datos CSV:

Etiqueta única:

gs://<your-video-path>/vehicle.mp4,u-turn,0,5.4

Varias etiquetas en el mismo segmento de video:

gs://<your-video-path>/vehicle.mp4,right-turn,0,8.285
gs://<your-video-path>/vehicle.mp4,left-turn,0,8.285
gs://<your-video-path>/vehicle.mp4,u-turn,0,8.285

Usa inf para indicar el final de un video:

gs://<your-video-path>/vehicle.mp4,right-turn,0,inf

Para obtener mejores resultados, debes incluir al menos cientos de segmentos de video de entrenamiento por etiqueta a fin de crear un modelo preciso. Esta cantidad puede variar según la complejidad de tus datos.

También puedes proporcionar videos en el archivo de datos CSV sin especificar ninguna etiqueta. Luego, debes usar la IU de clasificación de videos en AutoML para aplicar etiquetas a tus datos antes de entrenar tu modelo. Para hacerlo, solo debes proporcionar el URI de Cloud Storage para el video seguido de tres comas, como se muestra en el siguiente ejemplo.

gs://<your-video-path>/vehicle.mp4,,,

No es necesario que especifique datos de validación para verificar los resultados de su modelo entrenado. La clasificación de videos de AutoML divide automáticamente las filas identificadas para el entrenamiento en los datos de entrenamiento y validación. 70% para entrenamiento y 30% para validación.

Guarda el contenido como un archivo CSV en tu depósito de Google Cloud Storage.

Errores comunes con CSV

  • Usar caracteres unicode en las etiquetas. Por ejemplo, los caracteres japoneses no son compatibles.
  • Usar espacios y caracteres no alfanuméricos en las etiquetas
  • Líneas vacías
  • Columnas vacías (líneas con dos comas sucesivas)
  • Colocar mayúsculas de manera incorrecta en las rutas de imágenes de Cloud Storage
  • Se configuró de manera incorrecta el control de acceso para tus archivos de video. Tu cuenta de servicio debe tener acceso de lectura o superior, o bien los archivos deben tener acceso público de lectura
  • Referencias a archivos que no son de video (como archivos PDF o PSD). Del mismo modo, los archivos que no son archivos de video, pero se les cambió el nombre con una extensión de video, causarán un error.
  • El URI de un video apunta a un depósito distinto al del proyecto actual. Solo se puede acceder a los videos del depósito del proyecto.
  • Archivos sin formato CSV