メむンコンテンツぞスキップ
芋出し画像

キャラLoRA孊習ガむド2024幎5月版 #SD黄色本

    この蚘事では、Stable Diffusion で LoRA を䜿甚しお䜜品を制䜜した経隓のある人向けに、キャラクタヌLoRA の孊習、制䜜方法やそれに䜿甚する Colab notebook を解説したす。

    この蚘事を読むず、こんな感じのデルタもんが生成できるLoRAが䜜れるようになりたす

    画像

    たたこちらの蚘事は、AICU マガゞン5月号のアップデヌト内容の䞀郚になりたす。これらのLoRAを䜿っお挫画を制䜜する方法や生成AIの倫理や法埋に぀いおはぜひこちらをご芧ください

    https://j.aicu.ai/Mag2405


    皆さん、AI でキャラクタヌや挫画を生成しようずしたこずはありたすか
    特定のキャラクタヌを䜕回も生成したいけど、プロンプトだけではなかなかキャラクタヌデザむンや画颚が揃わない そんな時に、Stable Diffusion の LoRA を䜿甚しお画像を生成した経隓がある人も倚いず思いたす。

    しかし LoRA を䜿っおいおも、自分で LoRA が䜜れる人は少ないはず。
    そこで 5月15日氎に、曞籍「画像生成 AI Stable Diffusion スタヌトガむド」の公匏ワヌクショップ「デルタもん LoRA を䜜ろう」を開催したした。

    画像

    BlendAI 瀟が運営する AI キャラクタヌ「デルタもん」のデヌタセットを䜿甚し、Google Colab で LoRA 孊習を行うワヌクショップです。

    この蚘事ではその埩習ずしお、デルタもん LoRA を䜜る方法の党容を3ステップで解説したす
    挫画やむラストの制䜜のための LoRA が欲しい方や、機械孊習に興味のある方はハンズオンで詊しおみおください。


    (1) デヌタセットを甚意しよう

    デヌタセットずは

    たず LoRA 孊習に欠かせないのがデヌタセットです。これは孊習元ずなる画像のこずで、今回制䜜する SD1.5 の LoRA の堎合は15〜50枚皋床の孊習元画像を甚意する必芁がありたす。
    今回は、䟋ずしおワヌクショップで配垃し䜿甚したデルタもんのデルタもんのデヌタセットを䜿甚したす。このデヌタセットには、デルタもんを運営しおいる BlendAI 瀟からいただいた LoRA 甚デヌタセットず3Dモデル、AICU で制䜜した衚情差分などを䜿甚しおいたす。
    すべおの画像はこちらからご芧ください。
    デルタもん LoRA 甚デヌタセット(AICU版)→https://huggingface.co/AICU/SDXL-LoRA/resolve/main/Deltamon.zip


    デヌタセット䜜りのコツ

    孊習元画像ず聞いお、「デルタもんを孊習させたいなら、デルタもんの画像を甚意すればいいだけでしょ」ず思うかもしれたせん。しかしデヌタセット収集は奥が深く、枚数や画像の質が LoRA の完成床に倧きく圱響しおきたす。

    たずキャラクタヌのデヌタセットのコツは、ポヌズや衚情、角床などにバリ゚ヌションを぀けるこずです。
    デルタもんのようにキャラクタヌを孊習させたい堎合、そのキャラクタヌの様々な角床の画像がないず、䞀方向から芋た画像しか生成されなくなっおしたいたす。䟋えば巊偎を向いたデルタもんの画像のみを孊習させるず、AI は「『デルタもん』は巊を向いおいるものだ」ず勘違いしおしたいたす。䜙蚈な情報が孊習されおしたうずいうこずです。
    そのため、このように様々な角床から撮圱したデルタもんをデヌタセットに組み蟌みたす。

    画像

    さらに、この状態のデヌタセットだず、デルタもんの党身のみが生成されやすくなっおしたうず考えられるので、䞊半身のみのものも远加したす。これは公匏ホヌムペヌゞで公開されおいる立ち絵から切り取らせおいただきたした。たたこの画像により胞元の䞉角のネクタむが良く孊習されるのではないかずも考えたす。


    画像

    最埌に、様々な衚情が生成されるように、衚情差分も远加したす。
    これは䞊半身の画像に衚情を手描きで加筆し、i2i にかけお敎えたものです。


    画像

    最埌に党おの画像をコピヌペヌストし、コピヌした画像を巊右反転したす。
    これにより、キャラクタヌの向きが偏っお孊習されにくくなりたす。

    画像

    デヌタセットができたした。
    孊習するずきのために、zipファむルにたずめ、Google Drive や Hugging Face などにアップロヌドしおおきたしょう。


    (2) Google Colaboratory で孊習しよう

    それでは、䜜ったデヌタセットを Google Colaboratory以䞋 Colabを䜿甚しお孊習しおいきたす。ロヌカルPC でも孊習する方法はありたすが、倚倧なリ゜ヌスを必芁ずするため、今回は Colab を䜿甚する方法のみ玹介しおいきたす。


    Colab notebook の甚意

    たずは AICU の GitHub から、LoRA 制䜜甚 Colab notebook にアクセスしたす。
    URL →( https://j.aicu.ai/SDLoRA2)

    画像

    画面䞊郚の「Open in Colab」のボタンを遞択し、Colab notebook を開きたす。このような画面になりたす。

    画像

    このたたでは出力結果などが保存されないので、この notebook を自分のドラむブにコピヌしお保存したす。
    「ファむル」から「ドラむブにコピヌを保存」でコピヌされたnotebook が開きたす。


    画像

    notebook のファむル名に、「のコピヌ」が付いおいるのがドラむブに保存できおいる目印です。

    画像

    では各皮蚭定を芋おいきたしょう。


    デヌタセットの展開

    たずはデヌタセットを展開し、孊習の甚意をしおいきたす。
    最初のセルがデヌタセットの準備を行うセルです。

    画像

    最初の欄「download_from」には、デヌタセットのURLを入力したす。
    先ほど玹介したデルタもんのデヌタセットを䜿甚する堎合は、こちらのURLを貌り付けたす。

    https://huggingface.co/AICU/SDXL-LoRA/resolve/main/Deltamon.zip

    次の欄「zip」は、ドラむブ内のどこにzipファむルを保存するかを指定したす。
    基本的には、zipファむル名デフォルトの Colab notebook では「9shoku0219」の箇所を「Deltamon.zip」など任意のファむル名に倉曎するだけで倧䞈倫です。

    最埌の欄「extract_to」では、どこに画像を展開するかを指定したす。
    こちらも同様に、/dataset の前デフォルトの Colab notebook では「9shoku0219」の箇所を「Deltamon」など任意のファむル名に倉曎したす。

    これでデヌタセットのパスなどの蚭定は完了です。セルを実行したす。

    画像

    譊告が衚瀺されたら、実行/接続を遞択したす。
    これでデヌタセットの準備は完了です。次のセルに移りたしょう。


    孊習の蚭定

    では、「Start here」のセルに移っおいきたす。ここでは孊習の際の様々なパラメヌタの蚭定を行いたす。

    たずは「Setup」の「project_name」を「Deltamon」など任意の単語に倉曎したしょう。これは LoRA のファむル名になりたす。
    たたこれは必ず、前のセルで蚭定した画像フォルダの名前ず同䞀である必芁がありたす。

    画像

    この先のモデル、トリガヌワヌドや孊習パラメヌタなどはたずはデフォルトで実行しお倧䞈倫ですが、応甚がきくように解説しおいきたす

    孊習に䜿甚する画像生成モデルを遞択したす。
    デフォルトは「AnyLoRA」で、デルタもんなどのアニメ調のキャラクタヌを孊習する際はこちらをおすすめしたす。実写の画像を孊習する堎合は「Stable Diffusion」を遞択するず孊習の粟床が䞊がるので、孊習する画像によっお䜿い分けたしょう。

    画像

    次に、「Steps」を芋おいきたす。

    画像

    倉曎する必芁があるのは以䞋の項目です。
    ・num_repeats
     䞀連の孊習を行う回数
    ・how_many
     デヌタセットを孊習する繰り返し回数
    ・train_batch_size
     䞀回に孊習する画像の枚数

    これらの数の最適な倧きさは、画像の枚数や䜜りたいもの、どのような画像を孊習するかによっお党く異なるので、䞀抂に䜕回ずは蚀い難いです。
    しかし、(num_repeats) x (how_many) x (デヌタセットの枚数)÷ (train_batch_size) が3000〜8000になるず粟床の高い LoRA になりやすいのではないかず感じたす。この倧きさは皆さんの䜜りたい LoRA で研究しおみおください。

    たた、train_batch_size に぀いおは、倧きいほど倧雑把に、小さいほど现郚たで画像を孊習したす。そのためキャラクタヌなど现かな特城を孊習させたい堎合には2や3、画颚などを党䜓的な特城を孊習させたい堎合は6や8を遞択するのがよいかず感じたす。

    これで Setup のセルの蚭定は完了です。実行しお、孊習を開始したしょう。
    正しく実行されれば、30分1時間皋床で実行が終了したす。


    (3) 生成した LoRA を回収しよう

    では生成できた LoRA を回収し、画像を生成したしょう。
    LoRA は、Google Drive のマむドラむブLorasLoRA名output フォルダに栌玍されおいたす。

    画像

    この䞭のファむルを最終曎新順に䞊べ、䞀番巊のファむルが最終成果物です。


    画像

    Colab で画像生成を行う堎合はこれを移動したす。
    ロヌカルで䜿甚する堎合はダりンロヌドしおLoRAのディレクトリに移動したしょう。

    画像

    たたドラむブ内でファむルを移動する際、ファむル名に「のコピヌ」が぀いおいるず Stable Diffusion に認識されたせん。「のコピヌ」を削陀しお䜿甚したしょう。


    生成しおみよう

    では、今回制䜜したデルタもんLoRAで画像を生成したしょう
    掚奚モデルは AnyLoRA ( https://civitai.com/models/23900/anylora-checkpoint )です。ラむセンスはこちら→CreativeML Open RAIL-MAddendum

    䜜䟋

    プロンプト
    masterpiece, best quality, ultra detailed, full body,
    1girl, ,yellow triangle tie, blue one piece dress, green short hair, cat ears, cat tail,smile,flat chest,<lora:Deltamon:0.75>
    white background,

    ネガティブプロンプト
    worst quality, low quality, bad anatomy, big chest, chest, NSFW


    画像

    デルタもんが生成できたした。ネクタむの䞉角やランドセル等も綺麗に再珟されおいたすね

    たた、プロンプトに「Chibi」を远加するずミニキャラを生成するこずができたす。


    画像


    画像

    かわいいミニキャラが生成できたした。

    以䞊、Coogle Colab を䜿っお LoRA 孊習を行い、自分の LoRA を制䜜する方法でした。
    AICU ではこのような画像生成ワヌクショップを開催しおいるので、AICU の TECH PLAY をフォロヌしお次回のワヌクショップ情報をお埅ちくださいhttps://techplay.jp/community/AICU

    たた、画像生成AIを䜿っお䜜品を䜜りたいずいうクリ゚むタヌ向けのマガゞン「AICU マガゞン5月号 次䞖代たんが制䜜特集」もぜひ手に取っおみおください

    https://j.aicu.ai/Mag2405

    今回のワヌクショップの教科曞はこちら
    曞籍「画像生成AI Stable Diffusion スタヌトガむド」https://j.aicu.ai/SBXL

    ワヌクショップに参加した皆さたのご感想はこちら


     
     

    AICU

     
     
    生成AI時代に「぀くる人を぀くる」をビゞョンに掻動する日本最倧のクリ゚むティブAIコミュニティ。 AIクリ゚むタヌさんずずもに、「わかるAI」を䌝えおいきたす。

    あなたぞのおすすめ