【生成AI】生成AIで自分用のキャラを生成して遊びたい その4【LoRA】
前回の続き。
8日目
プロンプトを色々試す前に、一つ思い立ってLoRAの再学習をしてみた。
今回の焦点は1つ。
タグ付けについて。
タグについて調べても調べてもよく分からんので、実際に使っている人の使い方を真似て使ってみた。
手順は以下。
1.WebUIでタグ付けして、BooruDatasetTagManagerで編集(以前と一緒)
2.BooruDatasetTagManagerで作業する際、消すのは「変えたくない特徴」のみ。
※例えばツインテールや前髪パッツン、着せ替えせず固定にしたい場合は服関連のキーワードを消す。
→この作業によって、画像にある特徴かつタグにないワードはトリガーワードへ集約される
3.変えたくない特徴だけ消したらそのまま学習。(Simple backgroundなどはいじらない)
これによって、トリガーワードを指定するとかなりの高精度でキャラを再現できるようになった。
前回のカフェを、プロンプトそのまま、LoRAだけ変更して複数枚出したモノ。
前回のやつ。
今回のやつ
解像度変えたの忘れたけどそれは置いておいて。
後者のやつの顔や服装がかなり固定されているのが分かる。
LoRAに引っ張られるせいか、少しディテールや表情が硬くなる感はあるが、そこは指定でどうにかできそうなのでこれはこれで良しとする。
初日に出力したやつに比べて大分進歩したのではないでしょうか。
初日はこれよ、コレ。

今はこれ

ちなみに学習元はこれ

