テキストから画像へのパーソナライゼーションは、コンピュータグラフィックスのディープラーニングにおけるタスクであり、事前学習済みのテキストから画像への生成モデルを拡張する。このタスクでは、大規模データ(通常は基礎モデル)で学習された生成モデルを、ユーザーが提供する新しい概念の画像を生成できるように適応させる。[ 1 ] [ 2 ]これらの概念は通常、学習中には表示されず、特定のオブジェクト(ユーザーのペットなど)またはより抽象的なカテゴリ(新しい芸術的スタイル[ 3 ]やオブジェクトの関係[ 4 ])を表す場合がある。
テキストから画像へのパーソナライゼーション手法では、通常、新しい(個人的な)概念をモデルの語彙に含まれる新しい単語に結び付けます。これらの単語は、その後のプロンプトでその概念を呼び出すために使用され、主語駆動型生成[ 5 ] 、インペインティング[6] 、スタイルトランスファー[ 7 ] 、さらにはモデルのバイアス修正にも使用されます。そのために、モデルは単語埋め込みを最適化するか、生成モデル自体を微調整するか、あるいは両方のアプローチを組み合わせて使用します。
テキストから画像へのパーソナライゼーションは、2022年8月にTextual Inversion [ 7 ]とDreamBooth [ 8 ]という2つの同時研究によって初めて提案されました。
どちらの場合も、ユーザーは、例えば飼い犬などの概念の画像をいくつか(通常3~5枚)と、その概念クラスの大まかな記述子(「犬」という単語など)と共に提供します。モデルは再構成に基づく目標設定を通して、対象を表現する方法を学習します。この目標設定では、対象に関するプロンプトがトレーニングセットから画像を再構成することが期待されます。
Textual Inversionでは、パーソナライズされた概念がテキスト画像モデルに導入されます。これは、モデルの語彙に新しい単語を追加することによって行われます。典型的なテキスト画像モデルは、単語(場合によっては単語の一部)をトークン、つまり定義済み辞書のインデックスとして表します。生成時に、入力プロンプトはそのようなトークンに変換され、各トークンは「単語埋め込み」に変換されます。単語埋め込みとは、モデルのトレーニングの一環として各トークンに対して学習される連続的なベクトル表現です。Textual Inversionは、新しい概念を表現するために新しい単語埋め込みベクトルを最適化することを提案します。この新しい埋め込みベクトルは、ユーザーが選択した文字列に割り当てられ、ユーザーのプロンプトにこの文字列が含まれるたびに呼び出されます。[ 7 ]
DreamBoothでは、新しい単語ベクトルを最適化するのではなく、生成モデル全体を微調整します。ユーザーはまず既存のトークン(通常はプロンプトにほとんど現れないトークン)を選択します。次に、対象自体は、このトークンを含む文字列と、それに続く対象のクラスを表す大まかな記述子で表されます。対象を説明するプロンプトは、「<トークン> <クラス>の写真」という形式になります(例えば、特定の猫を表現する場合は「sks catの写真」)。テキスト画像変換モデルは、この形式のプロンプトから対象の画像が生成されるように調整されます。[ 8 ]
Textual Inversion の重要なアイデアは、新しい (パーソナライズされた) 概念に対応する 新しい用語を普及モデルの語彙に追加することです。
テキスト反転は、事前学習済みのテキスト画像変換モデルのテキスト埋め込み空間内で、概念を新たな擬似単語に反転させることで機能します。これらの擬似単語は、単純な自然言語記述を用いて新たなシーンに挿入することができ、シンプルで直感的な変更が可能になります。この手法により、ユーザーはマルチモーダル情報を活用できます。テキスト駆動型のインターフェースを用いて編集を容易にしつつ、自然言語の限界に近づく際には視覚的な手がかりを提供します。
結果として得られるモデルは、概念ごとに非常に軽量で、わずか1Kの長さですが、概念の詳細な視覚的特性をエンコードすることに成功しています。[ 9 ]
元の方法を改良・改善するために、いくつかのアプローチが提案されました。これらには以下が含まれます。
テキストから画像へのパーソナライゼーション手法は、いくつかの課題に対処しなければなりません。その核となるのは、個人のコンセプトに高い忠実度を保ちつつ、主題を含む斬新なプロンプトと生成された画像(一般的に「編集可能性」と呼ばれます)の高い整合性を維持することです。
パーソナライゼーション手法が対処しなければならないもう一つの課題は、メモリ要件です。パーソナライゼーション手法の初期の実装では20ギガバイト以上のGPUメモリが必要でしたが、最近のアプローチでは40ギガバイトを超える要件が報告されています。[ 14 ]しかし、Flash Attention [ 16 ]などの最適化により、この要件は大幅に削減されました。
生成モデル全体を調整するアプローチは、数ギガバイトにも及ぶチェックポイントを作成する可能性があり、多くのモデルの共有や保存が困難になります。埋め込みベースのアプローチは数キロバイトしか必要としませんが、編集可能性を維持しながらモデル自体の同一性を維持するのが困難です。最近のアプローチでは、埋め込みとネットワーク重みのサブセットの両方を最適化するハイブリッドなチューニング目標が提案されています。これにより、完全なチューニング手法に匹敵する品質を実現しながら、必要なストレージ容量を100キロバイト程度まで削減できます。[ 12 ]
最後に、最適化プロセスは長くなる可能性があり、新しい概念ごとに数分間の調整が必要になります。エンコーダーとクイックチューニング手法は、これを数秒以内に短縮することを目指しています。[ 17 ]
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です