Withailand (ウィザイランド)

AIの世界に足をそっと踏み入れた

Sampling Method:クレジット消費量ランキング

今回はSampling Method(サンプリングメソッド)についてのお話です。サンプリングアルゴリズムとも言います。

私は最近PixAI.Artというサービスで、AIによる画像生成を楽しんでおります。画像生成AIを利用した画像作りをはじめた頃は、そんなにパラメータをいじったりはしませんでしたが、画像生成の作業に慣れてくると、徐々にパラメータを変えてみたくなってきました。パラメータを少しいじってみて気がついた事があります。PixAI.Artでは画像を生成するときにクレジットを消費するのですが、そのクレジットの消費量は選ぶSampling Methodの種類によって違いがあるということです。

違いがあるなら比較して並べたくなるのが人間の性。今回はPixAI.ArtでのSampling Methodのクレジット消費量ランキングを作って発表していきます。

Sampling Methodの種類

まずはじめにPixAIでは何種類のSampling Methodが選べるのか書き出してみます。

  • Euler a
  • Euler
  • LMS
  • Heun
  • DPM2 Karras
  • DPM2 a Karras
  • DDIM
  • DPM++ 2M Karras
  • DPM++ 2S a Karras
  • DPM++ SDE Karras
  • DPM++ 2M SDE Karras
  • Restart

以上の12種類を使うことができます。PixAIの場合は、この中のDPM++ 2M Karrasというのが初期値として設定されております。

消費クレジットの比較条件

各Sampling Methodの消費クレジットを比較するには、条件を統一しないと正しく比べられません。以下のように詳細パラメータを統一してみました。

・縦横比:1024*1024

・画像枚数:単一

・HiRes(解像度):2.0

・HiRes(ノイズ除去の強度):0.6

・HiRes(ノイズ除去のステップ):50.0

・Sampling Steps:50.0

・CFG scale:6.0

・高優先度:☑

クレジット消費量ランキング

〘 第9位 〙

第9位は同消費クレジット数(12600)で4種類のSampling Methodがランクインです。

  • Euler a
  • Euler
  • LMS
  • DDIM

〘 第1位 〙

9位の次は、いきなり1位に飛んでしまいます。というのも第1位も同クレジット数でした。消費クレジット数は24600でした。

  • Heun
  • DPM2 Karras
  • DPM2 a Karras
  • DPM++ 2M Karras
  • DPM++ 2S a Karras
  • DPM++ SDE Karras
  • DPM++ 2M SDE Karras
  • Restart

まとめ

今回の比較により、ランキングとしては面白みのない結果となりましたが、生成にかかるコストは2種類に分類できることがわかりました。

私は、DDIMというSampling Methodがクレジットの消費も少ないので気に入って使っておりましたが、この比較を見ると、Euler aやEulerやLMSでも同じコストでできることがわかります。この結果はコスパの良いSampling Method探しに役立つのではないかと思いました。

その他にクレジット消費量に影響するパラメータは画像のサイズ,解像度,Sampling Stepsです。Sampling Stepsの回数による画像への影響を比較,分析してみて傾向を掴むことができれば、良い画像できるまでただ闇雲に生成を続けなくてもよくなるのではないかと思いました。

更新履歴

  • 2024年3月27日:DDIMの綴りの間違いを修正
  • 2024年4月19日:記事の概要を追加

インデックス登録の失敗と解決方法

私は、はてなブログでAIについての記事を書いております。記事を書いた後は、記事をたくさんの人に見てもらいたいので、Google Search Console(グーグルサーチコンソール)でページのインデックス登録をすることにしております。普段はリクエストすれば数十分もすれば登録が完了するのですが、最近書いた記事の一つは、リクエストをしたのに一日経っても二日待っても登録されないという経験をしました。

ひょっとして、この記事を読んでくださっているあなたも同じ経験をされて困っているのではないでしょうか。もしも、そうであれば、原因はこの記事に記載したものかもしれません。私は試行錯誤の末、その原因を突き止めて問題を解決することができました。

今回は、サーチコンソールでインデックス登録が失敗してしまったときの解決談をご紹介します。

エラー内容

ページのインデックス登録の欄をクリックしてみると、詳細画面が展開されます。それらの項目をチェックしてみると原因となっている部分に【i】マークがついておりました。下のスクリーンショットのミドリマーカーが引いてある部分です。

ページの取得:【i】失敗しました:リダイレクト エラー

と記載されております。私には何のことかわかりませんでしたが、リダイレクトエラーというエラーらしいです。

リダイレクトエラーの原因

リダイレクトエラーというエラーはどういうことが原因で起こるのでしょうか。Google Bardで調べてみました。質問は「サーチコンソールのリダイレクトエラーの原因について教えて。」と、してみました。以下はBardの回答の一部を引用したものです。