大分進歩しました。
では、この状態でプロンプトについて検証する。
今回は品質系(光源やシェーディングも含めて)のタグについて、どのような影響があるか、どのような差があるか、を、プロンプトでタグを付けた時と、付かなかった時。
数の多い少ないでどの程度差が出るのか比べてみた。
ちなみに試した品質系のタグは以下。
付け外ししたタグ
detailed skin, detailed face, detailed eyes, extremely beautiful face,
vibrant colors, cinematic lighting, clean lines, cel shading,
high resolution, 8k, ultra-detailed, intricate details, professional photography, HDR
全部乗せVer
上記タグ削除Ver
他にもパターンを試そうと思ったけど、思いの他変わらなかったのでここで終わり。
よくわからなくなってきたけど、なにをしているのかすら分からなくなってきたのでとりあえずは今日はこの辺で。
LoRA調整で時間を食ってしまったので、プロンプト調整は明日に回します。
目標は「有料記事1000円でAIのコツをお教えします!」みたいな記事のnoteが貼ってる画像を再現できるレベル。
9日目
ではプロンプトの勉強を。
とりあえずお題を作って、その過程で問題点を洗い出す方式に。
お題は先日のアサルトライフルをそのままに、
「女の子が夜の街でゾンビに囲まれた状況。アサルトライフルを手に、ゾンビ包囲を突破しようとするアクションシーン」
今回はタグを入れる意図も含めて勉強したかったので、ChatGPTに頼んで意図や改善策を提示してもらいながら修正of修正で組んでみた。
プロンプト:
the main character is a living human girl, not undead or infected:1.6, 1girl, anime style, twintails, dark brown hair, yellow eyes, wearing a black cat beanie with pins, purple striped hoodie, light pink pleated skirt, star-pattern thighhighs, pink sneakers, slim body, brave but terrified expression showing fear and determination, kneeling on wet asphalt while aiming an M4A1 carbine rifle,
(soft, weak muzzle flash gently lighting her face and weapon:1.1),
(she is surrounded by zombies keeping their distance, clearly separate from her:1.4),
(zombies are human-shaped, realistic decay, pale bluish-gray skin, empty glowing eyes, bloodstains, torn clothing:1.3),
(each zombie wearing different torn clothes — business suit, hoodie, student uniform, jacket — all dirty and aged:1.2),
(zombies slowly approaching, quiet but menacing presence, tension rising:1.3),
(girl in foreground, zombies in midground, ruined modern Japanese city street at night, broken glass, debris, wet ground reflecting neon lights:1.1),
(cinematic lighting with deep contrast between blue moonlight and faint orange streetlight reflections:1.3),
(realistic atmosphere, dense fog near ground, high detail in shadows, cinematic tone mapping:1.3),
depth of field, dramatic composition, emotionally intense storytelling, cel-shaded anime realism, ultra-detailed, 8k, strong horror mood, focus on her as the protagonist:1.4ネガティブプロンプト:
(low quality, worst quality:1.4), lowres, blurry, deformed, bad anatomy, extra limbs, missing fingers, malformed, distorted face, duplicate, clone, zombie girl, undead girl, infected girl, monster girl, glowing eyes on girl, pale skin on girl, scars on girl, damaged skin on girl, same outfit repetition, missing zombies, empty scene, incorrect gun design, broken weapon, overexposed, oversaturated, too strong muzzle flash, harsh lighting, flat contrast, 3d render, realistic human, photo style, sketch, cartoonish, text, logo, signature, watermark, jpeg artifacts, nsfw, grainy texture
クッソ長い…。(LoRAの部分は削除してあります。参考にする人はいないと思うけど、LoRA使う場合は適宜入れてください)
で、これを使って出てきたのがこれ。
うーん、ダメ。なぜかゾンビになる。(ゾンビにしない指定は入っているのにもかかわらず)
逆に3枚目とかは「お前もゾンビにならないか?」みたいなストーリー性があるような感じで良いけどそういうことではない!
とはいえ、プロンプトのヒントをいくつか提示しながら修正してくれたので、それを踏まえてシンプルに削り取って分かりやすく組み替えてみる。
……が。
その後も色々試してみるけど、上手くいかないのでとりあえず中断。どうも指示が多くなると混乱して取っ散らかる模様。私も混乱してるし、機械ならなおさらでしょう。
具体的には75単語ごとに強弱の設定がリセットされ、区切りごとに後者グループが強くなるらしい。
複雑な指定が必須なプロンプト以外は75単語以内を目安に組んだほうがよさげ。
なんとなく複数人物指定のコツと文章指定のやり方が分かったので一旦これでヨシとしよう。お題を完遂するのはまた別の機会に再挑戦してみる。
それよりも気になった点の修正。
・全体的にコントラストが強すぎる(強い色が多く、全体的にハッキリ明るい)。
・やっぱりクオリティが低い気がする。
明暗(ライティング)の癖などはチェックポイントの影響も大きいらしいので、チェックポイントを変更して変化を確認。
前回も行った品質関連タグの調整も平行して行う。
なぜ品質タグを調整するかというと、「タグが多すぎると他の指示が通りづらくなる」といった悪影響が起きることが分かったので、
どういう品質タグを付けると綺麗になるのか? ではなく、付けなくていい品質タグはできるだけ外したい、という観点でのチェックに変更する。
ということで、出来るだけ品質タグを押さえつつ、チェックポイントとプロンプトを調整してシンプル構文を目指していく。
プロンプトは前回のカフェのやつを流用。ライティングもがっつり指定しているので。
ネガティブプロンプトも前回同様それなりに指定。
チェックポイントは背景が割ときれいに描写してくれるwaiIllustriousSDXL_v150に変更。
1個目→品質タグあり。(前回同様)
2個目→品質関連タグ削除。
やっぱり品質タグ盛り盛りでも全削除でもあんまり影響が無い。
じゃあネガティブプロンプトは…?ということで、品質関連タグが無い状態でネガティブも削除して試してみると、こちらは影響が強く出る模様。
では、ネガティブプロンプトを外して高品質タグを入れると?
…結果はあまり変わらなかった。ほぼほぼ同じのいまいちクオリティ(画像省略)。
つまりまとめると、
高品質タグをプロンプトに入れるより、低品質タグをネガティブプロンプトに入れるほうがハッキリ効果が現れる。
ということに。
とはいえ、bad handsなどの手足がミュータント化するのを防止するタグも外しているのにそれなりに人体が整っているので、
それを踏まえてネガティブプロンプトを最小限に抑えるようテストして調整してみた。
low quality, worst quality, bad anatomyのみ。(低品質、最低品質、人体構造破綻)
うーん、少しだけ上がったけどまだ足りない。
では次。
low quality, worst quality, bad anatomyではなく、
low resolution, JPEG artifacts(低解像度、jpg変換時のような劣化)だけにして再度テスト。
そんなに変わらない。
なにが効いていたんだろうか…。
その後、
out of focus, ugly, error, blurry, bokeh辺りを試したけど少し変わる程度。
色々試してみて、「そういえば強度指定していなかったな」と以下のタグだけで試す。
(low quality, worst quality:1.4)
結果は良好。明確に品質が上がった。
じゃあ強度の数字を上げれば簡単にクオリティあがるんじゃね? ということで色々試してみる。
2→3→10の順。
10はまあ論外として、1.4に比べて変化しているのが分かる。
若干効きすぎな感じの印象も受けるので、1.4~2の間ぐらいがちょうど良いのかもしれない。
では、これをベースに、除外していた他のタグも外したり付けたりして試してみる。
と、試している途中で気付く。
プロンプトにanime styleが入りっぱなしだった。
これを削除するとかなり変化するのでは…? と思って外すとだいぶ変わった。
anime style有り→無し。
タグ一つでも結構変化するので、やっぱり複雑にするとわけわからん状態になりやすいという教訓。
足や体は安定しているものの、やはり指が崩れることが多いので、手関連で効きの良いネガティブプロンプトを探して付ける。
候補は以下。
mutated hands, bad hands, poorly drawn hands, malformed hands
試した結果、特にどれが良いということもなかった。
たくさん入れても崩れる時は崩れるので、1個だけ入れとくのが良いかも。
意味合い的にはmalformed handsが幅広く他を邪魔せずカバーしそうな雰囲気だけど、これはモデルやチェックポイント、出力したいシチュエーションに依るので、試すしかない。
そしてあーでもないこーでもないとネガティブプロンプトをいじってふと気づく。
「もしかして、素材が3D素材だから、3Dレンダリングしてしまって絵柄が固定されているのでは?」
という小学生でも結び付けられそうな関連をさも名探偵の閃きみたいに思い浮かべてみた。
で。
色々調べて、ネガティブプロンプトに以下を入れる。
3D render, 3D model
これだった。絵柄がまるっと変わった。
このタグをベースにプロンプト側も色々いじってみる…のは明日に回そう。
ということで、ネガティブプロンプトまとめ。
クオリティに関しては下記の強調2タグだけで良さげ。
(low quality, worst quality:1.4)
で、適宜人体や手足、目的とする絵柄や出したくない特徴を追加する。
→私の場合は3Dレンダリング関係。
今日はこの辺で就寝。
明日はネガティブじゃないプロンプト側(明確に指定して呼ぶ場合はなんていうんだろう。ポジティブプロンプト?)を調整する、予定。
10日目
前回はネガティブの品質指定が強力であることが分かったので、今回はそれを踏まえたうえで、
ネガティブ品質タグを効かせたうえでさらに品質を向上させるタグ、を模索してく。
で。
色々試した結果、文の冒頭に以下のタグを追加するのが一番効いた。
(masterpiece:1.4)
マスターピースの強調。
ベストクオリティとかも併せてみたけど、現在の環境ではこれが一番効くっぽい。
ここら辺は他のタグが効くモデルもあると思うし、全然効かないタグも出てくると思うので、要検証だと思われる。
当然、前回のネガティブ品質タグを外すと下がるので、汎用的な品質タグはこの組み合わせが(今環境では)鉄板になる。
プロンプト:
(masterpiece:1.4)ネガティブ:
(low quality, worst quality:1.4)
実質タグが3つだけ。大分整理整頓できたのではないでしょうか。
上記を付けつつ、カフェでゆったりプロンプトを最小限構成で出力。
プロンプト:
(masterpiece:1.4),
<lora指定:0.6>, トリガータグ, twintails, cat Beanie, striped hoodie, pleats skirt, star print thighhighs,
smile, sitting at a cafe table, warm lighting, (dim light atmosphere), cozy atmosphereネガティブ:
(low quality:1.4, worst quality:1.4), bad anatomy, low resolution, blurry, malformed hands, 3D render, 3D model,
((striped thighhighs))※縞ニーソ除外は縞々服に引っ張られて縞ニーソ化しやすかったので明示。
ツインテールは外されやすかったので明示。
服の色についてはLoRAに引っ張られやすくなるので色ではなく服の種類指定のみでテスト。
そこそこシンプルになった。
ここで確認のためにLoRAを外して一度出力する。
すごいAI絵感。これよ。
LoRA版はやっぱりなにか足を引っ張っているのが分かる。
と、ここでまたも(小学生並の)閃き。
LoRAで出力した画像をまとめてTaggerでタグ付けしたら、なにか変なタグがついてるかどうかわかるのでは?
が…っ…だめ…っ。全然わからん。
というかシチュエーションや品質系のタグはTaggerでは見えないのか、やり方が悪いのか。
ということで3Dレンダ系のように、なにかの固定的なタグがあるのかもしれないと試行錯誤してみる。
anime styleを指定すると柔らかくなるものの、そこまで…という感じ。
なのでLoRAタグ自体の影響度を少し下げる調整をする。
0.1だとAI絵っぽくなるけど、LoRAいらなくね?っていう感じに。
0.1のやつ。
0.4のやつ。
0.5のやつ。
0.5からキャラが硬くなって背景にも影響が分かりやすく出始めてる(なんか猫がめっちゃブサイク)
そこから調整of調整でこんがらがってきたけど、結局3D Render関係を消してしまうとLoRAを入れてる意味がないほど原型が無くなるので、
LoRA:0.4かつ3D Render, 3D modelをネガティブから外す、という調整に。
そして12枚出力。
絵は綺麗になったけど、人物がやはりブレる。
0.6の時のntrMIXIllustriousXL_v40の方が人物はかなり似てるけど、背景や指示を重ねるとクオリティが下がる。
ここら辺がまだうまく調整できそうなので、明日はそこを頑張ってみる。
























