二次元小姐姐全新生成模型來了,還是 1 秒 100 張那種。10 毫秒生成一張圖像,1 分鐘 6000 張圖像,這是什么概念?下圖中,就可以深刻感受到 AI 的超能力。
甚至,當你在二次元小姐姐圖片生成的提示中,不斷加入新的元素,各種風格的圖片更迭也是瞬間閃過。
如此驚人的圖片實時生成速度,便是來自 UC 伯克利、日本筑波大學等研究人員提出 StreamDiffusion 帶來的結果。
這個全新的解決方案是一種擴散模型流程,能夠以超過 100fps 的速度,實現(xiàn)實時交互式圖像生成。
StreamDiffusion 開源后直接霸榜 GitHub,狂攬 3.7k 星。
StreamDiffusion 創(chuàng)新性采用了批處理策略,而非序列去噪,比傳統(tǒng)方法快大約 1.5 倍。而且作者提出的新型殘差無分類器引導(RCFG)算法能夠比傳統(tǒng)無分類引導快 2.05 倍。
最值得一提的是,新方法在 RTX 4090 上,圖像到圖像的生成速度可達 91.07fps。
未來,在元宇宙、視頻游戲圖形渲染、直播視頻流等不同場景中,StreamDiffusion 快速生成能夠滿足這些應用的高吞吐量的需求。
尤其,實時的圖像生成,能夠為那些游戲開發(fā)、視頻渲染的打工人們,提供了強大的編輯和創(chuàng)作能力。
專為實時圖像生成設計
當前,擴散模型在不同領域的應用,需要高吞吐量和低延遲的擴散管道,以確保高效的人機交互。
一個典型的例子是,用擴散模型創(chuàng)建虛擬角色 VTuber—— 能夠對用戶的輸入做出流暢的反應。
為了提高高吞吐量和實時交互能力,目前研究的方向主要集中在,減少去噪迭代次數(shù),比如從 50 次迭代減少到幾次,甚至一次。
常見的策略是將多步擴散模型提煉成幾個步驟,用神經(jīng)常微分方程(ODE)重新構建擴散過程。為提高效率,也有人對擴散模型進行了量化。
最新論文中,研究人員從正交方向(orthogonal direction)開始,引入了 StreamDiffusion—— 一種實時擴散管道,專為互動式圖像生成的高吞吐量而設計。
現(xiàn)有的模型設計工作仍然可以與 StreamDiffusion 集成。另外,它還可以在保持高吞吐量的同時,使用 N 步去噪擴散模型,并為用戶提供更靈活的選擇。
具體是如何實現(xiàn)的?
StreamDiffusion 架構
StreamDiffusion 是一種新的擴散管道,旨在提高吞吐量。它由若干關鍵部分組成:
流批處理策略、殘差無分類器引導(RCFG)、輸入輸出隊列、隨機相似濾波(Stochastic Similarity Filter)、預計算程序、微型自動編碼器的模型加速工具。
批處理去噪
在擴散模型中,去噪步驟是按順序進行的,這就導致了 U-Net 的處理時間,與步驟數(shù)成比例增加。
然而,為了生成高保真的圖像,就不得不增加步數(shù)。
為了解決交互式擴散中的高延遲生成的問題,研究人員提出了一種叫做 Stream Batch 的方法。
如下圖所示,在最新的方法中,在處理下一個輸入圖像之前,不會等待單個圖像完全去噪,而是在每個去噪步驟后接受下一個輸入圖像。
這樣就形成了一個去噪批次,每個圖像的去噪步驟交錯進行。
通過將這些交錯的去噪步驟串聯(lián)成一個批次,研究人員就能使用 U-Net 高效地處理連續(xù)輸入的批次。
在時間步 t 處編碼的輸入圖像在時間步 t+n 處生成并解碼,其中 n 是去噪步驟的數(shù)目。
殘差無分類器引導(RCFG)
常見的無分類器指導(CFG)是一種,通過在無條件或否定條件項和原條件項之間執(zhí)行向量計算。來增強原條件的效果的算法。
這可以帶來諸如加強提示的效果之類的好處。
然而,為了計算負條件剩余噪聲,需要將每個輸入潛變量與負條件嵌入配對,并在每個推理時間將其傳遞給 U-Net。
為了解決這一問題,作者引入了創(chuàng)新的殘差無分類器引導 (RCFG) 。
該方法利用虛擬剩余噪聲來逼近負條件,使得只需在過程的初始階段就可以計算負條件噪聲,大大降低了負條件嵌入時額外 U-Net 推理的計算成本。
輸入輸出隊列
將輸入圖像轉換為管道可管理的張量數(shù)據(jù)格式,反過來,將解碼后的張量轉換回輸出圖像,都需要不可忽略的額外處理時間。
為了避免將這些圖像處理時間添加到神經(jīng)網(wǎng)絡推理流程中,我們將圖像預處理和后處理分離到不同的線程中,從而實現(xiàn)并行處理。
此外,通過使用輸入張量隊列,還能應對因設備故障或通信錯誤造成的輸入圖像臨時中斷,從而實現(xiàn)流暢的流式傳輸。
隨機相似濾波(Stochastic Similarity Filter)
如下圖是,核心擴散推理管道,包含 VAE 和 U-Net。
通過引入去噪批處理和預先計算的提示嵌入緩存、采樣噪聲緩存和調度器值緩存,提高了推理流水線的速度,實現(xiàn)了實時圖像生成。
隨機相似濾波(SSF)是為了節(jié)省 GPU 功耗而設計的,可以動態(tài)關閉擴散模型管道,進而實現(xiàn)了快速高效的實時推理。
預計算
U-Net 架構既需要輸入潛在變量,也需要條件嵌入。
通常情況下,條件嵌入來源于「提示嵌入」,在不同幀之間保持不變。
為了優(yōu)化這一點,研究人員預先計算提示嵌入,并將其存儲在緩存中。在交互或流模式下,這個預先計算的提示嵌入緩存會被召回。
在 U-Net 中,每一幀的鍵和值都是根據(jù)預先計算的提示嵌入計算的。
因此,研究人員對 U-Net 進行修改,以存儲這些鍵和值對,使其可以重復使用。每當輸入提示更新時,研究人員都會在 U-Net 內重新計算和更新這些鍵和值對。
模型加速和微型自動編碼器
為了優(yōu)化速度,我們將系統(tǒng)配置為使用靜態(tài)批大小和固定輸入大小 (高度和寬度)。
這種方法確保計算圖和內存分配針對特定的輸入大小進行優(yōu)化,從而加快處理速度。
然而,這意味著如果需要處理不同形狀的圖像(即不同的高度和寬度),使用不同的批大小(包括去噪步驟的批次大小)。
實驗評估
去噪批的定量評估
圖 8 顯示了批去噪和原始順序 U-Net 循環(huán)的效率比較。
在實施批去噪策略時,研究人員發(fā)現(xiàn)處理時間有了顯著改善。與順序去噪步驟的傳統(tǒng) U-Net 循環(huán)相比,減少了一半的時間。
即使應用了神經(jīng)模塊加速工具 TensorRT,研究人員提出的流批處理在不同的去噪步驟中仍能大幅提高原始順序擴散管道的效率。
此外,研究人員還將最新方法與 Huggingface Diffusers 開發(fā)的 AutoPipeline-ForImage2Image 管道進行了比較。
平均推理時間比較見表 1,最新管道顯示速度有了大幅提升。
當使用 TensorRT 時,StreamDiffusion 在運行 10 個去噪步驟時,實現(xiàn)了 13 倍的速度提升。而在涉及單個去噪步驟的情況下,速度提升可達 59.6 倍。
即使沒有 TensorRT,StreamDiffusion 在使用單步去噪時也比 AutoPipeline 提高了 29.7 倍,在使用 10 步去噪時提高了 8.3 倍。
表 2 比較了使用 RCFG 和常規(guī) CFG 的流擴散管道的推理時間。
在單步去噪的情況下,Onetime-Negative RCFG 和傳統(tǒng) CFG 的推理時間幾乎相同。
所以 One-time RCFG 和傳統(tǒng) CFG 在單步去噪時推理時間差不多。但是隨著去噪步驟增加,從傳統(tǒng) CFG 到 RCFG 的推理速度提升變得更明顯。
在第 5 步去噪時,Self-Negative RCFG 比傳統(tǒng) CFG 快 2.05 倍,Onetime-Negative RCFG 比傳統(tǒng) CFG 快 1.79 倍。
然后,研究人員對所提出的 SSF 的能耗進行了全面評估,如圖 6 和圖 7 所示。
這些圖提供了將 SSF(閾值 η 設為 0.98)應用于包含周期性靜態(tài)特征場景的輸入視頻時 GPU 的使用模式。
對比分析表明,在輸入圖像主要是靜態(tài)圖像且具有高度相似性的情況下,采用 SSF 可以顯著降低 GPU 的使用率。
消融研究
不同模塊對不同去噪步驟下平均推理時間的影響如表 3??梢钥吹靡?,不同模塊的消減在圖像到圖像的生成過程中得到了驗證。
定性結果
圖 10 展示了使用殘差無分類器導引(RCFG)對生成的圖像進行快速條件調整的對齊過程。
生成的圖像,沒有使用任何形式的 CFG,顯示弱對齊提示,特別是在方面,如顏色變化或添加不存在的元素,這是沒有得到有效實現(xiàn)。
相比之下,CFG 或 RCFG 的使用增強了修改原始圖像的能力,例如改變頭發(fā)顏色,添加身體模式,甚至包含像眼鏡這樣的物體。值得注意的是,與標準 CFG 相比,RCFG 的使用可以加強提示的影響。
最后,標準文本到圖像生成結果的質量如圖 11 所示。
使用 sd-turbo 模型,只需一步就可以生成像圖 11 所示的那樣的高質量圖像。
當在 GPU: RTX 4090,CPU: Core i9-13900K,OS: Ubuntu 22.04.3 LTS 的環(huán)境中,使用研究人員提出的流擴散管道和 sd-turbo 模型生成圖像時,以超 100fps 的速率生成這種高質量的圖像是可行的。
網(wǎng)友上手,一大波二次元小姐姐來了
最新項目的代碼已經(jīng)開源,在 Github 已經(jīng)收攬 3.7k 星。
許多網(wǎng)友已經(jīng)開始生成自己的二次元老婆了。
還有真人變實時動畫。
10 倍速手繪生成。
感興趣的童鞋們,不如自己動手吧。
參考資料:
https://huggingface.co/papers/2312.12491
https://twitter.com/cumulo_autumn/status/1732309219041571163
廣告聲明:文內含有的對外跳轉鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結果僅供參考,IT之家所有文章均包含本聲明。