Diffusers documentation
Eğitim için bir veri seti oluşturun
Eğitim için bir veri seti oluşturun
Hub üzerinde bir model eğitmek için kullanabileceğiniz birçok veri seti bulunur; ancak ilgilendiğiniz bir veri setini bulamıyorsanız veya kendi veri setinizi kullanmak istiyorsanız, 🤗 Datasets kütüphanesiyle bir veri seti oluşturabilirsiniz. Veri seti yapısı, modelinizi eğitmek istediğiniz göreve bağlıdır. En temel veri seti yapısı, koşulsuz görüntü üretimi gibi görevler için görüntülerden oluşan bir dizindir. Bir diğer veri seti yapısı ise metinden görüntüye üretim gibi görevler için görüntülerden oluşan bir dizin ve bu görüntülere karşılık gelen metin açıklamalarını içeren bir metin dosyasıdır.
Bu kılavuz, ince ayar yapmak için veri seti oluşturmanın iki yolunu gösterecektir:
--train_data_dirargümanına bir görsel klasörü sağlayın- bir veri setini Hub'a yükleyin ve veri seti deposu kimliğini
--dataset_nameargümanına iletin
💡 Eğitim için bir görüntü veri seti oluşturma hakkında daha fazla bilgi için Bir görüntü veri seti oluşturun kılavuzuna göz atın.
Bir veri setini klasör olarak sağlayın
Koşulsuz üretim için, kendi veri setinizi bir görsel klasörü olarak sağlayabilirsiniz. Eğitim betiği, 🤗 Datasets'teki ImageFolder oluşturucusunu kullanarak klasörden bir veri setini otomatik olarak oluşturur. Dizin yapınız şu şekilde görünmelidir:
data_dir/xxx.png data_dir/xxy.png data_dir/[...]/xxz.png
Veri seti dizinine giden yolu --train_data_dir argümanına iletin, ardından eğitimi başlatabilirsiniz:
accelerate launch train_unconditional.py \
--train_data_dir <path-to-train-directory> \
<other-arguments>Verilerinizi Hub'a yükleyin
💡 Hub'a bir veri seti oluşturma ve yükleme hakkında daha fazla ayrıntı ve bağlam için Image search with 🤗 Datasets gönderimine göz atın.
ImageFolder özelliğini kullanarak bir veri seti oluşturarak başlayın; bu özellik, PIL kodlanmış görüntüler içeren bir image sütunu oluşturur.
Veri setinin konumunu belirtmek için data_dir veya data_files parametrelerini kullanabilirsiniz. data_files parametresi, train veya test gibi veri seti bölümlerine belirli dosyaları eşlemeyi destekler:
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_3367a.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"]}
)Ardından veri setini Hub'a yüklemek için push_to_hub yöntemini kullanın:
# 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)Şimdi veri seti, veri seti adını --dataset_name argümanına geçirerek eğitim için kullanılabilir:
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>Sonraki adımlar
Bir veri seti oluşturduğunuzda, eğitim betiğindeki train_data_dir (veri setiniz yerel ise) veya dataset_name (veri setiniz Hub üzerinde ise) argümanlarına ekleyebilirsiniz.
Sonraki adımlarınız için, koşulsuz üretim veya metinden görüntüye üretim için bir model eğitmek üzere veri setinizi kullanmayı denemekten çekinmeyin!
Update on GitHub