
[調æ»] Smile Test: Elysium_Anime_V3 åé¡ã調ã¹ã #2
ååã®æ€èšã®äžã§ãæç€ºãããŠããåçŸãã¿ãŒã³ã«ã€ããŠã確èªã§ããŠããªãã£ãã®ã§ã远å 確èªãè¡ãã
â»ãææããããšãããããŸãïŒ
è¶ ã¯ã€ãã¯ãŸãšã
ïŒïŒæç€ºããŠããã£ãæé ã§ãsmileãã¹ãåé¡ã¯åçŸãã
ãã»ããªãã¡ãAdd Difference ã§ãTextEncoder ã¯å£ããã
ïŒïŒããŒãžå¯Ÿè±¡ã¯ TextEncoder, U-Net, AutoEncoder ã®å
šãŠãå«ãã§ãã
ãïŒããŒãžåŠçå
容ã«ã€ããŠåéãããŠããïŒïŒ
ïŒïŒAdd difference ãã¢ãã«ã«æªåœ±é¿ãåãŒãäºã¯ç¥ãããŠãããã
ã1tokenç®ã«åœ±é¿ãåºãããã¢ãã«ã¯åãããšãã圢ã§ããããåãããã«å£ããã®ãä»åã®äŸïŒ
ïŒïŒååé¡ã®æ€åºã»å¯Ÿå¿æ¹æ³ã¯ãååºã®éã
ã§ã¯ãæ¬é¡ã
åçŸãã¿ãŒã³
åçŸæ¹æ³ããŸãšãããšã
SD15 ãš WD14 ãš trin1.4 ã§ãAdd Diff 1.0 (åºåã test_01 ãšãã)
A:derrida_finalãB:test_01 ã§ Weighted sum 0.1 (åºåã test_02 ãšãã)
test_02 ã«ãŠç»åçæãããšãããã³ããã®1token ç®ãé£ã°ãçŸè±¡ãçºçããã
確èªå¯Ÿè±¡
æ¢åã¢ãã« (以äžãå ã¢ãã«ãšèšèŒ)
確èªå¯Ÿè±¡ã®æ¢åã¢ãã«ã¯ã以äžã®ïŒçš®é¡ã
SD15: Stable Diffusion 1.5
WD13: Waifu Diffusion 1.3
trin1.4: trinart_characters_it4_v1
DERRIDA:Â derrida_final

ããŒãžã¢ãã«
確èªå¯Ÿè±¡ã®ããŒãžã¢ãã«ã¯ä»¥äžã®ïŒçš®é¡ïŒtest_01ãtest_02)
test_01 = SD15 + WD13 + TRI, 1.0
test_02 = DERRIDA + test_O1, 0.1
æé 1. å ã¢ãã«ãã§ãã¯
å ã¢ãã« 4 ã€ã«ã€ããŠãsmile ãã¹ããè¡ããç Žæãç¡ãããšã確èªããã
çææ å ±ã¯ä»¥äžã®éããClip Skip:0ãEta:0ãVAE: None
smile, girl, sleepy
Steps: 40, Sampler: Euler a, CFG scale: 7.5, Seed: 1, Face restoration: CodeFormer, Size: 512x512, Batch size: 4, Batch pos: 0
ãã¹ãŠç¬é¡ãèŠãããã
æé 2. ããŒãžã¢ãã«ãã§ãã¯
次ã«ããŒãžããã¢ãã«ã§ã®åçŸã確èªããã
ããŒãžåŠç (Merge Board)
ãŸãã¯ããŒãžåŠçã
ããŒãžã Merge Board ã®ã¬ã·ãã§æžããšã以äžã®éãã
# Recipe
test_O1 = __SD15__ + __WD13__ + __TRI__, 1.0
test_O2 = __DERRIDA__ + __O1__, 0.1
â»ã€ãã§ã«ãã°èŠã€ããããä¿®æ£ãããã
æé 2-1. smileãã¹ã
ã§ã¯ãsmile ãã¹ããè¡ãã
äŸã«ãã£ãŠãæ¯èŒå¯Ÿè±¡ã¯ SD15ã
èå³å¯Ÿè±¡ã¯ test_02 ã®ã¿ã ããã€ãã§ãªã®ã§ test_01 ãå«ããã
ãŸããtest_02 ãšã®æ¯èŒã®ãããtest_02 ã®äžã« derrida ã®åºåè¡ãæ¿å
¥ããŠããã

