En esta página se explica cómo preparar los datos tabulares para entrenar modelos de clasificación y regresión en Vertex AI. La calidad de los datos de entrenamiento influye en la eficacia de los modelos que crees.
En este documento se tratan los siguientes temas:
- Requisitos de la estructura de los datos
- Preparar el origen de importación
- Añadir pesos a los datos de entrenamiento
De forma predeterminada, Vertex AI usa un algoritmo de división aleatoria para separar los datos en tres divisiones. Vertex AI selecciona aleatoriamente el 80% de las filas de datos para el conjunto de entrenamiento, el 10% para el conjunto de validación y el 10% para el conjunto de prueba. También puede usar una división manual o una división cronológica, pero para ello debe preparar una columna de división de datos o una columna de tiempo. Más información sobre las divisiones de datos
Requisitos de estructura de datos
Los datos de entrenamiento deben cumplir los siguientes requisitos básicos:
Tipo de requisito | Requisito |
---|---|
Tamaño | El tamaño del conjunto de datos no puede superar los 100 GB. |
Número de columnas | El conjunto de datos debe tener entre 2 y 1000 columnas. El conjunto de datos debe tener un objetivo y al menos una función para entrenar el modelo. Lo ideal es que los datos de entrenamiento tengan más de dos columnas. El número máximo de columnas incluye tanto las de características como las que no lo son. |
Columna de objetivos | Debes especificar una columna de destino. La columna de destino permite que Vertex AI asocie los datos de entrenamiento con el resultado deseado. No debe contener valores nulos y debe ser categórico o numérico. Si es categórico, debe tener al menos 2 y no más de 500 valores distintos. |
Formato del nombre de la columna | El nombre de la columna puede incluir cualquier carácter alfanumérico o un guion bajo (_ ), pero no puede empezar por un guion bajo. |
Número de filas | El conjunto de datos debe tener al menos 1000 filas y no más de 100.000.000. En función del número de características que tenga tu conjunto de datos, es posible que 1000 filas no sean suficientes para entrenar un modelo de alto rendimiento. Más información |
Formato de datos | Utilice el formato de datos adecuado (ancho o estrecho) para su objetivo. En general, es mejor usar un formato ancho, en el que cada fila representa un elemento de datos de entrenamiento (producto, persona, etc.). Consulta cómo elegir el formato de los datos. |
Preparar el origen de importación
Puedes proporcionar datos de entrenamiento de modelos a Vertex AI en dos formatos:
- Tablas de BigQuery
- Valores separados por comas (CSV)
La fuente que utilices dependerá de cómo se almacenen tus datos, así como de su tamaño y complejidad. Si tu conjunto de datos es pequeño y no necesitas tipos de datos más complejos, puede que sea más fácil usar CSV. Para conjuntos de datos más grandes que incluyan arrays y structs, usa BigQuery.
BigQuery
Tu tabla o vista de BigQuery debe cumplir los requisitos de ubicación de BigQuery.
Si tu tabla o vista de BigQuery está en un proyecto diferente al proyecto en el que vas a crear tu conjunto de datos de Vertex AI, o si tu tabla o vista de BigQuery se basa en una fuente de datos externa, añade uno o varios roles al agente de servicio de Vertex AI. Consulta los requisitos para añadir roles en BigQuery.
No es necesario que especifiques un esquema para tu tabla de BigQuery. Vertex AI infiere automáticamente el esquema de tu tabla cuando importas los datos.
El URI de BigQuery (que especifica la ubicación de los datos de entrenamiento) debe tener el siguiente formato:
bq://<project_id>.<dataset_id>.<table_id>
El URI no puede contener ningún otro carácter especial.
Para obtener información sobre los tipos de datos de BigQuery y cómo se asignan a Vertex AI, consulta el artículo sobre las tablas de BigQuery. Para obtener más información sobre cómo usar fuentes de datos externas de BigQuery, consulta la introducción a fuentes de datos externas.
CSV
Los archivos CSV pueden estar en Cloud Storage o en tu ordenador local. Deben cumplir los siguientes requisitos:
- La primera línea del primer archivo debe ser un encabezado que contenga los nombres de las columnas. Si la primera fila de otro archivo es idéntica al encabezado, se tratará como tal. De lo contrario, se considerará una fila de datos.
- Los nombres de las columnas pueden incluir cualquier carácter alfanumérico o un guion bajo (_). El nombre de la columna no puede empezar con un guion bajo.
El tamaño de cada archivo no debe superar los 10 GB.
Puedes incluir varios archivos siempre que no sobrepases el máximo de 100 GB.
El delimitador debe ser una coma (",").
No es necesario que especifique un esquema para sus datos CSV. Vertex AI infiere automáticamente el esquema de tu tabla cuando importas los datos y usa la fila de encabezado para los nombres de las columnas.
Para obtener más información sobre el formato de los archivos CSV y los tipos de datos, consulta el artículo Archivos CSV.
Si importa sus datos desde Cloud Storage, deben estar en un segmento que cumpla los siguientes requisitos:
- Cumple los requisitos de los segmentos de Vertex AI.
- Si el bucket no está en el mismo proyecto que Vertex AI, añade uno o varios roles al agente de servicio de Vertex AI. Consulta los requisitos para añadir roles en Cloud Storage.
Si importa datos desde su ordenador local, debe tener un segmento de Cloud Storage que cumpla los siguientes requisitos:
- Cumple los requisitos de los segmentos de Vertex AI.
Si el bucket no está en el mismo proyecto que Vertex AI, añade uno o varios roles al agente de servicio de Vertex AI. Consulta los requisitos para añadir roles en Cloud Storage.
Vertex AI usa este bucket como área de almacenamiento temporal antes de importar tus datos.
Añadir pesos a los datos de entrenamiento
De forma predeterminada, Vertex AI pondera equitativamente cada fila de tus datos de entrenamiento. Para fines de formación, ninguna fila se considera más importante que otra.
En ocasiones, puede que quieras que algunas filas tengan más importancia en el entrenamiento. Por ejemplo, si usas datos de gasto, puede que quieras que los datos asociados a los usuarios que gastan más tengan un mayor impacto en el modelo. Si quieres evitar que se te pase por alto un resultado específico, asigna más peso a las filas con ese resultado.
Asigna valores relativos a las filas añadiendo una columna de ponderación a tu conjunto de datos. La columna de peso debe ser numérica. El valor de la ponderación puede ser de 0 a 10.000. Los valores más altos indican que la fila es más importante a la hora de entrenar el modelo. Si el peso es 0, la fila se ignora. Si incluye una columna de peso, debe contener un valor en cada fila.
Más adelante, cuando entrenes tu modelo, especifica esta columna como la columna Weight
.
Los esquemas de ponderación personalizados solo se usan para entrenar el modelo. No afectan al conjunto de pruebas que se usa para evaluar el modelo.
Siguientes pasos
- Crea tu conjunto de datos.
- Consulta las prácticas recomendadas para crear datos de entrenamiento tabulares.
- Consulta cómo funciona Vertex AI con diferentes tipos de datos tabulares.