連環畫創作源泉!港科大、騰訊等開源SEED-Story:開創性多模態長故事生成! 精華
文章鏈接:https://arxiv.org/pdf/2407.08683
github鏈接:https://github.com/TencentARC/SEED-Story
亮點直擊
- SEED-Story,一種利用多模態大語言模型(MLLM)生成具有豐富敘述性文本和上下文相關圖像的多模態故事的新方法。
- 提出了多模態注意力匯聚機制,以高效生成長度大于訓練時使用的序列長度的長故事。
- 引入了StoryStream,這是一個專門為訓練和基準測試多模態故事生成而設計的大規模數據集。
隨著圖像生成和開放形式文本生成的顯著進步,生成交織圖像-文本內容的領域變得越來越引人入勝。多模態故事生成,即生成敘述性文本和生動圖像交織在一起的內容,已成為一個具有廣泛應用的寶貴且實用的任務。然而,這一任務帶來了重大挑戰,因為它需要理解文本和圖像之間復雜的相互作用,并具備生成長序列連貫、上下文相關的文本和視覺效果的能力。
本文提出了SEED-Story,一種利用多模態大語言模型(MLLM)的新方法來生成擴展的多模態故事。本文的模型建立在MLLM強大的理解能力之上,預測文本tokens和視覺tokens,后者隨后通過改編的視覺去分詞器處理,以生成具有一致角色和風格的圖像。進一步提出多模態注意力匯聚機制,以在高度高效的自回歸方式下生成最多25個序列(訓練時僅10個序列)的故事。此外,本文還提出了一個名為StoryStream的大規模高分辨率數據集,用于訓練本文的模型并在各個方面定量評估多模態故事生成任務。
方法
使用多模態大語言模型進行故事生成
視覺Tokenization和De-tokenization 本文的方法概述如下圖2所示。為了有效擴展視覺故事,本文的模型必須理解并生成圖像和文本。借鑒最近在統一圖像理解和生成的生成性多模態大語言模型(MLLM)方面的進展,研究者們開發了一種多模態故事生成模型。
本文的模型使用預訓練的Vision Transformer(ViT)作為視覺分詞器,并使用預訓練的擴散模型作為視覺去分詞器,通過使用ViT的特征作為輸入來解碼圖像。具體而言,來自ViT分詞器的視覺embeddings被輸入到一個可學習模塊中,然后作為預訓練的SD-XL的U-Net的輸入。這個過程用視覺embeddings替代了原始的文本特征。在這一階段,參數使用開放世界的文本-圖像對數據以及故事數據進行優化,以增強模型的編碼-解碼能力。在這一訓練階段之后,期望視覺分詞器和去分詞器模塊能夠在特征空間中盡可能多地保留圖像信息。
故事指令調優 在故事生成指令調優過程中,每次迭代隨機抽取一個故事數據點的隨機長度子集。模型的任務是預測故事文本的下一張圖片和下一句句子。在MLLM中,所有圖像都使用預訓練的ViT分詞器轉換為圖像特征。對于目標文本tokens,進行下一個token預測,并使用交叉熵損失來訓練這個離散目標。對于目標圖像特征,模型使用一系列可學習的查詢作為輸入,并連續輸出一系列潛在embeddings。然后,計算MLLM輸出與目標圖像特征之間的余弦相似度損失。在這一階段,使用LoRA模塊微調SEED-Story模型。
去分詞器適應 在指令調優之后,SEED-Story MLLM有效地生成了語義正確的故事圖像,但缺乏風格一致性和細節。將這個問題歸因于MLLM輸出的潛在空間與圖像特征之間的不對齊。為了解決這個問題,對去分詞器進行了風格和紋理對齊的適應。在這個階段,僅訓練SD-XL圖像去分詞器。在MLLM輸出embeddings的條件下,期望SD-XL生成與真實圖像在像素級別對齊的圖像。去分詞器的單獨訓練有兩個主要優勢。首先,它避免了LLM與去分詞器之間的優化沖突。其次,它節省了內存,使得這一過程可以在內存有限的GPU上執行。
使用多模態注意力匯聚生成長故事
生成長篇視覺故事在教育和娛樂等各種應用中具有巨大的潛力。然而,用多模態大語言模型(MLLM)創建這些故事面臨重大挑戰。延長、交織故事的數據集不僅稀缺,而且由于其復雜性會阻礙訓練過程。為了解決這個問題,采用了“短期訓練,長期測試”的方法,在較短的敘事上訓練模型,并在推理過程中擴展到較長的生成。
此外,在推理過程中,生成比訓練數據顯著更長的故事常常導致模型退化,產生質量較低的圖像,如下圖10第一行所示。這個過程還需要大量的tokens使用來確保連續性和連貫性,這反過來增加了內存和計算需求。
一個簡單的解決方案是使用滑動窗口技術,如下圖3右(b)所示。然而,這種方法會破壞Key-Value(KV)緩存中的tokens關系,導致生成結果不理想,如StreamingLLM所示。為了克服這一問題,StreamingLLM引入了一種注意力匯聚機制,可以保留初始tokens,從而在不損害質量的情況下高效處理長生成。雖然這種方法在語言模型中有效,但在多模態上下文中的效果減弱,如圖3右(c)所示。
為了增強多模態長生成,重新審視了MLLM的注意力圖。在對各種模型和案例進行了大量實驗后,分析了不同層和頭部的注意力圖。分析表明,大多數查詢主要集中在四種類型的tokens上:
- 起始tokens
- 標點符號tokens
- 圖像開始(BoI)tokens
- 圖像結束(EoI)tokens
與僅限語言的模型不同,MLLM對特定的圖像tokens,尤其是BoI和EoI附近的圖像tokens給予了大量關注,如上圖3左所示。
基于這些見解,本文提出了一種新的MLLM擴展生成機制,稱為多模態注意力匯聚。在生成過程中,始終保留起始tokens和BoI及EoI相鄰的圖像tokens。盡管標點符號tokens接收到高關注值,但它們的潛在值規范最小,對最終輸出貢獻不大,因此不保留它們,如[13]所指出。本文提出的機制使本文的模型能夠在保持較低計算負擔的同時生成高質量的圖像。
實驗
故事可視化
以往的故事生成方法主要利用擴散模型,側重于故事圖像的可視化。這些模型以前一張圖像和文本作為輸入,然后根據當前的文本提示生成下一張圖像。為了公平比較,研究者們將本文的模型調整為僅可視化格式。對于StoryGen,也對其進行訓練,使其使用前面的圖像和文本生成圖像。對于LDM,僅提供文本-圖像對。視覺結果如下圖5所示。
與baseline相比,SEED-Story模型顯示了更好的風格和角色一致性以及更高的質量。下表2中進行了定量評估,以展示有效性。
多模態故事生成
為了進行比較分析,現有的多模態故事生成方法相對較少。為了建立比較基準,在數據集上微調了最近開發的MM-interleaved模型。下圖6中詳細介紹了比較結果。使用FID評估生成圖像的視覺質量。
此外,GPT-4V在多個維度上比較并選擇MM-interleaved和SEED-Story生成結果中的優選項:風格一致性,評估不同圖像之間的風格一致性;故事吸引力,衡量敘述吸引和保持觀眾興趣的能力;以及圖像-文本一致性,評估圖像與其伴隨文本之間的對齊和相關性。
為了進行定性展示,展示了SEED-Story如何有效地幫助用戶控制故事情節。下圖7顯示,使用相同的起始圖像但不同的初始文本,敘述分支成兩個不同的故事情節。
下圖8和圖9中提供了更多案例,以證明本文多模態長故事生成的能力。SEED-Story可以生成帶有引人入勝的情節和生動圖像的長序列。
長故事生成
為了驗證在長故事生成方面的有效性,本文進行了一項實驗,使用SEED-Story模型可視化一個長故事,但采用不同的注意力機制。將數據分成長度為10的故事,以考慮訓練效率。將窗口大小設置為與訓練長度相同。下圖10中的定性結果顯示,當推理長度超過訓練長度時,窗口注意力迅速崩潰。盡管密集注意力和注意力匯聚方法表現更好,但隨著推理序列的加長,仍未能生成有意義的圖像。相比之下,多模態注意力匯聚始終生成高質量的圖像。
在效率方面,多模態注意力匯聚相較于密集注意力表現出顯著的改進,與窗口注意力和普通注意力匯聚相比,僅有適度的時間和內存成本增加。這些額外的成本來自在KV緩存中保留額外的圖像tokens。下表3中的定量結果證實了上述結論。
結論
本文介紹了SEED-Story,這是一種利用多模態大語言模型生成具有豐富敘述文本和上下文相關圖像的多模態長故事的開創性方法。提出了一種多模態注意力匯聚機制,使本文的模型能夠高效地生成長序列。此外,還提出了一個名為StoryStream的高質量數據集,用于有效地訓練和基準測試多模態故事生成任務。
本文轉自 AI生成未來 ,作者:Shuai Yang等