"サーチコンソールのリダイレクトエラーは、主に以下の4つの原因で発生します。

  1. リダイレクトチェーンが長すぎる
  2. リダイレクトループが発生している
  3. リダイレクトURLが最終的にURLの最大長を超えた
  4. リダイレクトチェーンに不正または空のURLがある"

※ 一部のみを抜粋して引用しました。

出典:Google AI Bird

私がインデックス登録をリクエストしたページは、はてなブログで作成している単純なブログページです。そして、新しく書いた記事のページでしたので、リダイレクトチェーンができている事はあまり考えられませんでした。URLも別に長くなかったです。むしろ他の記事よりも短いくらいでした。少し心当たりがあるのはリダイレクトループが発生しているかもしれないことでした。

対策1

まずはじめに私が試した対策は記事内の注釈を撤去することでした。下の写真は、はてなブログの注釈について説明をするために作った試作ページのスクリーンショットです。

赤丸のところに注釈がついております。青丸のところに注釈の内容が記載されております。この赤丸と青丸で囲った【*1】はお互いにリンクしています。赤丸で囲った方の【*1】をクリックすると青丸で囲った【*1】まで飛びます。その逆に青丸で囲った方の【*1】をクリックすると赤丸で囲った方の【*1】まで戻ります。それによって、ページをクロールしにきたロボットがずっと同じページ内を行ったり来たりループし続けてしまうのではないかと、私は思ったのです。

それなので、注釈を使わないで済むような書き方に記事を修正して、ページ内から注釈を撤去しました。

対策1の結果

対策1(注釈の撤去)を行ってから、再度ページのインデックス登録をリクエストしてみました。1日後に結果を確認してみましたが、クロールしに来てくれてはいたのですが、残念ながらリダイレクトエラーは解消されませんでした。注釈によるループが原因ではなかったようです。

私の脳では原因らしいものが注釈によるループしか思いつかなかったので、この結果はとてもショックでした。もう完全に原因不明な状態で、途方に暮れました。

見えてきた問題点

私は、他に何も対策が思い浮かばなかったので、もう諦めてURLを別のものに変えて申請し直してみようかと思いました。

思い立ったらすぐ行動。URLを変えようと設定画面を開いてみると、自分の間違いに気が付きました。

私がグーグルサーチコンソールにインデックス登録しようとしていたURLは、

https://senisthousand.hatenablog.com/entry/ab

でした。しかしながら、私が設定していた正しいURLは、

https://senisthousand.hatenablog.com/entry/AB

だったのです。どこが違うのかというと、URLの最後の部分の【エービー】の部分が、本当は大文字でABなのに、誤って小文字のabで申請していたのです。

対策2

URLの一部を大文字と小文字を間違えてリクエストしていたので、これをどのように修正しようか考えました。方法は2つ思いつきました。

  1. Google Search Consoleに正しいURLでインデックス登録をリクエストする。
  2. Google Search Consoleに申請した誤ったURLを活かして、ブログのURLの方を変えてしまう。

以上の2つの方法です。今回の場合は、まだそのページは公開してから一週間も経っておらず、見に来た人もほとんどいないはずでしたので、2つ目の方法の、URLを変える方法を取ることにしました。大文字と小文字を間違えていた部分も、簡単に修正が効く部分でしたし、サーチコンソールの方にエラーが残り続けてしまうのも嫌だったというのもこの対策を選んだ理由です。

対策2の結果

URLをサーチコンソールにリクエストしていたものと同じ、

https://senisthousand.hatenablog.com/entry/ab

に変えて再度リクエストをしてみたところ、見事に1日後にはページのインデックス登録が完了しておりました。

まとめ

まとめると今回のインデックス登録が失敗していた原因は、申請していたURLの文字列の中で、大文字と小文字を間違えていたためのようでした。私はなんとも間抜けな失態をしていたわけです。でも、解決できてとても嬉しかったです。

この記事を読んでくださっているあなたも、もし、サーチコンソールのインデックス登録に失敗して、どうしたらいいのか困っていたら、申請したURLと自分のURLが間違っていないかをチェックしてみてください。意外とそんな簡単なミスをしているかもしれませんよ。

当ページの補足情報

このページのタイトルははてなブログのAIタイトルアシストでつけました。AIタイトルアシストでタイトル作りをを試してみたいという方は以下の記事をご覧ください。