test_01 ã«ãããŠã¯ãé¡ããŸãšãã«çæãããŠããªãã
derrida ãšããŒãžãã test_02 ã«ãããŠè¥å¹²é¡ã埩掻ããŠããããç¬é¡ã¯èŠãããªãã
ãã®æç¹ã§ãtest_01 ã«ãããŠã¢ãã«ã«é倧ãªåœ±é¿ãåºãŠããããšã¯ç¢ºå®ããã
æé 2-2. smileãã¹ã (seed 5ïœ12)
念ã®ãããåèšå®ã§ããã« seed 5ïœ12 ã確èªããã

seed: 5ïœ12
test_01 ã®åºåã¯ãå€ãããå£ããŠããã
test_02 ã®åºåã§ã¯ãç¬é¡ã¯èŠãããªã
å€åã¯èŠãããªãã
ãã®äºãããtest_01 ã®ã¢ãã«ãå£ããŠããå¯èœæ§ãé«ãããšãããã£ãã
test_02 ã®åºåãåæ§ã«å£ããŠããããderrida ã§æ£åžžã«åºåãããŠããããšãããäž»ãªåå 㯠test_01 ã®æç¹ã§çºçããŠããå¯èœæ§ãé«ãã
æé 2-3. TextEncoder 亀æãsmileãã¹ã
ã§ã¯ã次ã«ãCLIPTextEncoder ã倿ŽããŠãã¹ããè¡ãã
倿޿é ã¯åå·ã®éãã
ä»åã `openai/clip-vit-large-patch14-336` ã«å
¥ãæ¿ããã
ãŸãããªã¹ãã« Elysium_Anime_V3 ãæ¯èŒå¯Ÿè±¡ã«å ããŠãCLIP倿Žã«ããçç¶ã®æ¹åãæ£ããæ©èœããŠããäºãåæã«ç¢ºèªãã€ã€ãtest_01/test_02 ã®å€åãèŠãã
倿Žå

倿ŽåŸ

