Hub documentation

Noms de fichiers et partitions

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Noms de fichiers et partitions

Pour héberger et partager votre jeu de données, créez un dépôt de jeu de données sur le Hugging Face Hub et téléversez vos fichiers de données.

Ce guide vous montre comment nommer vos fichiers et répertoires dans votre dépôt de jeu de données lors de son téléversement et activer toutes les fonctionnalités du Hub des jeux de données, comme le Dataset Viewer. Consultez la collection d’exemples de jeux de données pour plus de détails.

Un jeu de données doté d'une structure prise en charge et de formats de fichiers appropriés dispose automatiquement d'un visualiseur de jeu de données sur sa page du Hub.

Notez que si aucune des structures ci-dessous ne convient à votre cas, vous pouvez avoir plus de contrôle sur la manière dont vous définissez les splits et les sous-ensembles avec la Configuration manuelle.

Cas d’usage de base

Si votre jeu de données n’est pas réparti en ensembles d’entraînement/validation/test, la structure la plus simple est d’avoir un seul fichier : data.csv (cela fonctionne avec tout format de fichier pris en charge et tout nom de fichier).

Votre dépôt contiendra également un fichier README.md, la fiche de jeu de données affichée sur la page de votre jeu de données.

my_dataset_repository/
├── README.md
└── data.csv

Splits

Certains motifs dans le dépôt de jeu de données peuvent être utilisés pour affecter certains fichiers aux ensembles d'entraînement/validation/test.

Nom de fichier

Vous pouvez nommer vos fichiers de données d’après les sous-ensembles train, test et validation :

my_dataset_repository/
├── README.md
├── train.csv
├── test.csv
└── validation.csv

Si vous n’avez pas de splits non traditionnels, vous pouvez placer le nom du split n’importe où dans le fichier de données. La seule règle est que le nom du split doit être délimité par des caractères non alphanumériques, comme test-file.csv par exemple, plutôt que testfile.csv. Les délimiteurs pris en charge incluent les tirets bas, les tirets, les espaces, les points et les chiffres.

Par exemple, les noms de fichiers suivants sont tous acceptables :

  • train split : train.csv, my_train_file.csv, train1.csv
  • ensemble de validation : validation.csv, my_validation_file.csv, validation1.csv
  • jeu de test : test.csv, my_test_file.csv, test1.csv

Nom du répertoire

Vous pouvez placer vos fichiers de données dans des répertoires distincts nommés train, test et validation, où chaque répertoire contient les fichiers de données correspondant à cette partition :

my_dataset_repository/
├── README.md
└── data/
    ├── train/
    │   └── data.csv
    ├── test/
    │   └── more_data.csv
    └── validation/
        └── even_more_data.csv

Mots-clés

Il existe plusieurs façons de désigner les partitions d’entraînement/validation/test. Les partitions de validation sont parfois appelées « dev », et les partitions de test peuvent être désignées par « eval ». Ces autres noms de partitions sont également pris en charge, et les mots-clés suivants sont équivalents :

  • train, entraînement
  • validation, valide, val, dev
  • test, testing, eval, evaluation

Par conséquent, la structure ci-dessous est un dépôt valide :

my_dataset_repository/
├── README.md
└── data/
    ├── training.csv
    ├── eval.csv
    └── valid.csv

Plusieurs fichiers par split

Les segments peuvent s'étendre sur plusieurs fichiers, par exemple :

my_dataset_repository/
├── README.md
├── train_0.csv
├── train_1.csv
├── train_2.csv
├── train_3.csv
├── test_0.csv
└── test_1.csv

Assurez-vous que tous les fichiers de votre ensemble train contiennent train dans leur nom (idem pour les ensembles de test et de validation). Vous pouvez même ajouter un préfixe ou un suffixe à train dans le nom du fichier (par exemple my_train_file_00001.csv).

Pour plus de commodité, vous pouvez également placer vos fichiers de données dans différents répertoires. Dans ce cas, le nom de la partition est déduit du nom du répertoire.

my_dataset_repository/
├── README.md
└── data/
    ├── train/
    │   ├── shard_0.csv
    │   ├── shard_1.csv
    │   ├── shard_2.csv
    │   └── shard_3.csv
    └── test/
        ├── shard_0.csv
        └── shard_1.csv

Nom de split personnalisé

Si les divisions de votre jeu de données ont des noms personnalisés qui ne sont pas train, test ou validation, vous pouvez nommer vos fichiers de données comme data/<split_name>-xxxxx-of-xxxxx.csv.

Voici un exemple avec trois splits, train, test et random :

my_dataset_repository/
├── README.md
└── data/
    ├── train-00000-of-00003.csv
    ├── train-00001-of-00003.csv
    ├── train-00002-of-00003.csv
    ├── test-00000-of-00001.csv
    ├── random-00000-of-00003.csv
    ├── random-00001-of-00003.csv
    └── random-00002-of-00003.csv
Update on GitHub