ホームページ >テクノロジー周辺機器 >AI >Omnigen:画像生成への統一されたアプローチ
生成基盤モデルは、多様なタスクにわたって大規模な言語モデル(LLM)が優れているため、自然言語処理(NLP)に革命をもたらしました。ただし、視覚生成の分野には、単一のフレームワーク内で複数のタスクを処理できる統一モデルがまだ欠けています。安定した拡散、DALL-E、イメージンなどの既存のモデルは、特定のドメインに優れていますが、汎用性とスケーラビリティを制限するControlNetやInstantPix2Pixなどのタスク固有の拡張機能に依存しています。
Omnigenは、画像生成のための統一されたフレームワークを導入することにより、このギャップに対処します。従来の拡散モデルとは異なり、Omnigenは、変分自動エンコーダー(VAE)とトランスモデルのみを含む簡潔なアーキテクチャを備えており、外部タスク固有のコンポーネントの必要性を排除します。この設計により、Omnigenは任意のインターリーブテキストと画像入力を処理することができ、単一モデル内のテキストから画像の生成、画像編集、制御可能な生成などの幅広いタスクを可能にします。
Omnigenは、テキストからイメージの生成のためにベンチマークに優れているだけでなく、目に見えないタスクやドメイン全体の堅牢な転送学習、新興能力、推論も示しています。
このセクションでは、モデルの設計原則、アーキテクチャ、革新的なトレーニング戦略に焦点を当てたOmnigenフレームワークを検討します。
現在の拡散モデルはしばしば制限に直面し、テキストからイメージの生成などの特定のタスクに対する使いやすさを制限します。機能を拡張するには、通常、追加のタスク固有のネットワークを統合することが含まれます。タスク固有のネットワークは面倒で、多様なタスク全体で再利用性がありません。 Omnigenは、2つのコアデザイン原則を順守することにより、これらの課題に対処します。
Omnigenは、変分自動エンコーダー(VAE)と事前に訓練された大型トランスモデルを統合する革新的なアーキテクチャを採用しています。
プリプロシング入力条件に個別のエンコーダー(クリップまたは画像エンコーダーなど)に依存する従来の拡散モデルとは異なり、全米はすべての条件付き情報を本質的にエンコードし、パイプラインを大幅に簡素化します。また、単一のフレームワーク内でテキストと画像を共同でモデル化し、モダリティ間の相互作用を強化します。
Omnigenは、フリーフォームのマルチモーダルプロンプト、インターリーブテキスト、画像を受け入れます。
注意メカニズムはAIのゲームチェンジャーであり、モデルが複雑なタスクを処理しながら最も関連性の高いデータに焦点を合わせることができます。トランスの動力剤からNLPとコンピュータービジョンの革新まで、この概念は機械学習システムの効率と精度を再定義しました。
Omnigenは、標準の因果関係メカニズムを修正して、画像モデリングを強化します。
推論プロセスは、AIモデルが学習パターンを新しいデータに適用し、トレーニングを実用的な予測に変換する場所です。これは、実世界のアプリケーションを使用したモデルトレーニング、業界全体の洞察と自動化を促進する最後のステップです。
Omnigenは、推論のためにフローマッチング方法を使用します。
Omnigenは、従来のDDPMメソッドとは異なる最適化のために修正フローアプローチを採用しています。ノイズとデータの間の直線的に補間し、モデルをトレーニングして、ノイズされたデータ、タイムステップ、条件情報に基づいてターゲット速度を直接回帰します。
トレーニングの目的は、加重平均四角エラー損失を最小限に抑え、画像編集タスクで変更が発生する領域を強調して、モデルが変化しない領域に過剰に適合しないようにします。
Omnigenは、画像解像度の増加で徐々に訓練し、データ効率と審美的な品質のバランスを取ります。
解像度、手順、バッチサイズ、学習レートを含むトレーニングの詳細については、以下に概説します。
ステージ | 画像解像度 | トレーニングステップ(k) | バッチサイズ | 学習率 |
1 | 256×256 | 500 | 1040 | 1E-4 |
2 | 512×512 | 300 | 520 | 1E-4 |
3 | 1024×1024 | 100 | 208 | 4E-5 |
4 | 2240×2240 | 30 | 104 | 2E-5 |
5 | 複数 | 80 | 104 | 2E-5 |
Omnigenは、革新的なアーキテクチャと効率的なトレーニング方法論を通じて、拡散モデルに新しいベンチマークを設定し、幅広いアプリケーションに汎用性と高品質の画像生成を可能にします。
画像生成で堅牢なマルチタスク処理を可能にするために、大規模で多様な基盤を構築することが不可欠でした。 Omnigenは、モデルがさまざまなタスクにわたって汎用性と適応性にどのようにアプローチするかを再定義することにより、これを達成します。
重要な革新には次のものがあります。
これらの進歩を通じて、Omnigenは、統一されたインテリジェントな画像生成機能を達成し、多様なタスク間のギャップを埋め、画期的なアプリケーションへの道を開くためのベンチマークを設定します。
Omnigenは、ローカル環境で働いているか、Google Colabを使用しているかにかかわらず、簡単に始められます。以下の指示に従って、TextまたはMulti-Modal入力から画像を生成するためにOmnigenをインストールして使用します。
Omnigenをインストールするには、GitHubリポジトリのクローニングとパッケージのインストールから始めます。
Omnigenリポジトリをクローンします:
git clone https://github.com/vectorspacelab/omnigen.git CDオムニゲン ピップインストール-e ピップインストールOmnigen
オプション:競合を避けたい場合は、専用の環境を作成します。
#Python 3.10.13 Conda環境を作成します(virtualenvも使用できます) Conda Create -N Omnigen Python = 3.10.13 コンドラはオムニゲンを活性化します #適切なCUDAバージョンでpytorchをインストールする(例:CU118) PIPインストールTORCH == 2.3.1 CU118 TORCHVISION -EXTRA-INDEX-URL https://download.pytorch.org/whl/cu118 !ピップインストールOmnigen #クローンとインストールOmnigen git clone https://github.com/vectorspacelab/omnigen.git CDオムニゲン ピップインストール-e。
Omnigenがインストールされると、画像の生成を開始できます。以下は、Omnigenパイプラインの使用方法の例です。
Omnigenを使用すると、テキストプロンプトから画像を生成できます。お茶を飲んでいる男性のイメージを生成する簡単な例を次に示します。
Omnigen Import OmnigenPipelineから pipe = omnigenpipeline.from_pretrained( "shitao/omnigen-v1") #テキストから画像を生成します 画像=パイプ( PROMPT = '' '現実的な写真。若い女性がソファに座って、 本を持ってカメラに面しています。彼女はデリケートを着ています シルバーフープイヤリングは、小さな輝くダイヤモンドで飾られています 彼女の長い栗の髪がカスケードされて、それが光をキャッチします 彼女の肩の上。彼女の目は集中して優しく、額装されています 長くて暗いまつげで。彼女は居心地の良いクリームのセーターを着ています、 彼女の温かく魅力的な笑顔を補完します。彼女の後ろ、そこ 洗練されたミニマリストの青いマグカップに水を1杯入れたテーブルです。 背景は柔らかい自然光のある穏やかな屋内環境です 上品なアートと花で飾られた窓からろ過、 居心地の良い平和な雰囲気を作り出します。 4K、HD '' '、 高さ= 1024、 width = 1024、 Guidance_scale = 2.5、 シード= 0、 )) 画像[0] .save( "emple_t2i.png")#生成された画像を保存します 画像[0] .show()
また、テキストと画像が組み合わされているマルチモーダル生成には全網を使用することもできます。入力の一部として画像が含まれている例は次のとおりです。
#テキストと提供された画像で画像を生成する 画像=パイプ( PROMP = "<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226875770560.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" > <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226875770560.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" > \ n女性のイヤリングを取り外します。マグカップを、きらめくアイスコーラで満たされた透明なガラスに置き換えます。 。 "、 input_images = ["./ imgs/demo_cases/edit.png 「]、 高さ= 1024、 width = 1024、 Guidance_scale = 2.5、 img_guidance_scale = 1.6、 シード= 0 )) 画像[0] .save( "example_ti2i.png")#生成された画像を保存します
次の例は、OmnigenのAdvanced Computer Vision(CV)機能、特に画像入力から人間の骨格を検出してレンダリングする能力を示しています。このタスクは、テキストの命令と画像を組み合わせて、正確なスケルトン検出結果を生成します。
PILインポート画像から #スケルトン検出のプロンプトを定義します PROMP = "この画像で人間のスケルトンを検出する:<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226875978150.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" > <img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226875978150.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" >" input_images = ["./imgs/demo_cases/edit.png"] #スケルトン検出で出力画像を生成します 画像=パイプ( プロンプト=プロンプト、 input_images = input_images、 高さ= 1024、 width = 1024、 Guidance_scale = 2、 img_guidance_scale = 1.6、 シード= 333 )) #出力を保存して表示します 画像[0] .save( "./ imgs/demo_cases/skeletal.png") #入力画像を表示します print( "入力画像:") input_imagesのIMGの場合: image.open(img).show() #出力画像を表示します print( "output:") 画像[0] .show()
この例は、複数の入力画像からプロンプトに記載されている個人を識別し、これらの被験者のグループ画像を生成するオムニジェンの主題主導型の能力を示しています。このプロセスはエンドツーエンドであり、外部認識やセグメンテーションを必要とせず、複雑なマルチソースシナリオの処理におけるOmnigenの柔軟性を紹介します。
PILインポート画像から #対象主導の生成のプロンプトを定義します prompt =( 「教授と少年が一緒に本を読んでいます。」 「教授は<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226876123951.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" > の中間者です。」 「少年は<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/174226876123951.jpg" class="lazy" alt="Omnigen:画像生成への統一されたアプローチ" > の本を持っている少年です。」 )) input_images = ["./imgs/demo_cases/ai_pioneers.jpg"、 "./imgs/demo_cases/same_pose.png"]] #説明された被験者を使用して出力画像を生成します 画像=パイプ( プロンプト=プロンプト、 input_images = input_images、 高さ= 1024、 width = 1024、 Guidance_scale = 2.5、 img_guidance_scale = 1.6、 departer_cfg_infer = true、 シード= 0 )) #生成された画像を保存して表示します 画像[0] .save( "./ imgs/demo_cases/entity.png") #入力画像を表示します print( "入力画像:") input_imagesのIMGの場合: image.open(img).show() #出力画像を表示します print( "output:") 画像[0] .show()
対象主導の能力:私たちのモデルは、記述された主題をマルチパーソン画像で識別し、複数のソースから個人のグループ画像を生成できます。このエンドツーエンドのプロセスでは、オムニジェンの柔軟性と汎用性を強調する追加の認識やセグメンテーションは必要ありません。
オムニゲンの汎用性は、異なる分野で多数のアプリケーションを開きます。
オムニゲンが進化し続けるにつれて、将来の反復はその能力をさらに拡大し、より高度な推論メカニズムを組み込み、複雑なタスクでのパフォーマンスを強化する可能性があります。
Omnigenは、テキストと画像の入力を統一されたフレームワークに組み合わせた革新的な画像生成モデルであり、安定した拡散やDall-Eなどの既存のモデルの制限を克服します。変動自動エンコーダー(VAE)とトランスモデルを統合することにより、テキストから画像の生成や画像編集などの多用途のタスクを可能にしながら、ワークフローを簡素化します。マルチモーダル生成、被験者主導のカスタマイズ、少数のショット学習などの機能により、オムニゲンは生成アートやデータ増強などの分野で新しい可能性を開きます。長いテキスト入力や細かい詳細を備えた課題など、いくつかの制限にもかかわらず、Omnigenは視覚的なコンテンツ作成の未来を形作るように設定されており、多様なアプリケーションに強力で柔軟なツールを提供します。
A. Omnigenは、テキストから画像の生成、画像編集、マルチモーダル生成(テキストと画像の組み合わせ)など、さまざまなタスクを処理するように設計された統一画像生成モデルです。従来のモデルとは異なり、Omnigenはタスク固有の拡張機能に依存せず、より汎用性の高いスケーラブルなソリューションを提供します。
Q2。オムニゲンが他の画像生成モデルと違うのはなぜですか?A. Omnigenは、変分自動エンコーダー(VAE)とトランスモデルを組み合わせた単純なアーキテクチャのために際立っています。これにより、テキスト入力と画像入力の両方を統一されたフレームワークで処理でき、追加のコンポーネントや変更を必要とせずに幅広いタスクを可能にします。
Q3。オムニゲンを実行するためのシステム要件は何ですか?A.オムニゲンを効率的に実行するには、CUDA対応GPUを備えたシステムが推奨されます。このモデルはA800 GPUでトレーニングされており、推論プロセスはキー値キャッシュメカニズムを使用してGPU加速度の利点があります。
この記事に示されているメディアは、Analytics Vidhyaが所有しておらず、著者の裁量で使用されています。
以上がOmnigen:画像生成への統一されたアプローチの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。