Pokémon LoRA для Stable Diffusion 1.5
ранг 32 как финальный вариант
LoRA-адаптер для stable-diffusion-v1-5/stable-diffusion-v1-5, обученный на изображениях Pokémon с BLIP-подписями. Это один из двух запусков DATA 266 Lab 2 (rank 8 и rank 32 при одинаковых данных и шагах); автор выбрал rank 32 финальным, потому что его in-domain генерации ближе всего к тестовым изображениям по KID.
🗂 Ключевые особенности
- 🗂 Данные:
reach-vb/pokemon-blip-captions, 833 изображения, после удаления дубликатов — 830; split 90/10 с seed 266: 747 тренировочных и 83 тестовых. - ⚙ LoRA на attention-слоях UNet, rank 32, 6 377 472 обучаемых параметра.
- 💻 Обучение: lr 1e-4 с cosine-расписанием, 3000 шагов, batch size 4 (около 16.1 эпохи), fp16, seed 266.
- 📸 На одной RTX 4090: пик GPU-памяти 3.75 GB, 16.7 минуты.
- ❗ Маленький и однородный датасет: персонажи на белом фоне; сложные промпты с несколькими объектами, количеством и цветами часто ломаются.
🖥 Пример
import torch
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5", torch_dtype=torch.float16).to("cuda")
pipe.load_lora_weights("SawantTej/pokemon-sd15-lora-r32")
image = pipe("a cartoon bird with a hat on its head", num_inference_steps=30).images[0]
Подробнее
📸 Оценка: KID 0.0361 против 0.0947 у базовой модели; CLIP score 32.16 против 32.82; LPIPS между seed 0.755 против 0.830.💻 Обучение: одна RTX 4090, пик 3.75 GB, 16.7 минуты; 3000 шагов, batch 4, fp16.
❗ Ограничения: возможен перенос стиля на посторонние промпты; BLIP-подписи шумные; KID посчитан всего на 20 изображениях; safety checker отметил 6 из 120 изображений, но это ложные срабатывания.
🔒 Только некоммерческие исследования и обучение: персонажи под копирайтом, данные cc-by-nc-sa-4.0, база — CreativeML OpenRAIL-M.








Комментарии