Cette page explique comment préparer vos données tabulaires pour l'entraînement de modèles de classification et de régression dans Vertex AI. La qualité de vos données d'entraînement influe sur l'efficacité des modèles que vous créez.
Voici les sujets abordés :
- Exigences concernant la structure des données
- Préparer votre source d'importation
- Ajouter des pondérations aux données d'entraînement
Par défaut, Vertex AI utilise un algorithme de répartition aléatoire pour séparer vos données en trois divisions. Par défaut, Vertex AI sélectionne de manière aléatoire 80 % des lignes de données pour l'ensemble d'entraînement, 10 % pour l'ensemble de validation et 10 % pour l'ensemble de test. Vous pouvez également utiliser une répartition manuelle ou une répartition chronologique, mais cela nécessite de préparer une colonne de répartition des données ou une colonne temporelle. En savoir plus sur les répartitions de données.
Exigences concernant la structure des données
Vos données d'entraînement doivent être conformes aux exigences de base suivantes :
Type d'exigence | Prérequis |
---|---|
Taille | L'ensemble de données ne doit pas dépasser 100 Go. |
nombre de colonnes | L'ensemble de données doit contenir au moins deux et pas plus de 1 000 colonnes. L'ensemble de données doit comporter une cible et au moins une caractéristique pour entraîner le modèle. Idéalement, vos données d'entraînement doivent comporter beaucoup plus que deux colonnes. Le nombre maximal de colonnes inclut les colonnes de caractéristiques et les colonnes hors caractéristiques. |
Target column | Vous devez spécifier une colonne cible. La colonne cible permet à Vertex AI d'associer les données d'entraînement au résultat souhaité. Elle ne doit pas contenir de valeurs nulles, et doit être catégorielle ou numérique. Si elle est catégorielle, elle doit contenir entre 2 et 500 valeurs distinctes. |
Format de nom de la colonne | Le nom de la colonne peut inclure n'importe quel caractère alphanumérique ou un trait de soulignement (_ ). Il ne peut pas commencer par un trait de soulignement. |
nombre de lignes | L'ensemble de données doit contenir au moins 1 000 et pas plus de 100 000 000 lignes. En fonction du nombre de caractéristiques de l'ensemble de données, ce nombre minimal peut être insuffisant pour entraîner un modèle véritablement performant. En savoir plus |
Format des données | Vous devez utiliser le format de données approprié (large ou étroite) pour votre objectif. Le format large est généralement le meilleur, car chaque ligne représentant un élément de données d'entraînement (produit, personne, etc.). Découvrez comment choisir le format des données. |
Préparer votre source d'importation
Vous pouvez fournir des données d'entraînement de modèle à Vertex AI dans deux formats :
- Tables BigQuery
- CSV (Comma-Separated Values)
La source que vous utilisez dépend de la manière dont vos données sont actuellement stockées, ainsi que de leur taille et de leur complexité. Si votre ensemble de données est peu important et que vous n'avez pas besoin de types de données plus complexes, un fichier CSV est la solution la plus simple. Pour les ensembles de données plus volumineux comprenant des tableaux et des structures, vous devez utiliser BigQuery.
BigQuery
Votre table ou vue BigQuery doit être conforme aux exigences de localisation BigQuery.
Si votre table ou votre vue BigQuery se trouve dans un projet différent de celui dans lequel vous créez votre ensemble de données Vertex AI, ou si votre table ou votre vue BigQuery repose sur une source de données externe, vous devrez peut-être ajouter un ou plusieurs rôles à l'agent de service Vertex AI. Consultez la section Exigences d'ajout de rôles pour BigQuery.
Vous n'avez pas besoin de spécifier un schéma pour votre table BigQuery. Vertex AI déduit automatiquement le schéma de la table lorsque vous importez les données.
Votre URI BigQuery (spécifiant l'emplacement de vos données d'entraînement) doit respecter le format suivant :
bq://<project_id>.<dataset_id>.<table_id>
L'URI ne peut pas contenir d'autres caractères spéciaux.
Pour en savoir plus sur les types de données BigQuery et leur correspondance dans Vertex AI, consultez la page Tables BigQuery. Pour plus d'informations sur l'utilisation des sources de données externes BigQuery, consultez la sectionPrésentation des sources de données externes.
CSV
Les fichiers CSV peuvent se trouver dans Cloud Storage ou sur votre ordinateur local. Ils doivent respecter les exigences suivantes :
- La première ligne du premier fichier doit être un en-tête contenant le nom des colonnes. Si la première ligne d'un fichier suivant est identique à l'en-tête, elle est également traitée comme un en-tête. Sinon, elle est traitée comme des données.
- Les noms de colonne peuvent inclure n’importe quel caractère alphanumérique ou un trait de soulignement (_). Le nom de la colonne ne peut pas commencer par un trait de soulignement.
Chaque fichier ne doit pas dépasser 10 Go.
Vous pouvez inclure plusieurs fichiers, jusqu'à une taille maximale de 100 Go.
Le délimiteur doit être une virgule (",").
Vous n'avez pas besoin de spécifier un schéma pour vos données CSV. Vertex AI déduit automatiquement le schéma de la table lorsque vous importez les données, et utilise la ligne d'en-tête pour les noms de colonne.
Pour plus d'informations sur le format de fichier CSV et les types de données, consultez la page Fichiers CSV.
Si vous importez vos données à partir de Cloud Storage, elles sont transférées dans un bucket qui doit répondre aux exigences suivantes :
- Il est conforme aux exigences de bucket Vertex AI.
- Si le bucket ne se trouve pas dans le même projet que Vertex AI, vous devrez ajouter un ou plusieurs rôles à l'agent de service Vertex AI. Consultez la documentation sur les exigences applicables à l'ajout de rôles pour Cloud Storage
Si vous importez vos données depuis votre ordinateur local, vous devez disposer d'un bucket Cloud Storage répondant aux exigences suivantes :
- Il est conforme aux exigences de bucket Vertex AI.
Si le bucket ne se trouve pas dans le même projet que Vertex AI, vous devrez ajouter un ou plusieurs rôles à l'agent de service Vertex AI. Consultez la documentation sur les exigences applicables à l'ajout de rôles pour Cloud Storage
Vertex AI utilise ce bucket comme zone intermédiaire avant d'importer les données.
Ajouter des pondérations aux données d'entraînement
Par défaut, Vertex AI pondère chaque ligne des données d'entraînement de manière égale. À des fins d'entraînement, aucune ligne n'est considérée comme plus importante qu'une autre.
Il peut arriver que vous souhaitiez accentuer l'importance de certaines lignes pour l'entraînement. Par exemple, si vous exploitez des données de dépenses, vous pourriez vouloir renforcer l'incidence sur le modèle des données issues des utilisateurs les plus dépensiers. Si vous voulez avant tout éviter de manquer un résultat particulier, vous pouvez augmenter la pondération des lignes correspondantes.
Pour appliquer aux lignes une pondération relative, vous ajoutez une colonne de pondération à votre ensemble de données. La colonne de pondération doit être numérique. La valeur de pondération peut être comprise entre 0 et 10 000. Des valeurs plus élevées indiquent que la ligne est plus importante pour l'entraînement du modèle. Si elle est égale à 0, la ligne est ignorée. Si vous incluez une colonne de pondération, elle doit contenir une valeur pour chaque ligne.
Plus tard, lorsque vous entraînerez votre modèle, vous spécifierez cette colonne en tant que colonne Weight
.
Les schémas de pondération personnalisés ne sont utilisés que pour l'entraînement du modèle. ils n'affectent pas l'ensemble de test utilisé pour l'évaluation du modèle.
Étape suivante
- Créer votre ensemble de données
- Prenez connaissance des bonnes pratiques de création des données d'entraînement tabulaires.
- Découvrez comment Vertex AI fonctionne avec différents types de données tabulaires.