--- license: openrail++ thumbnail: >- https://huggingface.co/inu-ai/niji-diffusion-xl-base-1.0/images/thumbnail.png tags: - text-to-image - stable-diffusion - safetensors - diffusers inference: true widget: - text: >- best quality, high quality, absurdres, 1girl datasets: - p1atdev/niji-v5 library_name: diffusers --- # 更新履歴 - 2023年8月14日 さらにnijijourneyの画像1000枚ほどを目で見てアニメやイラスト風で良いもの選んで学習させました。 以下に何をやったか記録しますが、何が効いているのかわかりません。 以下にハイパーパラメータを記載しますが、その後[v11](https://civitai.com/models/120452?modelVersionId=135754)と[sd-webui-supermerger](https://github.com/hako-mikan/sd-webui-supermerger)階層マージ(block_lrに近い絵が良さそうな比率)をしているため一度で仕上がりませんでした。 最後に[blur](https://civitai.com/models/120624)を-0.05ほど、[LECO](https://github.com/p1atdev/LECO)で作ったanimeを1でLoRAマージ仕上げました。 | ハイパーパラメータ | 値 | |-----------------------|-------------------------------------| | GPU | RTX3090 24GB | | optimizer_type | PagedLion8bit | | optimizer_args | weight_decay=0.01, betas=.9,.999 | | block_lr | 0,1e-08,1e-08,1e-08,1e-08,1e-07,1e-07,1e-07,1e-06,1e-06,1e-05,1e-05,1e-05,1e-06,1e-06,1e-07,1e-07,1e-07,1e-08,1e-08,1e-08,1e-08,0 | | lr_scheduler | cosine | | lr_warmup_steps | 100 | | gradient_checkpointing| | | mixed_precision | bf16 | | full_bf16 | | | max_token_length | 225 | | min_snr_gamma | 5 | | noise_offset | 0.0357 | | max_train_epochs | 3 | | batch_size | 12 | | enable_bucket | true | | resolution | [1024,1024] | - 2023年8月11日 前回のnijijourneyの画像を混ぜて12000枚で学習しました。 オプティマイザはLion(4e-06, cosine, weight_decay=0.015, betas=.9,.999)でした。 - 2023年8月7日 nijijourneyの画像4500枚ぐらいでフルファインチューニングしました。fp16で壊れないVAEに取り替えました。 学習率1e-07が低すぎたようで絵があまり変化しませんでした。次回は学習率を上げようと思います。 - 2023年8月1日 nijijourneyの画像100枚ぐらいでLoRAファインチューニングなどをしました。 # モデルの説明 アニメ調に寄せた「[SDXL(stable-diffusion-xl-base-1.0)](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)」モデルです。内容は「[niji-v5](https://huggingface.co/datasets/p1atdev/niji-v5)」データセットでLoRAファインチューニングしてマージしたモデルです。 # 使用例 [niji-diffusion-xl-base-1.0.safetensors](https://huggingface.co/inu-ai/niji-diffusion-xl-base-1.0/resolve/main/niji-diffusion-xl-base-1.0.safetensors)と[stable-diffusion-webui](https://github.com/AUTOMATIC1111/stable-diffusion-webui)で以下のパラメータで画像生成します。 ※合計13000枚ぐらい~100枚~しか学習していないのでPromptに複数書くとnijiの絵じゃなくなります。Negative promptに複数書くのは大丈夫っぽいです。 Prompt: ``` 1girl, town ``` Negative prompt: ``` worst quality, low quality, medium quality, deleted, lowres, comic, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, jpeg artifacts, signature, watermark, username, blurry ``` PNG info: ``` Steps: 28, Sampler: Euler a, CFG scale: 7, Seed: 1, Size: 1536x1024, Model hash: 791d0c791e, Model: sd_xl_niji_1.0, Clip skip: 2, ENSD: 31337, Token merging ratio: 0.5, Eta: 0.67, Version: v1.5.1 ``` ![thumbnail](images/thumbnail.jpg) Prompt: ``` 1girl ``` ![thumbnail](images/1girl.jpg) Prompt: ``` 1girl, tokyo ``` ![thumbnail](images/1girl,%20tokyo.jpg) Prompt: ``` 1girl, steampunk ``` ![thumbnail](images/1girl,%20steampunk.jpg) Prompt: ``` 1girl, fantasy ``` ![thumbnail](images/1girl,%20fantasy.jpg) # モデルの作り方 1. 「[かんたん☆コピー機学習法(きっと初級編)](https://note.com/2vxpswa7/n/n2d04527bf0bc)」を参考に、「[ぼかし(blur)](https://civitai.com/models/120624)」のLoRA DreamBoothをして、そのLoRAモデルをSDXLモデルにマイナスでマージします。 2. 1で作ったモデルに、niji-v5から背景や髪が詳細に描かれている絵などを100枚選びLoRAファインチューニングして、そのLoRAモデルをSDXLモデルにマージします。 # 今後のモデルの改善 LoRAモデルとして配布できるようにしたいです。 というのは、512dim(rank)で学習したらLoRAモデルが3GBのファイルサイズになってしまったため、今回はSDXLモデルにマージしています。 # 感想 うまく調整できず何度もやり直して大変でした。あとで作り方を動画にしたいです。 # 謝辞 モデル、学習データや学習ツールを作成および配布してくださった方々に心から感謝申し上げます。 # ライブラリ - [sd-scripts](https://github.com/kohya-ss/sd-scripts/tree/sdxl) 4072f723c12822e2fa1b2e076cc1f90b8f4e30c9 - [bitsandbytes](https://github.com/jllllll/bitsandbytes-windows-webui) 0.39.1 - Pytorch 2.0.0+cu117 - xformers 0.0.19 # ライセンス - [CreativeML Open RAIL++-M License](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/blob/main/LICENSE.md)