首頁 >科技週邊 >人工智慧 >Omnigen:統一的圖像生成方法

Omnigen:統一的圖像生成方法

Joseph Gordon-Levitt
Joseph Gordon-Levitt原創
2025-03-18 11:32:22325瀏覽

生成基礎模型徹底改變了自然語言處理(NLP),大型語言模型(LLM)在各種任務中都出色。但是,視覺生成領域仍然缺乏能夠在單個框架內處理多個任務的統一模型。現有的模型在特定域中穩定擴散,dall-e和成像人都表現出色,但依賴於特定於任務的擴展(例如ControlNet或Contractpix2pix),它們限制了它們的多功能性和可擴展性。

Omnigen通過引入一個統一的圖像生成框架來解決這一差距。與傳統的擴散模型不同,Amnigen具有一個簡潔的體系結構,其中僅包括變異自動編碼器(VAE)和變壓器模型,從而消除了對外部任務特定組件的需求。該設計允許Amnigen處理任意交織的文本和圖像輸入,從而實現了各種任務,例如文本到圖像生成,圖像編輯和可控生成,並在單個模型中可控。

Omnigen不僅在基準中擅長文本對圖像生成,而且還展示了跨看不見的任務和領域的強大轉移學習,新興能力和推理。

學習目標

  • 掌握綜合劑的結構和設計原理,包括其將變異自動編碼器(VAE)的集成和統一圖像生成的變壓器模型。
  • 了解所有人如何處理交織的文本和圖像輸入以處理各種任務,例如文本到圖像生成,圖像編輯和主題驅動的自定義。
  • 分析Omnigen的基於流動的優化和進行性分辨率培訓,以了解其對生成性能和效率的影響。
  • 發現Omnigen的現實世界應用,包括生成藝術,數據增強和交互式設計,同時確認其在處理複雜的細節和看不見的圖像類型時的約束。

目錄

  • 學習目標
  • 綜合模型架構和培訓方法
  • 了解注意機制
  • 了解推理過程
  • 有效的培訓策略
  • 推進統一的圖像生成
  • 使用全基
  • 綜合劑的局限性
  • 申請和未來方向
  • 結論
  • 常見問題

綜合模型架構和培訓方法

在本節中,我們將研究“綜合框架”框架,重點介紹其模型設計原理,體系結構和創新培訓策略。

模型設計原理

當前的擴散模型通常面臨局限性,將其可用性限制在特定任務(例如文本對圖像生成)上。擴展其功能通常涉及集成其他特定於任務的網絡,這些網絡很麻煩,並且在各種任務中缺乏可重複使用性。 Omnigen通過遵守兩個核心設計原則來應對這些挑戰:

  • 通用性:接受多種任務的各種形式的圖像和文本輸入的能力。
  • 簡潔性:避免過度複雜的設計或需要許多其他組件。

網絡架構

Omnigen採用了一種創新的體系結構,該體系結構集成了變異自動編碼器(VAE)和預訓練的大型變壓器模型:

  • VAE:從輸入圖像中提取了連續的潛在視覺特徵。 Omnigen使用SDXL VAE,該VAE在訓練過程中保持冷凍。
  • 變壓器模型:使用PHI-3初始化,以利用其強大的文本處理功能,它基於多模式輸入生成圖像。

與依靠單獨的編碼器(例如剪輯或圖像編碼器)進行預處理輸入條件的傳統擴散模型不同,Omnigen固有地編碼所有條件信息,從而大大簡化了管道。它還在單個框架中共同建模文本和圖像,從而增強了方式之間的相互作用。

Omnigen:統一的圖像生成方法

輸入格式和集成

Omnigen接受自由形式的多模式提示,交織的文本和圖像:

  • 文本:使用PHI-3令牌的令牌化。
  • 圖像:通過VAE處理,並使用簡單的線性層轉換為一系列視覺令牌。將位置嵌入應用於這些令牌以更好地表示。
  • 圖像文本集成:每個圖像序列都用特殊令牌(“ Omnigen:統一的圖像生成方法”和“ ”)封裝,並與序列中的文本令牌結合使用。

