Stable Diffusion Öğretici Bölüm 1: Notebook Ortamında Dreambooth Çalıştırma
Merhaba ve Stable Diffusion ile kişiselleştirilmiş yapay zeka modelleri oluşturma dünyasına hoş geldiniz! Bu makale serisinin ilk bölümünde, popüler Dreambooth tekniğini kullanarak kendi Stable Diffusion modelinizi bir notebook ortamında nasıl eğiteceğinizi adım adım inceleyeceğiz. İster belirli bir nesneyi, ister bir kişiyi, isterse de sanatsal bir stili Stable Diffusion’a öğretmek isteyin, Dreambooth bu hedeflere ulaşmak için güçlü ve erişilebilir bir yöntem sunar. Notebook ortamları, özellikle Google Colab gibi platformlar, pahalı GPU donanımına sahip olmayanlar için bu karmaşık süreçleri bulut tabanlı, erişilebilir bir şekilde çalıştırma imkanı sağlar. Bu kapsamlı rehberde, kurulumdan eğitime ve sonuçların yorumlanmasına kadar her şeyi detaylıca ele alacağız.
Stable Diffusion ve Dreambooth Nedir?
Stable Diffusion, metin açıklamalarından yüksek kaliteli görseller üretebilen açık kaynaklı bir derin öğrenme modelidir. Geniş bir veri kümesi üzerinde eğitilmiş olup, çeşitli kavramları ve stilleri anlayabilir ve görselleştirebilir. Ancak, varsayılan olarak, Stable Diffusion sizin özel ilgi alanlarınıza veya benzersiz nesnelerinize dair derinlemesine bir bilgiye sahip değildir. İşte bu noktada Dreambooth devreye girer.
Dreambooth, Google araştırmacıları tarafından geliştirilen ve önceden eğitilmiş bir difüzyon modelini küçük bir görsel kümesi kullanarak belirli bir konuyu veya stili “öğretmek” için tasarlanmış bir ince ayar (fine-tuning) tekniğidir. Bu teknik sayesinde, modelin daha önce hiç görmediği bir nesneyi (örneğin, kendi evcil hayvanınızın fotoğraflarını) veya bir sanatsal stili (örneğin, belirli bir ressamın tarzını) tanımasını ve yeni bağlamlarda üretmesini sağlayabilirsiniz. Dreambooth, modelin mevcut bilgisini korurken, yeni kavramları etkili bir şekilde öğrenmesine olanak tanıyan benzersiz bir “sınıf görüntüsü” (class image) ve “düzenlileştirme” (regularization) yaklaşımı kullanır.
Neden Notebook Ortamında Çalışmalı?
Dreambooth gibi derin öğrenme modellerini eğitmek, önemli miktarda hesaplama gücü, özellikle de güçlü bir GPU gerektirir. Herkesin evinde bu tür donanımlara sahip olması mümkün değildir. Notebook ortamları, bu sorunu çözmek için mükemmel bir çözüm sunar:
* Erişilebilirlik: Google Colab, Kaggle Notebooks veya Gradient gibi platformlar, bulut tabanlı GPU’lara erişim sağlar. Bu, kendi donanımınız olmasa bile Dreambooth gibi yoğun modelleri çalıştırmanıza olanak tanır.
* Kolay Kurulum: Bağımlılıkları ve kütüphaneleri manuel olarak kurmak yerine, notebooklar genellikle önceden yapılandırılmış ortamlar sunar veya tek bir kod hücresiyle gerekli tüm kurulumları yapmanıza izin verir.
* Paylaşılabilirlik ve Tekrarlanabilirlik: Notebooklar, kodunuzu, açıklamalarınızı ve çıktılarınızı tek bir belgede birleştirir. Bu, başkalarıyla paylaşmayı kolaylaştırır ve aynı sonuçları elde etmek için adımları tekrarlamayı basitleştirir.
* Adım Adım Yürütme: Kod hücrelerini tek tek çalıştırarak, süreci adım adım takip edebilir, hataları ayıklayabilir ve her aşamanın çıktısını anında görebilirsiniz.
* Maliyet Etkinliği: Google Colab’ın ücretsiz katmanı veya uygun fiyatlı Colab Pro aboneliği, pahalı GPU yatırımı yapmadan bu teknolojiyi denemenize olanak tanır.
Bu makalede, en popüler ve erişilebilir seçeneklerden biri olan Google Colab’ı kullanarak Dreambooth’u nasıl çalıştıracağımıza odaklanacağız.
Ön Koşullar ve Hazırlık
Dreambooth eğitimine başlamadan önce bazı temel gereksinimleri ve hazırlıkları tamamlamanız gerekmektedir:
1. Google Hesabı: Google Colab kullanacağımız için bir Google hesabına sahip olmanız şarttır.
2. Temel Python Bilgisi: Kod hücrelerini çalıştırmak ve gerekirse küçük değişiklikler yapmak için temel Python sözdizimine aşina olmak faydalıdır.
3. Hugging Face Hesabı ve Erişim Token’ı: Stable Diffusion modellerini indirmek ve kaydetmek için Hugging Face platformunu kullanacağız. Bir hesap oluşturmanız ve “Settings -> Access Tokens” bölümünden bir token almanız gerekecek. Bu token’ı notebook’a yapıştırarak kimlik doğrulaması yapacağız.
4. Google Drive: Eğitilmiş modelinizi ve veri setinizi depolamak için Google Drive’ı kullanacağız. Colab, Google Drive’ınıza kolayca bağlanabilir.
5. Veri Seti Hazırlığı: Bu, en kritik adımlardan biridir ve ayrıntılı olarak ele alınacaktır.
Veri Seti Hazırlığı: Kalite ve Miktar
Dreambooth’un başarısı, büyük ölçüde sağladığınız eğitim verilerinin kalitesine ve çeşitliliğine bağlıdır. İşte veri setinizi hazırlarken dikkat etmeniz gerekenler:
Instance Görüntüler (Konu Görüntüleri)
Bunlar, Stable Diffusion’a öğretmek istediğiniz belirli nesnenin, kişinin veya stilin görselleridir.
* Miktar: Genellikle 10 ila 20 yüksek kaliteli görüntü yeterlidir. Daha az görüntü, modelin konuyu yeterince öğrenememesine (underfitting) neden olabilirken, çok fazla görüntü modelin aşırı genelleşmesine (overfitting) ve daha az yaratıcı olmasına yol açabilir.
* Çeşitlilik: Konunuzu farklı açılardan, farklı aydınlatma koşullarında, farklı arka planlarda ve farklı pozlarda gösteren görüntüler seçin. Örneğin, bir evcil hayvanı eğitiyorsanız, hayvanın otururken, yatarken, koşarken, farklı odalarda veya dışarıda çekilmiş fotoğraflarını kullanın. Bu, modelin konuyu çeşitli bağlamlarda tanımasını sağlar.
* Kalite: Görüntüler yüksek çözünürlüklü, net ve iyi aydınlatılmış olmalıdır. Bulanık, pikselli veya düşük kaliteli görüntülerden kaçının.
* Kırpma ve Boyutlandırma: Görüntülerin çoğu kare (1:1 en boy oranı) ve ortak bir boyutta (örneğin, 512×512 veya 768×768 piksel) olmalıdır. Çoğu Dreambooth notebook’u, eğitim sırasında bu işlemi otomatik olarak yapsa da, önceden düzenlemek daha iyi sonuçlar verebilir. Görüntülerin ana konusunu merkeze alarak kırpmaya özen gösterin.
* Arka Plan: Mümkünse, konunuzun net bir şekilde öne çıktığı ve dikkat dağıtıcı arka planların olmadığı görüntüler seçin.
* Dosya Yapısı: Google Drive’ınızda dreambooth_data/instance_images gibi bir klasör oluşturun ve tüm instance görüntülerinizi buraya yükleyin.
Class Görüntüler (Sınıf Görüntüleri)
Class görüntüler, Dreambooth tekniğinin önemli bir parçasıdır. Modelin, öğrettiğiniz yeni kavramı aşırı öğrenmesini (overfitting) engellemeye ve genel Stable Diffusion bilgisini korumasına yardımcı olurlar.
* Amacı: Instance görüntülerinizdeki konunun genel kategorisine ait görsellerdir. Örneğin, bir “sks dog” (sks, instance token’ınız olacak) öğretiyorsanız, class görüntüleriniz “dog” (köpek) kategorisindeki genel görseller olmalıdır. Bu, modelin “sks dog” ile “dog” arasındaki farkı öğrenmesini ve sadece “sks dog” gördüğünüzde belirli özellikleri üretmesini sağlar.
* Miktar: Instance görüntülerinizden çok daha fazla class görüntüye ihtiyacınız olacaktır, genellikle 200 ila 500 arasında.
* Elde Edilmesi: Bu görüntüleri genellikle Stable Diffusion’ın kendisiyle oluşturursunuz. Örneğin, “a photo of a dog” gibi bir prompt kullanarak çok sayıda köpek görüntüsü üretebilirsiniz. Bu, modelin kendi “köpek” bilgisini pekiştirmesine yardımcı olur.
* Dosya Yapısı: Google Drive’ınızda dreambooth_data/class_images gibi bir klasör oluşturun ve tüm class görüntülerinizi buraya yükleyin.
Örnek Veri Seti Yapısı:
Google Drive/
└── dreambooth_data/
├── instance_images/
│ ├── sks_dog_1.jpg
│ ├── sks_dog_2.jpg
│ └── ... (10-20 adet)
└── class_images/
├── dog_1.jpg
├── dog_2.jpg
└── ... (200-500 adet)
Google Colab Ortamını Kurma
Şimdi Google Colab’ı açıp eğitim ortamımızı hazırlayalım:
1. Yeni Bir Notebook Oluşturma: Google Drive’ınıza gidin, sağ tıklayın -> Diğer -> Google Colaboratory.
2. GPU Çalışma Zamanı Seçme:
* Notebook açıldıktan sonra, üst menüden Çalışma Zamanı (Runtime) -> Çalışma Zamanı Türünü Değiştir (Change runtime type) seçeneğine tıklayın.
* Donanım hızlandırıcı (Hardware accelerator) olarak GPU‘yu seçin. Genellikle T4 varsayılan olarak gelir ve Dreambooth için yeterlidir. Daha hızlı eğitim için Colab Pro aboneliğiniz varsa V100 veya A100 seçebilirsiniz.
* Kaydedin.
3. Google Drive’ı Bağlama:
* İlk kod hücresine aşağıdaki kodu yapıştırın ve çalıştırın:
from google.colab import drive
drive.mount('/content/drive')
* Bir bağlantıya tıklamanız, Google hesabınızla oturum açmanız ve Colab’a Drive’ınıza erişim izni vermeniz istenecektir. Bu adım, veri setinize ve eğitilmiş modelinizi kaydetmek için gereklidir.
Dreambooth Eğitim Noteboook’u Seçimi ve Adımlar
Topluluk tarafından geliştirilmiş birçok Dreambooth notebook’u bulunmaktadır. Bunlardan bazıları TheLastBen’in, ShivamShrirao’nun veya Joe Penna’nın notebooklarıdır. Genellikle, bu notebooklar benzer bir akışı takip eder. Biz burada genel bir akışı simüle edeceğiz:
1. Gerekli Kütüphaneleri ve Bağımlılıkları Kurma
İlk adım, Dreambooth’u çalıştırmak için gerekli tüm Python kütüphanelerini ve araçlarını yüklemektir. Bu, genellikle diffusers, transformers, accelerate, xformers gibi kütüphaneleri ve bitsandbytes gibi optimizasyon araçlarını içerir.
!pip install -qqq diffusers transformers accelerate ftfy bitsandbytes --upgrade
!pip install -qqq xformers
!pip install -qqq gradio
Bu komutlar, sessizce (-qqq) ve hızlı bir şekilde gerekli paketleri kurar. xformers özellikle daha az GPU belleği kullanarak daha hızlı eğitim sağlar.
2. Hugging Face Kimlik Doğrulaması
Stable Diffusion modelini indirmek ve model ağırlıklarını Hugging Face’e yüklemek için kimlik doğrulamanız gerekir.
from huggingface_hub import notebook_login
notebook_login()
Bu komutu çalıştırdığınızda, sizden Hugging Face token’ınızı yapıştırmanız istenecektir. Token’ınızı yapıştırın ve Enter tuşuna basın.
3. Eğitim Parametrelerini Tanımlama
Burada, eğitim sürecini yönlendirecek temel parametreleri belirleyeceğiz.
import os
Temel Stable Diffusion modeli (örn: v1.5)
MODEL_NAME = "runwayml/stable-diffusion-v1-5"
Eğitilmiş modelinizin kaydedileceği Google Drive yolu
OUTPUT_DIR = "/content/drive/MyDrive/dreambooth_models/my_sks_model"
Instance görsellerinizin yolu
INSTANCE_DIR = "/content/drive/MyDrive/dreambooth_data/instance_images"
Class görsellerinizin yolu
CLASS_DIR = "/content/drive/MyDrive/dreambooth_data/class_images"
Öğretmek istediğiniz konu için benzersiz token (örn: sks)
INSTANCE_PROMPT = "a photo of sks dog" # "sks" burada benzersiz token
CLASS_PROMPT = "a photo of a dog"
Modelin kaydedileceği dizini oluşturma
os.makedirs(OUTPUT_DIR, exist_ok=True)
os.makedirs(INSTANCE_DIR, exist_ok=True)
os.makedirs(CLASS_DIR, exist_ok=True) # Class görselleri manuel olarak oluşturulacaksa
* MODEL_NAME: Hangi önceden eğitilmiş Stable Diffusion modelini temel alacağınızı belirtir. runwayml/stable-diffusion-v1-5 genellikle iyi bir başlangıç noktasıdır.
* OUTPUT_DIR: Eğitilmiş modelinizin kaydedileceği yer.
* INSTANCE_DIR: Instance görsellerinizin bulunduğu klasör.
* CLASS_DIR: Class görsellerinizin bulunduğu klasör.
* INSTANCE_PROMPT: Modelin yeni konuyu tanıması için kullanacağınız prompt. Genellikle [benzersiz_token] [konu_tanımı] şeklinde olur. sks gibi rastgele bir token seçmek, modelin bu kelimeyi mevcut kelime dağarcığıyla karıştırmamasını sağlar.
* CLASS_PROMPT: Class görsellerinizi açıklayan prompt.
4. Class Görüntülerini Oluşturma (Gerekliyse)
Eğer class görsellerinizi henüz oluşturmadıysanız, bu adımda Stable Diffusion’ı kullanarak bunları otomatik olarak üretebilirsiniz. Bu, modelin genel “dog” kavramını korumasına yardımcı olurken, “sks dog” kavramını öğrenmesini sağlar.
# Sadece class görselleri yoksa çalıştırın
if not os.listdir(CLASS_DIR):
print(f"Generating class images for {CLASS_PROMPT} in {CLASS_DIR}...")
!accelerate launch train_dreambooth.py \
--pretrained_model_name_or_path=$MODEL_NAME \
--output_dir=$CLASS_DIR \
--class_data_dir=$CLASS_DIR \
--class_prompt="$CLASS_PROMPT" \
--num_class_images=200 \ # Kaç adet class görseli oluşturulacak
--with_prior_preservation \
--prior_loss_weight=1.0 \
--seed=1234 \
--resolution=512 \
--train_batch_size=1 \
--sample_batch_size=1 \
--gradient_accumulation_steps=1 \
--learning_rate=5e-7 \
--lr_scheduler="constant" \
--lr_warmup_steps=0 \
--num_train_epochs=1 \
--save_interval=10000 \
--max_train_steps=10000 \
--mixed_precision="fp16" \
--train_text_encoder
print("Class images generation complete.")
else:
print("Class images already exist. Skipping generation.")
Bu adım, accelerate kütüphanesini kullanarak train_dreambooth.py scriptini çalıştırır ve belirtilen CLASS_PROMPT ile 200 adet class görüntüsü oluşturur.
5. Dreambooth Eğitimini Başlatma
Şimdi asıl Dreambooth eğitimini başlatma zamanı. Bu, en uzun süren adımdır.
!accelerate launch train_dreambooth.py \
--pretrained_model_name_or_path=$MODEL_NAME \
--instance_data_dir=$INSTANCE_DIR \
--class_data_dir=$CLASS_DIR \
--instance_prompt="$INSTANCE_PROMPT" \
--class_prompt="$CLASS_PROMPT" \
--with_prior_preservation \
--prior_loss_weight=1.0 \
--output_dir=$OUTPUT_DIR \
--seed=1234 \
--resolution=512 \
--train_batch_size=1 \
--sample_batch_size=1 \
--gradient_accumulation_steps=1 \
--gradient_checkpointing \
--learning_rate=5e-6 \ # Dikkat! Bu çok önemli bir parametre
--lr_scheduler="constant" \
--lr_warmup_steps=0 \
--num_train_epochs=1 \
--max_train_steps=800 \ # Instance görsel sayısına göre ayarlanmalı (örn: 10 resim için 800-1000 adım)
--checkpointing_steps=500 \ # Checkpoint kaydetme sıklığı
--mixed_precision="fp16" \
--use_8bit_adam \ # Bellek kullanımını optimize eder
--train_text_encoder
Bu komut bloğu, Dreambooth eğitimini başlatır. İşte bazı önemli parametreler:
* --instance_data_dir ve --class_data_dir: Veri setlerinizin yolları.
* --instance_prompt ve --class_prompt: Daha önce tanımladığımız prompt’lar.
* --with_prior_preservation ve --prior_loss_weight: Class görselleriyle düzenlileştirmeyi etkinleştirir.
* --resolution: Eğitim sırasında görsellerin yeniden boyutlandırılacağı çözünürlük. Genellikle 512 veya 768.
* --train_batch_size: Her eğitim adımında işlenecek görsel sayısı. Bellek kısıtlamaları nedeniyle genellikle 1 olarak ayarlanır.
* --gradient_accumulation_steps: Bellek yetersizliği durumunda, birden fazla küçük adımı birleştirerek daha büyük bir sanal batch boyutu elde etmenizi sağlar.
* --learning_rate: Bu, en kritik parametrelerden biridir. Çok yüksek bir değer modelin hızlıca bozulmasına neden olurken, çok düşük bir değer eğitimin çok yavaş ilerlemesine yol açar. Genellikle 1e-6 ile 5e-6 arasında bir değerle başlanır.
* --max_train_steps: Toplam eğitim adımı sayısı. Instance görsel sayınıza bağlıdır. 10-20 görsel için 800-1200 adım genellikle iyi sonuçlar verir. Çok fazla adım overfitting’e yol açabilir.
* --mixed_precision="fp16": Yarı duyarlıklı kayan nokta aritmetiği kullanarak bellek kullanımını azaltır ve eğitimi hızlandırır.
* --use_8bit_adam: Adam optimizatörünün 8-bit versiyonunu kullanarak GPU belleğinden tasarruf eder.
* --train_text_encoder: Metin kodlayıcısını da eğitir, bu genellikle daha iyi sonuçlar verir ancak daha fazla bellek gerektirir.
Eğitim devam ederken, Colab çıktısında kayıp (loss) değerlerini ve bazen örnek oluşturmaları göreceksiniz. Kayıp değeri düşmeye başlamalıdır.
6. Eğitilmiş Modeli Stable Diffusion Web UI Uyumlu Formata Dönüştürme
Eğitim tamamlandıktan sonra, modeliniz Hugging Face Diffusers formatında kaydedilecektir. Bunu AUTOMATIC1111 Web UI gibi yerel Stable Diffusion arayüzlerinde kullanabilmek için .ckpt (Checkpoint) formatına dönüştürmeniz gerekir.
import os
Dönüştürme scriptinin yolu (genellikle aynı repo içinde bulunur)
CONVERT_SCRIPT = "/content/diffusers/scripts/convert_diffusers_to_original_stable_diffusion.py" # Bu yol notebook'a göre değişebilir
Eğitilmiş modelinizin kaydedildiği klasör
OUTPUT_DIR = "/content/drive/MyDrive/dreambooth_models/my_sks_model"
Dönüştürülen modelin kaydedileceği yol ve dosya adı
CHECKPOINT_PATH = os.path.join(OUTPUT_DIR, "sks_model.ckpt")
Dönüştürme komutu
!python $CONVERT_SCRIPT --model_path $OUTPUT_DIR --checkpoint_path $CHECKPOINT_PATH --half
* --model_path: Eğitilmiş Diffusers modelinin klasörü.
* --checkpoint_path: Dönüştürülen .ckpt dosyasının kaydedileceği yol.
* --half: Modelin yarı duyarlıklı (fp16) olarak kaydedilmesini sağlar, bu da dosya boyutunu küçültür ve çoğu GPU’da performans artışı sağlar.
Bu adımı tamamladıktan sonra, Google Drive’ınızdaki OUTPUT_DIR içinde sks_model.ckpt adında bir dosya bulacaksınız. Bu dosyayı indirip yerel Stable Diffusion Web UI kurulumunuza (örneğin, stable-diffusion-webui/models/Stable-diffusion klasörüne) taşıyarak kullanabilirsiniz.
Eğitilmiş Model ile Görüntü Oluşturma
.ckpt dosyanızı yerel Stable Diffusion Web UI’nıza yükledikten sonra, artık kendi kişiselleştirilmiş modelinizle görüntü oluşturmaya başlayabilirsiniz.
1. Modeli Seçin: Web UI’da model seçicisinden yeni eğitilmiş sks_model.ckpt dosyanızı seçin.
2. Prompt Kullanımı: Görüntü oluşturmak için INSTANCE_PROMPT‘unuzu kullanın. Örneğin:
* a photo of sks dog in a spaceship
* sks dog wearing a hat, digital art
* sks dog as a cyberpunk character
3. Deneyler: Farklı prompt’lar, negatif prompt’lar, CFG ölçeği (genellikle 7-10 arası), sampler (örneğin DPM++ 2M Karras, Euler a) ve adım sayısı (genellikle 20-30 arası) ile deneyler yaparak en iyi sonuçları elde edin.
4. İpucu: Modelin, instance token’ınızı (örneğin sks) kullanarak doğru konuyu tanıdığından emin olun. Eğer model konuyu tanımıyorsa veya yanlış yorumluyorsa, eğitim parametrelerinizi veya veri setinizi gözden geçirmeniz gerekebilir.
Sık Karşılaşılan Sorunlar ve Çözümleri
* CUDA Out of Memory (Bellek Yetmezliği): Bu, en yaygın sorunlardan biridir.
* --train_batch_size değerini 1’e düşürün.
* --gradient_accumulation_steps değerini artırın (örneğin 2 veya 4).
* --use_8bit_adam ve --gradient_checkpointing parametrelerini etkinleştirin.
* --mixed_precision="fp16" kullandığınızdan emin olun.
* Daha düşük çözünürlük (--resolution) kullanmayı deneyin (örn: 512).
* Colab Pro kullanıyorsanız daha güçlü bir GPU (V100 veya A100) seçin.
* Kötü Kaliteli veya Bozuk Görüntüler:
* Overfitting (Aşırı Öğrenme): Model, instance görsellerini ezberlemiş ve yeni şeyler üretemiyordur.
* --max_train_steps değerini azaltın.
* --learning_rate değerini düşürün.
* Class görsellerinizin yeterli ve çeşitli olduğundan emin olun.
* Underfitting (Yetersiz Öğrenme): Model konuyu yeterince öğrenememiştir.
* --max_train_steps değerini artırın.
* --learning_rate değerini hafifçe artırın.
* Instance görsellerinizin kalitesini ve miktarını kontrol edin.
* Daha fazla ve daha çeşitli instance görsel ekleyin.
* Kötü Veri Seti: Bulanık, düşük kaliteli veya konuyla alakasız görseller kullanmak kötü sonuçlara yol açar. Veri setinizi dikkatlice gözden geçirin.
* Eğitim Çok Uzun Sürüyor:
* Daha güçlü bir GPU’ya geçin (Colab Pro).
* --mixed_precision="fp16" ve use_8bit_adam kullandığınızdan emin olun.
* xformers kütüphanesinin kurulu ve etkin olduğundan emin olun.
* Hugging Face Kimlik Doğrulama Hatası: Token’ınızı doğru girdiğinizden emin olun. Token’ın süresinin dolmadığını kontrol edin.
En İyi Uygulamalar ve İpuçları
* Veri Seti Her Şeydir: Kaliteli, çeşitli ve iyi hazırlanmış bir veri seti, başarılı bir Dreambooth modelinin temelidir. Bu adıma en çok zamanı ayırın.
* Küçük Adımlarla Başlayın: Özellikle learning_rate ve max_train_steps gibi parametreler için küçük değerlerle başlayın ve sonuçlara göre ayarlamalar yapın.
* Kayıp Değerini İzleyin: Eğitim sırasında kayıp değerinin düştüğünden emin olun. Eğer yükseliyorsa veya durmuyorsa, bir sorun var demektir.
* Düzenli Kayıt Noktaları (Checkpoints): Eğitim sırasında düzenli aralıklarla modelinizi kaydedin (--checkpointing_steps). Bu, eğitimin yarıda kesilmesi durumunda baştan başlamak zorunda kalmamanızı sağlar ve farklı eğitim aşamalarındaki model performansını karşılaştırmanıza olanak tanır.
* Deneysel Olun: Dreambooth eğitimi sanattan çok bir bilimdir. Farklı parametre kombinasyonları, prompt’lar ve veri setleri ile deney yapmaktan çekinmeyin.
* Token Seçimi: Benzersiz ve daha önce Stable Diffusion’ın bilmediği kısa, anlamsız bir token (örneğin “sks”, “zxc”, “jdo”) kullanmak, modelin bu token’ı yeni bir kavramla ilişkilendirmesini kolaylaştırır.
Sonuç
Bu kapsamlı rehberde, Stable Diffusion’ın gücünü Dreambooth tekniğiyle nasıl kişiselleştirebileceğinizi ve bunu Google Colab gibi erişilebilir bir notebook ortamında nasıl yapacağınızı adım adım öğrendiniz. Veri setinizi hazırlamaktan, eğitim parametrelerini ayarlamaya ve sonuçları yorumlamaya kadar tüm süreçleri ele aldık. Artık kendi benzersiz kavramlarınızı veya stillerinizi Stable Diffusion’a öğretme yeteneğine sahipsiniz.
Unutmayın, bu sadece başlangıç! Yapay zeka modelleriyle çalışmak sürekli öğrenme ve deney yapma gerektirir. Modelinizi daha da geliştirmek için farklı veri setleri, eğitim parametreleri ve prompt’lar deneyerek sınırları zorlamaktan çekinmeyin. Bir sonraki bölümde, Dreambooth eğitimini daha da optimize etmek ve daha gelişmiş teknikler kullanmak için ipuçları ve püf noktaları üzerine odaklanacağız. Başarılar dileriz!