簡単タイトル作成:AIタイトルアシストの使用方法( https://senisthousand.hatenablog.com/entry/aititle )

更新履歴

  • 2024年4月19日:記事の概要を追加

画像生成AIでのA判やB判の縦横比の画像作り

今回は縦と横の比率についてのお話です。画像における縦横比は、言い換えるとアスペクト比とか言いますよね。そのアスペクト比や画像サイズについてお話させていただきます。

みなさんは画像生成AIで画像を作るとき、画像のサイズはどのくらいの大きさにしてますか。私はPixAI.Artで画像を生成することが多いのですが、はじめた頃はデフォルトの512*768というのを使っておりました。

それと、正方形の画像もいろいろと使い勝手がいい比率なので、私は結構好んで使っておりました。特にプリセットの中にある512*512のサイズはとてもよく使いました。

でも、例えば子どもにぬり絵の下絵を作ってあげたり、おしゃれなPOPの背景画像を画像生成AIで作ってみようとした場合、きっと使い勝手が良いのはA4サイズで出力できる縦横比なのではないでしょうか。海外ではどうなのかは知りませんが、日本だととにかく一般的な印刷用のサイズといえばA4サイズです。

それなので、今回はA4サイズに適した縦横比の画像を生成するときのコツをテーマにしていきます。

A4サイズの縦横比

A4サイズは横210mm,縦297mmの長方形です。これを比率で表す場合、私が昔に覚えた計算方法で解くと、

210:297=1:χ

      210χ=297

             χ=297/210

             χ=1.1414…

となります。

1.1414…。

何処かで見たことあるような数字です。私が中学生の頃、父親から「語呂合わせで覚えるんだ!ひとよひとよにひとみごろ!」と教わったやつです。つまり√2(ルート2)です。それなので、A4の縦横比は、1:√2なのです。

そもそもA判って…

成り立ち知っている人は別に驚く話ではないのかもしれませんが、成り立ちを知らない人にとっては、こんなにわかりやすい縦横比になっていることに驚くのではないでしょうか。理系やデザイン系とは全く縁のない仕事をしている私は、この事実を知った時、とにかく驚きました。受験勉強以外で使うことがなかった平方根が、実はこんなにも身近に溢れていたのです。

そもそもA判てどういう成り立ちなのか気になった私は、AI使いの見習いとしてはAIを使って調べてみようと思い、Google Bardに聞いてみました。以下、そのやり取りをご覧ください。引用の一部です。

私:"A判の成り立ちについて簡単に教えてください。"

Bard:"A判は、1911年にドイツの物理学者ヴィルヘルム・オストヴァルトが考案した紙の寸法です。オストヴァルトは、紙の寸法は、短辺と長辺の比が1:√2であるべきだと提唱しました。この比は、紙を半分に折ったときに、長辺と短辺の比が同じになるため、用紙の端がずれにくく、印刷や製本に適していると考えられています。

オストヴァルトの提案は、1922年にドイツ工業規格(DIN)によって「DIN476」として規格化されました。その後、1975年に国際標準化機構(ISO)によって国際規格として採用され、現在では世界中で広く使用されています。

A判のサイズは、全紙(A0)を基本として、長辺を半分に折るごとに、A1、A2、A3、A4、A5、A6、A7、A8、A9、A10と番号が付けられています。数字が大きくなるにつれて、紙のサイズは小さくなります。"

〜以下省略

私:"A0サイズの大きさについて簡潔に教えて。”

Bard:"A0サイズは、国際規格ISO 216で定められた紙のサイズです。長辺と短辺の比が1:√2(約1.414)で、面積は1平方メートルです。具体的には、長辺が841mm、短辺が1189mmです。"

〜以下省略

(出典:Google AI Bard)

ということでした。ただし、Bardの回答内容に一部誤りがありました。長辺と短辺があべこべになっております。短辺が841mm、長辺が1189mmが正しいものになります。

それはさておき、紙を半分に折っても長辺と短辺の長さの比率が変わらない素晴らしい比率(1:√2)を基準として考案されたものということがわかりました。全紙(A0)は面積が1平方メートルになっていて、それを1:√2の比率で短辺と長辺に割り振った長さが841mmと1189mmということがわかりました。

B判ももしかして

B4を半分にしてB5にした場合も、面積は半分になるけど、形は同じに見えますよね。ひょっとしてB判も1:√2の比率になっているのかもしれないと思い、これもBardに聞いてみました。以下、その引用の一部です。

私:”B判のアスペクト比は?”

Bard:”B判のアスペクト比は、1:√2(約1.414)です。

B判は、日本の標準用紙サイズで、A判とは異なり国際標準規格ではありません。B判の縦横比は、A判と同じ1:√2になっており、最も美しい長方形を作り出します。B判は、日本で古来親しまれている美濃紙がルーツになっています。”

〜以下省略

(出典:Google AI Bard)

やっぱりB判もA判と同じく1:√2のアスペクト比でした。

生成サイズの決め方

アスペクト比を1:√2で生成すればA4のみならず、A判全般やB判全般のサイズにもぴったりフィットする画像ができることがわかりました。あとは生成したい画像の大きさを決めて、計算するだけです。

短辺をα、長辺をβとすると、以下のような式ができます。

 α:β=1:√2

1×β=√2×α

     β=√2α

なので、短辺に√2をかければ長辺の長さが求められます。√2はだいたい1.414ですから、短辺に1.414をかければ長辺の長さを算出できます。

例えば、短辺を350にした場合は、長辺は1.414×350で求めることができるわけです。

β=1.414×350

β=494.9

494.9となりました。約495ですね。これで短辺350の長辺495というサイズで作れば、アスペクト比がだいたい1:√2の画像を生成できます。

短辺500なら、500×1.414=707なので、長辺は707です。

短辺700なら、700×1.414=989.8なので、長辺は約990です。

但し、PixAI.Artの場合では、サイズを大きくするとクレジットを多く消費します。手持ちのクレジットの様子を見ながらサイズを決めるのが良いかと思います。

どこに入力するのか

PixAIの場合、決めたサイズをどこに入力すればいいのかというと、作成画面の詳細パラメータ内で入力します。下の画像の赤い波線を引いた部分に入力してください。

Widthの方に短辺の数値を入れて、Heightの方に長辺の数値を入れると、縦長の画像になり、Widthの方に長辺の数値を入れて、Heightの方に短辺の数値を入れると、横長の画像になります。

見本画像

こちらは縦長の画像です。350 × 496のサイズで作りました。

こちらは横長の画像です。500 × 354のサイズで作りました。

本当は、縦長の画像は350 × 495で作りたかったのですが、なぜか自動的に350 × 496になってしまいました。

まとめ

いかがでしたでしょうか。

まとめますと、短辺の長さに1.414をかけた数字を長辺に設定すれば、だいたい1:√2の縦横比の画像を生成することができるということです。

A判やB判サイズで画像を利用したいのであれば、是非今回の方法を参考に画像を生成してみてください。

更新履歴

簡単タイトル作成:AIタイトルアシストの使用方法

今回ははてなブログの機能の一つ『AIタイトルアシスト』についてのお話です。

みなさんはブログを書いたことはございますか。ブログは、どのブログサービスでもだいたい記事の最小構成はタイトルと本文の二つです。書きたいことが決まったら、まずはタイトルを書いて、その後に本文を書く、というのが自然な流れだと思う人は少なくないと思います。小中学校でよく書かされた作文や読書感想文も、題名を決めて、名前を書いて、本文を書く、という流れで書く人が多かったですよね。

しかしながら、せっかくブログを書くならば、もっとたくさんの人に読んでもらいたくなる人も多いはずです。特にブログでアフィリエイトアドセンスをやってる方は、とにかく自分のブログを見に来てもらわない事には何も生まれないはずです。そうすると、読みに来てもらえるような魅力的なタイトルを付けることはとても大事なことです。何について書かれているのかがある程度わかって、尚且つ内容を読んでみたくなるような魅力的なタイトルを作るのです。これは得意な人ならばすいすいと思い浮かぶと思いますが、私はとても苦手です。

私ははてなブログでこのブログを書いているわけですが、はてなブログにはとても便利な機能がございます。タイトルを空欄にしたまま本文を書き進め、本文が完成したらAIに内容を分析してもらい内容に沿ったタイトルを生成してもらえるサービスです。それが『AIタイトルアシスト』です。私はこの機能の存在を知ってからは、毎回この機能を利用しております。とても便利で助かるなと思いましたので、他のはてなブログユーザーさんでも、まだ使ったことがない方に向けて、写真を添えて使い方をご紹介致していきます。

手順①:記事(本文)を書く

まずは記事をいつも通りに書きます。はてなブログのヘルプサイトによると、"記事の本文は300文字以上ない場合、タイトルの生成を行うことはできません"とのことです。普段から文字数が少なめの方は、頑張って300文字以上書いてみてください。

【参考サイト】

はてなブログ ヘルプ - AIタイトルアシスト

https://help.hatenablog.com/entry/ai-title-assist

手順②:タイトルの横のマーク

タイトルを入れる枠にご注目ください。薄字で【タイトル】って書いてあるずっと右に【♢AI】という灰色のマークがあります。そのマークをクリックしてください。

手順③:実行するを選択

【♢AI】マークを押したあとに開かれるウィンドウ内の【実行する】と書いてある青いマークをクリックしてください。

やっぱり気が変わって実行したくなくなった場合は、ウィンドウ外をクリックすればウィンドウが閉じます。

手順④:3択の中から選択する

【記事タイトル】,【検索エンジン向けタイトル】,【ソーシャルメディア向けタイトル】の3つのタイトルを決めます。それぞれのタイトルに対してAIは3つずつ考えてくれます。その3択の選択肢の中から一つずつクリックして選択してください。

【記事タイトル】は、この記事が表示されたときや、はてなブログ内でこの記事が掲載されたときのタイトルです。記事の内容がわかりやすいものを選んだほうがいいです。

検索エンジン向けタイトル】は、GoogleやYahoo!とかの検索サイトの検索結果にこの記事がヒットしたときに表示されるタイトルです。他のサイトに流れてしまわないように、付加価値の伝わるタイトルを選びたいですね。

ソーシャルメディア向けタイトル】は、X(旧ツイッター)やFacebookなどでこの記事がシェアされたときに表示されるタイトルです。

選択が終わったら右下の【選択した項目を適用する】という青いマークをクリックしてください。この時点でタイトルは選択したものが適用されます。

手順⑤:ウィンドウを閉じる

【選択した項目を適用する】をクリックしても、AIタイトルアシストのウィンドウは勝手には閉じません。

【選択した項目を適用する】マークのすぐ左にあるグレーの【閉じる】マークをクリックするか、ウィンドウの枠外をクリックすればウィンドウを閉じる事ができます。

手順⑥:公開する

あとは、プレビューで出来映えを確認して問題がなければ、いつもと同じように【公開する】をクリックすればOKです。

気に入ったタイトルが生成されなかったら…

もしも、AIが考えてくれたタイトルの選択肢に、自分が気に入ったものがなかった場合は、【再実行】を指示することもできます。ただし、これには一日あたり5回までという制限があります。これを超えてしまったら、自力でタイトルを考えるか、明日になるまで待ってからやり直しましょう。

再実行は、選択肢の上にある青い字で【再実行する】と書いてある部分をクリックしてください。

まとめ

いかがでしたでしょうか。さすがAIっていう感じですね。結構簡単な手順ですので、私にとっては本当に助かっております。私はAIが作ってくれたタイトルをそのまま使うこともありますし、そうしないときもあります。AIが考えてくれたタイトルを参考に言い回しを変えたり、キーワードを追加したりなどの手を加える場合もあります。とにかく、頭を悩ませるタイトル作りにかかる時間をかなり削減できるので重宝しております。

更新履歴

  • 2024年4月19日:記事の概要を追加

LoRAの影響力:画像生成AIで個性を加える

今回は画像生成AIのLoRAの影響力についてのお話です。

私は最近、PixAI.Artというサービスでよく画像生成をしております。そして、その際にはLoRAというデータも使って画像をより自分好みに仕向けることが多いです。モデルで生成する画像の作風を決めて、LoRAでモチーフの個性を強く反映させるようなイメージです。

みなさんはLoRAを使ってみたことはございますか?使ってみたことがある方は、その便利さを実感しているのではないかと思います。今回はまだLoRAにどんな効果があるのかがよくわからない方に、LoRAを利用しない場合と利用する場合でどんな違いが出てくるのかを、比較画像を用いてご紹介していきます。

使用するLoRA

何のLoRAを使って試すのかというと、私が先日PixAIで作った【?マーク】のPixAI学習LoRAを使用して比較していきます。このLoRAは私がPixAIで生成した【?マーク】を含む画像を50枚くらい選び、AIに学習してもらってできたものです。なるべく形の良い【?マーク】だけを選んで作りました。LoRA名は『question_mark』です。

PixAI.ArtでのLoRAの作り方は、別の記事でご紹介しておりますので、ご興味がございましたら、その記事もご覧ください。URLリンクを貼っておきます。

手軽にオリジナルのLoRAを作ってみよう(https://senisthousand.hatenablog.com/entry/original_lora)

余談

始まって早々に話が少しそれますが、みなさんは【?】って何て読みますか。私は普段の会話では「はてな」とか「はてなマーク」って言ってます。「クエスチョンマーク」って言う人も多いと思います。少しかっこよく「クエッションマーク」って言う人もいますよね。あとは「疑問符」というのもちらほら会話の中に出てきますよね。

はてな」,「はてなマーク」,「クエスチョンマーク」,「クエッションマーク」,「疑問符」以外の読み方をしている方がいらっしゃいましたら、是非コメント欄で教えてください。

一応、私のX(旧ツイッター)でアンケートを取ってみたところ、【?】は以下のような割合で読まれていることがわかりました。

回答数:11票

私の力不足により11票しか回答を得られてないので正確性は低いアンケートですが、はてなマークと読む方がぶっちぎりで多いようです。その逆に疑問符と読む方はあまりいないようです。私のXのアカウントがもっと人気になったら、またこのアンケートを試してみたいです。そして、今回ご回答くださった11名の方々にどうもありがとうございました。感謝申し上げます。

それでは余談を終了し、話を元に戻します。

基本条件

LoRA使用の有無を比較するには、それ以外の項目は同じ条件にしておいたほうがいいと思いますので、条件を以下のように揃えました。

・プロンプト:?, question mark

・ネガティブプロンプト:worst quality, large head, low quality, extra digits, bad eye,  EasyNegativeV2,  ng_deepnegative_v1_75t

・Sampling Steps:17

・Sampling Method:DPM++ 2M Karras

・CFG Scale:6.0

・縦横比:512✕512

・画像枚数:一括(x4)

・LoRA『question_mark』の比重:0.7

使用するモデル

使用するモデルは、1つでは面白くないので5つほど試してみます。以下の5つです。

  1. JIM TERUPOONMODE
  2. Children's Stories, Semi_Real, V1.0
  3. Coloring Page Creater
  4. Cute RichStyle 1.5
  5. BracingEvoMix

これらの5つのモデルを使って、私が作成した『question_mark』というLoRAを使うか使わないかで、どれだけ生成画像に影響が出るかを実験してみます。

比較画像とコメント

1. モデル『JIM TERUPOONMODE』の場合

不使用の場合でも右上と右下の画像は【?マーク】が生成されております。一方、使用した場合は、4枚中4枚とも【?マーク】が生成されました。ガチャガチャと余計な背景は生成されず、ブラウンとグレーのシンプルな背景の中にシンプルな【?マーク】が生成されました。但しよく見ると、右上の画像は下の点が一つ多いです。

2. モデル『Children's Stories, Semi_Real V1.0』の場合

不使用の場合でも使用した場合でも、それぞれ4枚中4枚とも【?マーク】が入りました。使用した場合は、【?マーク】以外のキャラクターやイラストが排除されて、【?マーク】だけが強調されたような画像になりました。このモデルの場合でも下の点が一つ多い形になっているものがちらほらあります。

3. モデル『Coloring Page Creater』の場合

このモデルの場合では、LoRAを使わないとあまりうまく【?マーク】が反映されてませんでした。LoRAを使った場合は、影のある立体的で個性的な【?マーク】の画像が生成されました。これも下の点がひとつ多いものがあります。

4. モデル『Cute RichStyle 1.5』の場合

不使用の場合の右上と右下は、イラストの文章の中に【?マーク】が隠れております。左上と左下はうまく生成できなかったようです。このモデルに関しては、LoRAを使用した場合でも、画像はシンプルになったもののきれいな形の【?マーク】は生成できませんでした。

5. モデル『BracingEvoMix』の場合

このモデルの場合は、LoRAを使わなかった場合でも4枚中4枚とも【?マーク】は生成されて、キャラクターとの調和もいい感じに取れている画像が生成されました。LoRAを使った場合は、キャラクターが完全に排除されてシンプルなペイントになりました。

まとめ

このLoRAを使用すると、どのモデルでも試しても【?マーク】が強調されたことがおわかりいただけたと思います。今回は比重を0.7で使った場合でした。この比重をもっと下げると【?マーク】だけでなく、他のキャラクターとの共存ができる画像が生成できるはずです。そういった調整は生成を繰り返していい塩梅を探す必要がありそうです。それと、私が作ったこのLoRAもまだまだ不完全かなと思いました。たびたび下の点が一つ多いものもできてしまうのが残念です。

最後に、『[abnormal body lora]Sphinx women』 と私が作った『question_mark』のLoRAを併用して生成した作品をご覧ください。LoRAの比重とプロンプトで整えて、キャラクターと【?マーク】が共存できているイラストになっております。プロンプトで吹き出しも入れてみました。

どうです?かわいいでしょ?

 

 

更新履歴

  • 2024年1月24日:タイトルの変更
  • 2024年2月4日:余談にXでのアンケート結果を追加
  • 2024年4月19日:記事の概要を追加

手軽にオリジナルのLoRAを作ってみよう

今回は自作LoRAについて話題です。

皆さんはLoRAを使った事はありますか。

私はPixAI.ArtでAIによる画像生成をコソコソと一人で楽しんでおりますが、生成を繰り返していくうちに「LoRAの効果って面白いな。素晴らしいな。」って思うようになりました。LoRAは生成する画像の方向性に強く影響を及ぼします。その効果を何度も実感すると、私は次第に「私も優れたLoRAを作ってみたい。」と思うようになりました。

PixAIでLoRAを作る場合、一つあたり25,000クレジットのコストがかかります。でも、毎日午前9時には10,000クレジットの無料支給があります。つまり3日間、生成の際にクレジットを使わずにある程度制限のある楽しみ方で抑えてクレジットを貯めれば、無課金でLoRAを作ることができるのです。

無課金でできるならやってみようと思い、LoRAを作りはじめました。まだ作りはじめて日は浅いですが、作り方や作ってみて感じたことなどを、今回は記事として書いていきます。

作り方

PixAI.Artでは、ユーザーがLoRAを作ることができます。ざっくり流れを説明すると、同一の対象物の画像を10枚以上アップロードして、どんな雰囲気の画像なのかを選択して、主なプロンプトを入力して名前をつけるだけです。あとは数分から十数分くらい待てば出来上がります。

もう少し詳しい説明は以下をご覧ください。(写真はAndroidのアプリの場合です。)

手順①

PixAI.Artを開いたはじめの画面で、星型マークの【LoRA学習】というところを押してください。

手順②

あらかじめ用意しておいた同じモチーフの画像を10枚以上選びます。下の写真をご覧ください。

赤マルで括った【タスクから選ぶ】を押すと今まで自分がPixAI.Artで生成した生成履歴の中から画像を選ぶ画面が開きます。

もう一つの赤マルで括った【】マークを押すと、自分の端末内に保存されている画像の中から選択する画面が開きます。

画像を10枚以上選択したら、右下の【追加】を押します。

生成履歴から選んだ画像と自分の端末内に保存されている画像を選び終わったら、一番下の【次】を押します。

手順③

LoRAタイプを選択します。

選択肢は4つです。

  • アニメキャラ
  • リアルキャラ
  • アートスタイル
  • 風景

の中から選んでください。今回、私は左手の実写風のLoRAを作ろうとしておりましたので、リアルキャラを選択しました。

手順④

LoRAに名前を付けます。あとから変更することもできるので、気楽に付けて大丈夫です。

手順⑤

トリガーワードを入力します。このLoRAモデルを特徴を表す語句を入れてください。複数いれる場合は半角のカンマで区切ってください。

手順⑥

ベースモデルを以下の7つの選択肢の中から選びます。

  • Moonbeam
  • Anything V5
  • Diamond
  • Neverland
  • Whimsical
  • Hassaku
  • RealisticVisionV51

今回、私は実写風のLoRAにしたかったので、RaelisticVisionV51を選択しました。

手順⑦

これでほぼ終了です。25,000クレジットを使って【学習開始】を押します。

はじめは0%watingと表示されておりますが、時間が経てば進捗は進み、いずれ100%になります。かかった時間は、私の場合は十数分くらいだったと思います。選択したLoRAタイプ,ベースモデル,画質,画像の量,画像の近似性などが時間に影響するのではないかと思います。PixAI.Art内での処理の混み具合も影響しそうです。

とにかく暫く待っていれば出来上がるので、コーヒーでも飲みながら楽しみに待ちましょう。

手順⑧

100%になれば、もうPixAI.Art上でLoRAとして使用することができます。

あとは、下の画像のように他のユーザーさんが今回作ったLoRAを使用する際の許可設定や、成人向けのLoRAなのか否かを選択したり、任意のタグや概要の入力をすることができます。

今回作ったLoRAの紹介

ここまではPixAI.Artでの自作LoRAについて、作成手順をご紹介してきましたが、せっかくですので、この度、私が作った『Left_Hand』というLoRAの効果をお見せしたいと思います。

このLoRAは私が自分の左手だけをスマホのカメラで撮影した写真を50枚アップロードして作ったLoRAです。手の描写は画像生成AIは苦手であるという話を事前に聞いていたので、ポーズはあまり複雑にせず、掌を開いて五本指がちゃんと見えるような写真ばかりにしました。

PixAI画像LoRA『Left_Hand』の有無の比較

LoRAを使わずにPixAIで手の画像を生成してもらうときと、私が作ったPixAI学習LoRA『Left_Hand』を使ったときでどれくらい違いが出るか比較してみましょう。

作成条件は以下のように統一させました。

・モデル:Pixai Real V4.0

・プロンプト:1man, 1hand, 5fingers, open_hand, hand, real, realistic

・ネガティブプロンプト:worst quality, large head, low quality, extra digits, bad eye,  EasyNegativeV2,  ng_deepnegative_v1_75t

・Sampling Steps:17

・Sampling Method:DPM++ 2M Karras

・CFG Scale:6.0

・縦横比:512 x 512

それでは比較画像をご覧ください。左の4枚の画像はLoRA『Left_Hand』を使わなかった画像です。右の4枚はLoRA『Left_Hand』を使った画像です。

ちょっと見た感じでは、どちらも大して違いが無いように見えるかもしれませんが、じっくり見ると、LoRA無しの方は4枚全てがうまく生成されておりません。2つの手が1つに融合されていたり、指の本数が多すぎていたりします。それに対して、LoRA有りの方は4枚中4枚とも手の数は1つですし、指の本数も4枚中3枚は5本指で生成されております。指の長さや向きに違和感はありますが、LoRAを使わなかったときと比べると良くなった感じがします。

LoRAを作ってみた感想

LoRAを使用しなかったときと比べると、自作LoRAを使ったときのほうが若干良くなったような気はしますが、まだまだ画像生成AIを取り扱う経験が浅い私が、『手』を題材に自作のLoRAを作るのは難易度が高すぎたのかなと思いました。ただ、PixAIなら、高性能なパソコンを持っていなくても、クレジットさえ25,000ほど貯めれば、オリジナルのLoRAを手軽に作ることができることができることはおわかりいただけたのでは無いかと思います。こんなに手軽にできるのでLoRA作成ももっとチャレンジしてみて、いつか画像生成が思い通りにできるように腕を磨いて行きたいと思いました。

更新履歴

  • 2024年1月22日:選択する画像の枚数の、“10枚〜50枚”と書いてあった部分を、“10枚以上”に訂正。
  • 2024年4月19日:記事の概要を追加

はてなブログで注釈が勝手に入って困っている人のために

画像生成AIのことについて、はてなブログで記事を書いた際、勝手に注釈が入ってしまって困ったことはございませんか?そんな人は私だけかもしれませんが、ひょっとしたら同じ経験をされて困っている方もいるかもしれません。

私は、その現象のせいで、このブログを書き続けることを一度諦めかけました。でも、やっぱりそんなことで挫けてはいられないので、それが起こる原因を探ってみました。そして、対策を思いつくことができました。

今回は、はてなブログで勝手に注釈ができてしまうときの対処方法をご紹介していきます。

注釈が入ってしまう原因

まずは、普通に記事を書いていただけなのに、勝手に注釈が入ってしまう原因についてご説明します。

結論から言うと二重丸括弧(にじゅうまるかっこ)が原因です。正確には半角の丸括弧を二重に重ねたものです。

画像生成AIでプロンプトを記述するとき、強く反映させたい語句を丸括弧で囲むと強調されるようになっておりますが、もっと強調させたいときに丸括弧を二重や三重に重ねて語句を囲む方法があります。その丸括弧を二重にして使ったプロンプトをはてなブログにそのまま転記すると、注釈になってしまうのです。

注釈ができてしまう例

注釈ができてしまう例を一つお見せします。

このページの目次の上に貼った画像は、PixAI.ArtというAI画像生成サービスで作ったのですが、その際に入力したプロンプトを、そのままはてなブログの記事を書く画面に転記すると、注釈ができてしまいます。

プロンプトは以下のような物を入力しました。

マーカーで線を引いた部分、high_qualityという言葉が二重丸括弧で括られていることにご注目ください。これによって実際にインターネット上に公開されるページでは以下のような感じで注釈ができてしまいます。

((high_quality))の部分が赤い*1マークになりました。そして、記事の最後に*1 high_qualityと書いてあります。つまり注釈になってしまったわけです。

このように画像生成AIのプロンプトとはてなブログはそんなに相性が良くないようなのです。

解決方法

私は、この注釈ができてしまう問題により、はてなブログで画像生成AIの記事を書くことに大きな壁を感じてしまい一度は諦めかけました。しかしながら、なんとか乗り切る方法を思いついたので、続けることができました。その方法は以下のようなものです。

方法①:半角から全角に変える

二重丸括弧が半角の場合にこの減少は発生します。それなので、はてなブログで記事を書く際は、半角ではなく全角の二重丸括弧を用いればこの問題を回避できます。画像生成AIサービスでプロンプトを書く際は、半角の二重丸括弧にして、はてなブログで書く際は、丸括弧の部分だけ全角に書き直せば大丈夫です。

((example))←これは全角の丸括弧を二重にして使った例です。ご覧の通り注釈に自動変換されずに済んでおります。

方法②:丸括弧を重ねることは避ける癖をつけておく

プロンプトの記述時にそもそも丸括弧を重ねないような書き方をする癖をつけておけば、いざはてなブログにプロンプトを転載することになったとしても、自動注釈化を恐れることはなくなります。実際に私もこの方法を意識してプロンプトを書くことにしております。

丸括弧一つだけでは強調具合が甘いときには、半角コロンと数字を用いて強度を変えます。

・(example:1.3)←このような書き方で強調の程度を調節します。数値を高くすれば強調具合が増加する仕組みになっております。

方法③:二重ではなく三重や四重にする

・(((example)))←三重に丸括弧を重ねた例

・((((example))))←四重に丸括弧を重ねた例

ご覧の通り、二重ではなく三重や四重まで重ねてしまえば、注釈に自動変換されてしまうことはありません。これは予めはてなブログにプロンプトを転載することを決めていた場合に有効な手段です。囲った語句が画像生成時に強調されすぎてしまうデメリットはあります。

まとめ

以上の3つの方法が、はてなブログで勝手に注釈ができてしまうときの対処方法でした。二重丸括弧を記事内で用いることは、一般的にはほとんど無いとは思いますが、私のように画像生成AIの記事を書く人が、使ったプロンプトの紹介をするときには、このような現象が起こり得ます。予めはてなブログに記事を書く予定がある方でしたら、方法②や方法③を意識して取り入れてみてください。それ以外の場合は、方法①で乗り切ってみてはいかがでしょうか。

更新履歴

  • 2024年4月18日:記事の概要を追加