Elysiumã®çµæãããCLIPTextEncoder ã®å€æŽã«ããçç¶ãæ¹åããããšããææ³ã¯æ©èœããŠããã
test_02 ã®çµæã«ãããŠãåæ§ã«ãçç¶ã®æ¹åãèŠãããããã®äºãããtest_02 ã® CLIPTextEncoder ãç ŽæããŠããäºãåãã£ãã
åçŸã®æ€èšŒïŒåçŸãã
æç€ºãããåçŸæé ã§ãç¬é¡ã衚瀺ãããªãããšããçŸè±¡ã¯åçŸããã
ãããŒãžã®çµã¿åããã«ãã£ãŠãæ°ãã« "å£ãã" ã¢ãã«ãçæã§ãããäºãããã£ãã
ãã ããtest_01 㯠CLIPTextEncoder ã®å
¥ãæ¿ãã«ãã£ãŠãæ¹åããªããããäžæŠã«ãå£ããã®ã¯ CLIPTextEncoder ã®ã¿ããšã¯èšããªãã
ãšã¯ãããååå·ã§ã®èª¬ïŒãåå åè£1: åŠç¿ã¹ã¯ãªããã®ãã¹ã§ TextEncoder ãç Žæãã§ã¯ãªãæ¹æ³ã§çŸè±¡ãåçŸããããšãããã£ãã
åå ã®æšæž¬: åå·ãåå åè£2: ããŒãžã¹ã¯ãªããã§ TextEncoder ãç Žæãã®å¯èœæ§ãé«ãŸã£ãã
ãããŸã§ã§ãçŸè¡ã®ã¹ã¯ãªããã®çµã¿åããã§åçŸã§ããäºãåãã£ããããéå»ã®äºè±¡ã®è² åµã®ã¿ã§ã¯ãªããçŸåšãåçç£ããŠããŸãå¯èœæ§ãããäºã¯åãã£ãã
åå åè£2ïŒèª¿æ»: ã¹ã¯ãªããåŠçã®åãã§ãã¯
äžèšãããçŸåšã®çè§£ã§ãããããŒãžã察象ãšããã®ã¯ U-Net éšããééã£ãŠãå¯èœæ§ãããã
â»ã ãã ãããã®è¬ãè§£æãããããæã
調æ»éã¯ã¢ããŸã³ã®å¥¥å°ãžãšåãã£ããã¿ãããªããªã«ãªã£ãŠããããã
åéãçºèŠïŒAUTOã®ããŒãžå¯Ÿè±¡ã¯ãTextEncoder, U-Net, AutoEncoder ã®å šãŠãå«ã
ã³ãŒãå確èªããã
äžèšã®çè§£ãééã£ãŠãããïŒå®å
šã«èªã¿éãïŒ
AUTO1111ãããã®åæãšãªã£ãxx ã®ããŒãžã¹ã¯ãªããããMerge Block Weighted ã§ã®åŠçã§ããããŒãžå¯Ÿè±¡ã¯ TextEncoder, U-Net, AutoEncoder ã®å
šãŠãå«ãã§ããã
å¯Ÿçæ¡ã®æ€èš
ã§ã¯ãããŒãžåŠçåŽãã©ã®ããã«å€æŽãã¹ãããæ€èšããã
ïŒããŒã«äœè
ãšããŠã®æèŠïŒTextEncoder ã VAE ãããŒãžããããšã¯å
ã
ã®æå³ããã¯å€ããŠããããããŸã§ã®ããŒãžãšéããåºããããããªãããããŒã«ãšããŠã¯ããããå¶åŸ¡ã§ãããªãã·ã§ã³ããã£ãã»ãã䜿ãããããïŒ
æé 2-4 U-Net ã®ã¿ããŒãžã®è©Šäœãšãsmile ãã¹ã
ã§ã¯ãU-Net ã®ã¿ãããŒãžããããã«ããã°åé¡ã解決ããã®ãïŒ
ããã§ããŒãžåŠçã倿ŽããããŒãžã®å¯Ÿè±¡ãšããŠÂ U-Net ã®ã¿ãšããããã«å€æŽããŠãæé 2-1 ã®ãã¹ããå床è¡ã£ãã
â»ããã§èšããU-Net ã®ã¿ãã®çµã蟌ã¿ã¯ãäžèšã®ã³ãŒã倿Žã«ããè¡ã£ãã
â»ä¿®æ£å
容ã¯ãã£ãããšä»¥äžã®éããx3ç®æ
# if 'model' in key:
if 'model' in key and 'model.diffusion_model.' in key:
"model" ã®ã¿ã§å¯Ÿè±¡ãçµã£ãŠããéšåããããã« "model.diffusion_model." ã§çµãããã«ããã
ã§ã¯ãçµæãèŠãŠã¿ãã

äŸç¶ãšã㊠test_01-UNET ã®åºåã¯äžå®å®åããŠããã
äžæ¹ã§ãtest_02-UNET ã§ã¯ç¬é¡ãèŠãããŠãããCLIPTextEncoder ã®ç Žæã¯ç¡ããšèããããã
ããã«ãtest_02 ãš test_02-UNET ã®åºåçµæãæ¯èŒããã


ç·ããŠãå·®ç°ã¯å€§ãããªãã
ããã VAE ã®éãã«ãããã®ã確èªãããããå
±éã«å€éšãã VAE ãé©çšããŠæ¯èŒãè¡ãã䜿çšãã VAE ã¯ã
"autoencoder_fix_kl-f8-trinart_characters"ã


