Buckets:
| # Créer un jeu de données pour l'entraînement | |
| De nombreux jeux de données sont disponibles sur le [Hub](https://huggingface.co/datasets?task_categories=task_categories:text-to-image&sort=downloads) pour entraîner un modèle, mais si vous ne trouvez pas celui qui vous intéresse ou si vous souhaitez utiliser le vôtre, vous pouvez créer un jeu de données avec la bibliothèque 🤗 [Datasets](https://huggingface.co/docs/datasets). La structure du jeu de données dépend de la tâche pour laquelle vous souhaitez entraîner votre modèle. La structure la plus basique est un répertoire d'images pour des tâches comme la génération d'images non conditionnelle. Une autre structure de jeu de données peut être un répertoire d'images et un fichier texte contenant les légendes correspondantes pour des tâches comme la génération d'images à partir de texte. | |
| Ce guide vous montre deux façons de créer un jeu de données pour l'ajustement fin : | |
| - fournir un dossier d'images à l'argument `--train_data_dir` | |
| - téléverser un jeu de données sur le Hub et passer l'identifiant du dépôt du jeu de données à l'argument `--dataset_name` | |
| > [!TIP] | |
| > 💡 En savoir plus sur la création d'un jeu de données d'images pour l'entraînement dans le guide [Créer un jeu de données d'images](https://huggingface.co/docs/datasets/image_dataset). | |
| ## Fournir un jeu de données sous forme de dossier | |
| Pour la génération inconditionnelle, vous pouvez fournir votre propre jeu de données sous forme d'un dossier d'images. Le script d'entraînement utilise le constructeur [`ImageFolder`](https://huggingface.co/docs/datasets/en/image_dataset#imagefolder) de 🤗 Datasets pour construire automatiquement un jeu de données à partir du dossier. La structure de votre répertoire doit ressembler à : | |
| ```bash | |
| data_dir/xxx.png | |
| data_dir/xxy.png | |
| data_dir/[...]/xxz.png | |
| ``` | |
| Transmettez le chemin vers le répertoire du jeu de données à l'argument `--train_data_dir`, puis vous pouvez démarrer l'entraînement : | |
| ```bash | |
| accelerate launch train_unconditional.py \ | |
| --train_data_dir <path-to-train-directory> \ | |
| <other-arguments> | |
| ``` | |
| ## Téléversez vos données sur le Hub | |
| > [!TIP] | |
| > 💡 Pour plus de détails et de contexte sur la création et le téléchargement d'un jeu de données sur le Hub, consultez l'article [Image search with 🤗 Datasets](https://huggingface.co/blog/image-search-datasets). | |
| Commencez par créer un jeu de données avec la fonctionnalité [`ImageFolder`](https://huggingface.co/docs/datasets/image_load#imagefolder), qui crée une colonne `image` contenant les images encodées en PIL. | |
| Vous pouvez utiliser les paramètres `data_dir` ou `data_files` pour spécifier l'emplacement du jeu de données. Le paramètre `data_files` permet d'associer des fichiers spécifiques à des sous-ensembles du jeu de données, tels que `train` ou `test` : | |
| ```python | |
| from datasets import load_dataset | |
| # example 1: local folder | |
| dataset = load_dataset("imagefolder", data_dir="path_to_your_folder") | |
| # example 2: local files (supported formats are tar, gzip, zip, xz, rar, zstd) | |
| dataset = load_dataset("imagefolder", data_files="path_to_zip_file") | |
| # example 3: remote files (supported formats are tar, gzip, zip, xz, rar, zstd) | |
| dataset = load_dataset( | |
| "imagefolder", | |
| data_files="https://download.microsoft.com/download/3/E/1/3E1C3F21-ECDB-4869-8368-6DEBA77B919F/kagglecatsanddogs_5340.zip", | |
| ) | |
| # example 4: providing several splits | |
| dataset = load_dataset( | |
| "imagefolder", data_files={"train": ["path/to/file1", "path/to/file2"], "test": ["path/to/file3", "path/to/file4"]} | |
| ) | |
| ``` | |
| Utilisez ensuite la méthode [push_to_hub](https://huggingface.co/docs/datasets/main/en/package_reference/main_classes#datasets.Dataset.push_to_hub) pour téléverser le jeu de données sur le Hub : | |
| ```python | |
| # assuming you have ran the hf auth login command in a terminal | |
| dataset.push_to_hub("name_of_your_dataset") | |
| # if you want to push to a private repo, simply pass private=True: | |
| dataset.push_to_hub("name_of_your_dataset", private=True) | |
| ``` | |
| Le jeu de données est désormais disponible pour l'entraînement en passant le nom du jeu de données à l'argument `--dataset_name` : | |
| ```bash | |
| accelerate launch --mixed_precision="fp16" train_text_to_image.py \ | |
| --pretrained_model_name_or_path="stable-diffusion-v1-5/stable-diffusion-v1-5" \ | |
| --dataset_name="name_of_your_dataset" \ | |
| <other-arguments> | |
| ``` | |
| ## Étapes suivantes | |
| Maintenant que vous avez créé un jeu de données, vous pouvez l’intégrer dans l’argument `train_data_dir` (si votre jeu de données est local) ou `dataset_name` (si votre jeu de données est sur le Hub) d’un script d’entraînement. | |
| Pour vos prochaines étapes, n'hésitez pas à essayer d'utiliser votre jeu de données pour entraîner un modèle de [génération non conditionnelle](unconditional_training) ou de [génération d'images à partir de texte](text2image) ! | |
Xet Storage Details
- Size:
- 4.95 kB
- Xet hash:
- 506a614905240bffc49774ab7b30cc9f97de93343f940f1181aa3ab3003d55df
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.