wuerstchen

Last-modified: 2023-11-02 (木) 19:21:41

注:本ページは執筆中のメモ段階です。

wuerstchenについて

概要

  • wuerstchenは、ノイズスケジューラ(≒sampler)の1つに相当。
    • diffusersに実装されている「DDPMWuerstchenScheduler」が該当するようだ。
  • sd-scriptsではこのノイズスケジューラを使用した学習方法を提案している。
    • 従来のsd-scriptsでは「DDPMScheduler」を使用している。
      これが変わるとなると、学習結果にも大きな影響を与えるだろう。
  • Wuerstchenの実装を試みるアプリは他にもあるようだ(詳細は未調査)。

arXiv原文

これかな?
https://arxiv.org/abs/2306.00637

語源

「würstchen」はドイツ語で小さいソーセージの意味。
wuerstchenは、üをウムラウト(上の点々)を使わない場合の表示。
・・・なぜにソーセージなん?

sd-scriptsにおけるwuerstchenの実装

wuerstchen学習環境

  • '23/10月時点ではwuerstchenブランチ限定で
    「DDPMWuerstchenScheduler」ベースで学習に使用できる。
  • 従来のコードとの違いは、こちらを参照。
  • おそらくは、「wuerstchen/wuerstchen_train.py」をaccelerate launchすれば学習実行できると考えられる・・・はず。
    • ただし、現状は使えないオプションが多い(後述kohya氏のコメント欄参照)ので、実用域には達していない。

kohya氏のコメント。X(旧Twitter)の情報

2023年10月6日

ちなみにWuerstchenの学習はwuerstchenブランチで既に可能ですのでよろしければお試しください。sdxl_train.pyとほぼ同様に使えますが、いくつかのオプションは無視されます(latents/text encoderのキャッシュ、noise関連など)。またgradient checkpointingは使えません。
https://twitter.com/kohya_tech/status/1710217040815124797?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Etweet

2023年10月6日

Wuerstchen、イラスト1,000枚(元絵400枚+augmentation)で16 epoch、40分くらいfine tuningしてみた。プロンプトはタグ列挙のパターン。わりと素直にスタイルが変わるのでfine tuningすれば化けるかもしれない……。
https://twitter.com/kohya_tech/status/1710138944225161679?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Etweet