ç¹ã«å€åã¯ãªãããã
æé 2-4 ã®å¹æãŸãšã
以äžã®çµæããã以äžã®æšæž¬ãåŸãã
ïŒïŒtest_01, test_01(CLIP倿Ž) åã³ test_01-UNET ã®çµæãããtest_01 ã«ãããã¢ãã«ç Žç¶»ïŒïŒïŒã¯ãCLIPTextEncoder ãããŒãžç¯å²ã«å«ãŸãããåŠãã«ãããããçºçããŠããã
ïŒïŒtest_02, test_02(CLIP倿Ž) åã³ test_02-UNET ã®çµæãããU-Net only ã®ããŒãžã§ç¬é¡ã埩掻ããŠãããããã test_02(CLIP倿Ž) ã®çµæã«è¿ãäºã確èªããããã®äºãããU-Netã®ã¿ã®ããŒãžã«ã¯äžå®ã®å¹æãããåŸãã
ïŒïŒtest_02 åã³ test_02-UNET ã®åºåã«ã€ããŠãVAE ã®åœ±é¿ãå質åããããã«å€éš VAE ãé©çšããŠçµæãæ¯èŒããããç¹ã«å€åã¯èŠãããªãã£ãã
ãã®äºãããä»åã®æ€èšŒäžã®åºåã«ãããŠã¯ãVAE ã¯ããŸã圱é¿ãåãŒããŠããªããšæšæž¬ããã
以äžãããCLIPéšã®ç Žæã¯ãCLIP å士ã®ããŒãžã®çµæãçºçããŠãããäºãåãã£ãã
æé 2-5. ã¢ãã«å éšæ§é ã®å¯èŠåææ³ã®äœæ
ã¢ãã«å
ã® tensor éšã®å€ããçžå¯Ÿå€ãèšç®ã衚瀺ãã Extension ã®è©Šäœãè¡ã£ãã
èšç®å¯Ÿè±¡ã¯ãTextEncoderéš/U-Net/VAE éšãããããåææ³ã§ U-Net åéšãèšç®ããŠããã
ïŒâ»èšç®æ¹æ³èªäœã詊äœãªã®ã§ãèšç®æ¹æ³ãèšç®çµæèªèº«ã調æ»ã®å¯Ÿè±¡ïŒ
衚瀺ãããŠããæ°åã¯ãåéšåã® tensor ã®çµ¶å¯Ÿå€ãã¢ãã«Aããã©ããããå€ãã£ãŠãããã®æ¯çã 10000 åãããã®ãã€ãŸã 1 = 0.0001 % ã®å€åé


å·Šããã察象ã®åã¢ãã«
äžã Input blockãäžè¡ã Output block
ã¬ãŒããŒã¯æèšãšåãé 眮ã«ãªã£ãŠããã0 æã 00 ã«ãªã£ãŠãã
â»æ³šæâ» SD15 ããã®çžå¯Ÿå€ãªã®ã§ãOUT00/OUT02 ãçªåºããŠãããããšãã£ãŠããããå¹ãïŒããšãã話ã§ã¯ãªãã
ãŸããä»åã®æ€èšŒå¯Ÿè±¡ãšãªã£ãå ã¢ãã«ãã¡ã«ã€ããŠãåææ³ã§å¯èŠåãè¡ã£ãã

å·ŠãããSD14, WD13, 8528d-fix, Elysium_Anime_V3, derrida, trin1.4
8528d-fix ãš Elysium_Anime_V3 ã§ãCLIP ãš VAE ã®å€åéãæ€åºïŒ

å·ŠãããSD14, WD13, 8528d-fix, Elysium_Anime_V3, derrida, trin1.4
8528d-fixãElysium_Anime_V3 ã§ã¯ãCLIP/VAE ã«ãŠå€åéãæ€åºã§ããã
ãã ãäžèšã® test_01ãtest_02 ã®ç¢ºèªçµæã§ã¯æ€åºã§ããŠããªãã®ã§ãæ€åºæ¹æ³ãšããŠå®å®ããŠãããšã¯èšããªããããã«ãå€åéã§ãããªãã®ã§ãæ°åã倧ããåºãŠã CLIPãç Žç¶»ããªãå¯èœæ§ãæ®ãã
ä»®ã«ä»®ãéããŠåŒ·åŒãããšãAdd Difference ã«ãã圱é¿éïŒã®äžéšïŒãæ°å€ããèŠãããšãã§ããã®ã§ã¯ãªããã8528d-fix ã§ã® VAEåœ±é¿ 869 ãšããã®ã倧ããã®ãäžæã ããå°ãªããšãããã ã Add Difference ãåããŠããäºã¯æšæž¬ã§ããã
ãããã«
é·ã
ãšèªãã§ããã ãããããšãããããŸãã
ããŸãã¡çµè«ã«ã¯è³ã£ãŠããŸããããŸã 沌ã®åã°éã®åã°ã§ãã
ãŸã ãŸã äžåŠã»å匷äžã®èº«ã§ééãã ããã§ããããããããšãææããã ããã°å¹žãã§ãã
䜿çšããŒã«é¡
Merge board:Â https://github.com/bbc-mc/sdweb-merge-board
CLIPTextEncoderå
¥ãæ¿ãïŒãœãŒã¹ã³ãŒãçŽæ¥å€æŽ
U-Netã®ã¿ããŒãžïŒãœãŒã¹ã³ãŒãçŽæ¥å€æŽ
å
éšæ§é å¯èŠåïŒèªäœExtension