了解注意機制

注意機制是AI中的遊戲改變者,使模型可以在處理複雜任務時專注於最相關的數據。從驅動變壓器到革新NLP和計算機視覺,此概念在機器學習系統中重新定義了效率和精度。

Omnigen修改標準因果注意機制以增強圖像建模:

  • 在所有序列元素上都應用因果注意力。
  • 在單個圖像序列中使用雙向注意,從而使圖像中的補丁在確保僅參與先前序列(文本或更早圖像)的同時相互作用。

了解推理過程

推論過程是AI模型將學習模式應用於新數據,將培訓轉換為可行的預測。這是將模型培訓與現實世界應用,推動跨行業的見解和自動化的最後一步。

Omnigen使用流動匹配方法進行推理:

  • 對高斯噪聲進行採樣並迭代以預測目標速度。
  • 潛在表示使用VAE解碼為圖像。
  • 通過默認的50個推理步驟,Omnigen通過將鍵值態儲存在GPU上,以減少冗餘計算來利用KV-CACHE機制來加速該過程。

有效的培訓策略

Omnigen採用整流的流量方法進行優化,這與傳統的DDPM方法不同。它在噪聲和數據之間進行線性插值,訓練模型以基於噪聲數據,時間步長和條件信息直接回歸目標速度。

訓練目標最大程度地減少了加權平方誤差損失,強調了圖像編輯任務中發生變化以防止模型過度擬合到不變區域的區域。

管道

雜種逐漸以增加圖像分辨率的訓練,將數據效率與美學質量平衡。

  • 優化器
    • ADAMW為β=(0.9,0.999)。
  • 硬體
    • 所有實驗均在104 A800 GPU上進行。
  • 階段

培訓細節,包括分辨率,步驟,批量規模和學習率,如下:

階段 圖像分辨率 訓練步驟(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:統一的圖像生成方法

  • 主題驅動的自定義:
    • 介紹集中的數據集和技術,以生成以特定對像或實體為中心的圖像。
    • 利用新穎的過濾和註釋方法來增強相關性和質量。

Omnigen:統一的圖像生成方法

  • 整合視覺任務:
    • 結合了傳統的計算機視覺任務,例如細分,深度映射和與圖像生成的介入。
    • 促進知識轉移,以提高新型情況下的生成性能。

Omnigen:統一的圖像生成方法

  • 幾次學習:
    • 通過示例驅動的培訓方法來賦予文章中的內在學習。
    • 在保持效率的同時,增強了模型的適應性。

Omnigen:統一的圖像生成方法

通過這些進步,Omnigen為實現統一和聰明的圖像生成能力設定了基準,彌合了各種任務之間的差距,並為開創性的應用鋪平了道路。

使用全基

無論您是在本地環境中工作還是使用Google Colab,Omnigen都​​很容易開始。請按照下面的說明安裝和使用Amnigen來生成文本或多模式輸入的圖像。

安裝和設置

要安裝Omnigen,請首先克隆GitHub存儲庫並安裝軟件包:

克隆綜合存儲庫:

 git克隆https://github.com/vectorspacelab/omnigen.git
CD Omnigen
PIP安裝-e 
PIP安裝全材

可選:如果您願意避免衝突,請創建一個專門的環境:

 #創建Python 3.10.13 Conda環境(您也可以使用Virtualenv)
conda create -n omnigen python = 3.10.13
conda激活綜合劑

#安裝具有適當CUDA版本的Pytorch(例如,CU118)
PIP安裝火炬== 2.3.1 Cu118 Torchvision -extra-index-url https://download.pytorch.org/whl/cu118
!
#克隆並安裝綜合劑
git克隆https://github.com/vectorspacelab/omnigen.git
CD Omnigen
PIP安裝-e。

安裝綜合劑後,您可以開始生成圖像。以下是如何使用綜合管道的示例。

文字到圖像生成

Omnigen允許您從文本提示中生成圖像。這是一個簡單的例子,可以生成一個男人喝茶的圖像:

來自Amnigen進口AmnigenPipeline

pipe = omnigenpipeline.from_pretrataining(“ shitao/omnigen-v1”)

#從文本中生成圖像
圖像=管道(
    提示='''現實照片。一個年輕女子坐在沙發上, 
    拿著書並面對相機。她穿著精緻 
    銀箍耳環裝飾有微小的閃閃發光鑽石 
    這抓住了光,她長長的栗色頭髮級聯 
    在她的肩膀上。她的眼睛專注而溫柔,構造了 
    長長的黑睫毛。她穿著舒適的奶油毛衣, 
    這補充了她溫暖,誘人的微笑。在她身後,那裡 
    是一張桌子,上面放著一杯水,上面有一杯,極簡的藍色杯子。 
    背景是一個寧靜的室內環境,具有柔和的自然光
     通過窗戶過濾,裝飾有高雅的藝術和花朵, 
     創造舒適和和平的氛圍。 4K,高清'', 
    高度= 1024, 
    寬度= 1024, 
    gudance_scale = 2.5,
    種子= 0,
)
圖像[0] .save(“ example_t2i.png”)#保存生成的圖像
圖像[0] .show()

Omnigen:統一的圖像生成方法

多模式到圖像生成

您也可以將Omnigen用於多模式生成,其中包含文本和圖像。這是一個示例,其中包含圖像作為輸入的一部分:

 #生成帶有文本和提供的圖像的圖像
圖像=管道(
    提示=“ <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, 
    寬度= 1024,
    gudance_scale = 2.5, 
    img_guidance_scale = 1.6,
    種子= 0
)
圖像[0] .save(“ example_ti2i.png”)#保存生成的圖像

Omnigen:統一的圖像生成方法

計算機視覺功能

下面的示例演示了Omnigen的高級計算機視覺(CV)功能,特別是其從圖像輸入中檢測和渲染人骨架的能力。此任務將文本指令與圖像結合在一起,以產生準確的骨骼檢測結果。

從PIL導入圖像

#定義骨架檢測的提示
提示=“在此圖像中檢測人的骨架:<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, 
    寬度= 1024,
    gudance_scale = 2, 
    img_guidance_scale = 1.6,
    種子= 333
)

#保存並顯示輸出
圖像[0] .save(“ ./ imgs/demo_cases/skeletal.png”)

#顯示輸入圖像
打印(“輸入圖像:”)
對於Input_images中的IMG:
    image.open(img).show()

#顯示輸出圖像
打印(“輸出:”)
圖像[0] .show()

Omnigen:統一的圖像生成方法

主題驅動的一代

該示例演示了Amnigen的受試者驅動的能力,可以從多個輸入圖像提示中描述的個體識別個人,並生成這些主題的組圖像。該過程是端到端的,不需要外部識別或細分,展示了無所物在處理複雜的多源場景方面的靈活性。

從PIL導入圖像

#定義主題驅動一代的提示
提示=((
    “一個教授和一個男孩一起讀書。”
    “教授是<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 = [[

#用描述的主題生成輸出圖像
圖像=管道(
    提示=提示, 
    input_images = input_images, 
    高度= 1024, 
    寬度= 1024,
    gudance_scale = 2.5, 
    img_guidance_scale = 1.6,
    syte_cfg_infer = true,
    種子= 0
)

#保存並顯示生成的圖像
圖像[0] .save(“ ./ imgs/demo_cases/entity.png”)

#顯示輸入圖像
打印(“輸入圖像:”)
對於Input_images中的IMG:
    image.open(img).show()

#顯示輸出圖像
打印(“輸出:”)
圖像[0] .show()

主題驅動的能力:我們的模型可以在多人圖像中識別所描述的主題,並從多個來源生成個體的組圖像。此端到端過程不需要額外的識別或細分,強調了無非的靈活性和多功能性。

Omnigen:統一的圖像生成方法

綜合劑的局限性

  • 文本渲染:有效處理短文本段,但要為更長的文本生成準確的輸出而努力。
  • 訓練約束:由於資源限制,訓練期間最多只能進行三個輸入圖像,從而阻礙了模型管理長圖像序列的能力。
  • 細節精度:生成的圖像可能包括不准確的,尤其是在小或複雜的細節中。
  • 看不見的圖像類型:無法處理未經訓練的圖像類型,例如用於表面正常估計的圖像類型。

申請和未來方向

Omnigen的多功能性在不同領域開闢了許多應用:

  • 生成藝術:藝術家可以利用Amnigen從文本提示或粗略的草圖中創建藝術品。
  • 數據增強:研究人員可以生成用於培訓計算機視覺模型的不同數據集。
  • 交互式設計工具:設計師可以利用允許根據用戶輸入進行實時圖像編輯和生成的工具中的綜合劑。

隨著綜合劑的不斷發展,未來的迭代可能會進一步擴展其功能,有可能融合更先進的推理機制並提高其在復雜任務上的性能。

結論

Omnigen是一種革命性的圖像生成模型,將文本和圖像輸入結合到一個統一的框架中,克服了穩定擴散和DALL-E等現有模型的局限性。通過集成變量自動編碼器(VAE)和變壓器模型,它簡化了工作流程,同時啟用了多功能任務,例如文本到圖像生成和圖像編輯。憑藉多模式生成,主題驅動的定制和少數學習的能力,Omnigen在生成藝術和數據增強等領域開闢了新的可能性。儘管有一些局限性,例如長期文本輸入和細節的挑戰,Omnigen仍將塑造視覺內容創建的未來,為各種應用程序提供強大,靈活的工具。

關鍵要點

  • Omnigen結合了差異自動編碼器(VAE)和變壓器模型來簡化圖像生成任務,從而消除了對特定於任務的擴展的需求,例如ControlNet或Conternpix2Pix。
  • 該模型有效地集成了文本和圖像輸入,可以實現多功能任務,例如文本到圖像生成,圖像編輯和主題驅動的組圖像創建,而無需外部識別或分段。
  • 通過創新的培訓策略,例如整流的流動優化和漸進的分辨率縮放,Omnigen在保持效率的同時,可以實現跨任務的穩健性能和適應性。
  • 雖然Omnigen在生成藝術,數據增強和交互式設計工具方面表現出色,但它在提供複雜的細節和處理未經訓練的圖像類型方面面臨挑戰,為將來的進步留出了空間。

常見問題

Q1。什麼是雜種?

A. Omnigen是一種統一的圖像生成模型,旨在處理各種任務,包括文本對圖像生成,圖像編輯和多模式生成(結合文本和圖像)。與傳統模型不同,Omnigen不依賴於特定於任務的擴展,提供了更廣泛和可擴展的解決方案。

Q2。是什麼使Amnigen與其他圖像生成模型不同?

A. Omnigen由於其簡單的體系結構而脫穎而出,該體系結構結合了變異自動編碼器(VAE)和變壓器模型。這使其可以在統一的框架中處理文本和圖像輸入,從而無需其他組件或修改即可實現多種任務。

Q3。運行無金的系統要求是什麼?

答:為了有效地運行Allnigen,建議使用具有CUDA啟用GPU的系統。該模型已在A800 GPU上進行了培訓,並且使用鍵值緩存機制受益於GPU加速度的推理過程。

本文所示的媒體不由Analytics Vidhya擁有,並由作者酌情使用。

以上是Omnigen:統一的圖像生成方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn