李飛飛團隊統一動作與語言,新的多模態模型不僅超懂指令,還能讀懂隱含情緒

机器之心發表於2024-12-18
人類的溝通交流充滿了多模態的資訊。為了與他人進行有效溝通,我們既使用言語語言,也使用身體語言,比如手勢、面部表情、身體姿勢和情緒表達。因此,為了理解和生成人類動作,理解這些多模態的行為至關重要,而且這一研究方向最近受到的關注也越來越多。

而多模態語言模型看起來頗具潛力,可將多種模態的不同任務統一在一個框架下。

近日,史丹佛大學李飛飛、Gordon Wetzstein 和 Ehsan Adeli 領導的一個團隊也在這方面做出了貢獻,探索了語音 - 文字 - 動作生成任務。並且他們還提出了一個全新的多模態語言模型,可以實現富有表現力的動作生成和理解。

這個模型可以同時接受音訊和文字輸入來生成動作。比如你指定這個人下半身的動作是繞圈走,並根據語音生成上半身動作,它就會配合你生成對應的動作。

更重要的是,它支援動作編輯,可以將原本的繞圈走動更換為其他動作序列(如後退、跳躍、前跑、後跑等)。更換了動作指令,模型生成的動作依然自然流暢,並與語音內容保持良好的協調性。李飛飛團隊統一動作與語言,新的多模態模型不僅超懂指令,還能讀懂隱含情緒
很顯然,這項研究對於李飛飛的長遠「空間智慧」目標大有裨益。這項研究有三位共同一作:Changan Chen(陳昌安)、Juze Zhang 和 Shrinidhi K. Lakshmikanth。
圖片
  • 論文標題:The Language of Motion: Unifying Verbal and Non-verbal Language of 3D Human Motion

  • 論文地址:https://arxiv.org/abs/2412.10523v1

  • 專案頁面:https://languageofmotion.github.io/

論文概覽

首先,該團隊指出,為了統一人類動作的言語和非言語語言,語言模型是至關重要的。他們給出了三點原因:
  • 語言模型能自然地與其它模態連線起來;

  • 語音富含語義,而「建模因笑話而發出的笑聲」這樣的任務需要強大的語義推理能力;

  • 經過大量預訓練之後,語言模型能夠具備強大的語義理解能力。

基於這樣的理解,該團隊打造出了一種全新的多模態語言模型,如圖 1 所示。
圖片
為了使用語言模型來建模動作,首先自然要想辦法將動作變成 token。該團隊的做法是針對不同的身體部位(臉、手、上身、下身)來實現動作的 token 化。事實上,之前已有研究表明,這種劃分策略在建模人臉表情方面確實很有效。

之後,再搭配上現成可用的文字和語音 token 化策略,就可以將任何模態的輸入都表示成 token 了。

為了訓練這個使用多種模態的 token 的語言模型,該團隊設計了一個兩階段式訓練流程:
  • 首先,進行預訓練,目標是透過身體組合動作對齊與音訊 - 文字對齊來對齊各種不同的模態。

  • 預訓練完成後,將下游任務編譯成指令,並根據這些指令訓練模型,使模型能夠遵循各種任務指令。

該團隊自然也進行了實驗驗證,結果發現新方法得到的多模態語言模型確實比其它 SOTA 模型更優。不僅如此,他們還發現,在嚴重缺乏資料的情況下,這種預訓練策略的優勢更為明顯。李飛飛團隊統一動作與語言,新的多模態模型不僅超懂指令,還能讀懂隱含情緒 與其他伴語手勢生成模型的效果對比 李飛飛團隊統一動作與語言,新的多模態模型不僅超懂指令,還能讀懂隱含情緒
與其他文生動作模型的效果對比

儘管該模型在預訓練期間從未見過語音 - 動作資料,但在用於資料相對較少的全新說話人時,它依然達到了頗具競爭力的效能,表現出了顯著的泛化能力。

該團隊表示:「就我們所知,這是首個構建多模態語言模型來統一 3D 人體動作的言語和非語言語言的工作。」

用於動作生成和理解的多模態語言模型

模型的整體結構如下圖 2 所示。
圖片
作者使用針對特定模態的 tokenizer 來處理各種輸入模態。具體來說,他們訓練了一個組合式的身體動作 VQ-VAE,將面部、手部、上半身和下半身的動作 token 化為離散的 token,並將這些針對特定模態的詞彙表(音訊和文字)合併成一個統一的多模態詞彙表。

在訓練過程中,他們使用來自不同模態的混合 token 作為輸入,並透過編碼器 - 解碼器語言模型生成輸出。混合 token 被送入 transformer 編碼器,而解碼器則在每一步以自迴歸的方式預測下一個 token 的機率分佈。

模態對齊預訓練

現有的動作生成模型在針對下游任務訓練時嚴重依賴成對資料。然而,收集高質量的成對動作資料既昂貴又耗時。與此同時,還有大量未配對的每種模態的資料可供探索。受此啟發,作者引入了一個生成式預訓練策略,如圖 3 所示。具體來說,他們在預訓練階段實施了兩種型別的模態對齊:組合動作對齊和音訊 - 文字對齊。
圖片
1、組合動作對齊

我們的身體動作本質上是組合性的,即不同的身體部位是相互協調動作的。例如,當我們高興時,我們的面部會展現出微笑,我們的手勢也傾向於變得更加積極。不同身體部位動作之間的相關性是普遍的,超越了文化界限。這種共享的先驗知識構成了論文所提方法的基礎。為了探索這種對應關係,作者考慮了兩種型別的動作對齊任務:空間和時間。
  • 空間

為了建模這些不同身體部位之間的相關性,作者訓練模型接收隨機選擇的身體部位組合(例如,上半身或上半身 + 面部)並預測另一個隨機選擇的其他身體部位組合(例如,下半身或下半身 + 手部)。這有助於模型學習身體部位之間的空間關係。下面是一個定義任務提示、條件和答案的示例模板。模型接收提示和條件作為輸入,並按預期輸出答案。
圖片
  • 時間

預測動作如何隨時間變化也是一個重要的自監督任務,它使模型能夠捕捉動作的時間演變。作者透過隨機遮蓋(mask)某些動作幀來建模這一點,以幫助模型學習動作的時間先驗。
圖片
2、音訊 - 文字對齊

除了動作模態,作者還設計了音訊和文字模態之間的翻譯任務,以利用大量可用的資料。這些任務遵循「從模態 X 預測模態 Y」的格式。例如,「從音訊預測文字」應該透過將音訊嵌入對映到預訓練良好的文字嵌入空間,來幫助模型提升「從音訊預測動作」方面的效能。

指令遵循後訓練

預訓練之後,模型獲得了對動作模態詞彙中潛在的語法和句法的理解,以及音訊和文字模態之間的良好對齊。然後他們使用成對資料在下游任務上對模型進行微調,例如伴語手勢(co-speech gesture)生成或文字到動作生成。為了使模型在遵循自然人類指令的同時執行所需的下游任務,作者構建了一個多工指令跟隨模板,將幾個關鍵任務(如音訊到動作、文字到動作和情感到動作)格式化為指令。

具體來說,對於每個任務,他們編寫了數十種不同的指令模板,結果產生了超過一千個不同的任務,每個任務都有其獨特的指令提示。下面展示了一個指令模板示例。
圖片
圖片
實驗結果

伴語手勢生成

該團隊在 BEATv2 資料集上評估模型的音訊到動作生成能力。他們使用了 BEATv2 和 Librispeech 兩個資料集(總共包含 1000 小時音訊 - 文字資料和 60 小時動作資料)來訓練模型(在預訓練中,他們確保模型不會看到任何音訊到動作的資料),並在特定說話者的資料上進行測試。他們透過三個指標來評估模型效果:手勢的真實性(FGD)、與語音的同步性(BC)以及動作的多樣性(Diversity),以全面衡量模型的表現。

實驗結果顯示,該模型在所有指標上均優於現有方法。得益於預訓練語言模型的語義理解能力,無需額外特徵輔助即可達到良好效果。實驗證明,語言預訓練和多模態預訓練對模型效能至關重要,移除任一環節都會導致效能顯著下降。圖 4 展示的定性結果表明,模型能生成與語音同步的自然手勢動作。
圖片
生成式預訓練的效果

由於為說話者收集動作資料既耗時又依賴專業裝置,研究團隊首先驗證了各個預訓練任務的重要性,然後探究生成式預訓練能否提升模型在新說話者上的泛化能力,從而減少所需的訓練資料量。

為此,他們分別移除了音訊 - 文字對齊任務 (w/o A2T)、空間身體動作對齊任務 (w/o spatial)、時序身體動作對齊任務 (w/o temporal) 以及整體身體對齊任務 (w/o motion)。

表 1 展示了實驗結果。(w/o A2T) 降低了模型效能,說明音訊與文字嵌入空間的對齊有助於語義理解和手勢生成任務。移除空間動作預測、時序動作預測或同時移除兩者都會損害模型的效能。這表明在預訓練階段,學習時空動作先驗對下游任務很重要。
圖片
基於這些發現,該團隊假設預訓練策略可以捕獲強大的多模態關聯和動作先驗,從而減少下游任務對配對資料的依賴。

為驗證這一假設,研究團隊遵循上一節中的設定,在預訓練階段限制模型可用的訓練資料量。值得注意的是,在模型的預訓練階段,研究團隊沒有使用任何音訊和對應動作的配對資料(即音訊 - 動作對)來訓練模型。研究團隊將資料量設為 1/2^n (n∈[1...5]),並在每種設定下訓練完整模型、無預訓練模型和 EMAGE 基線直至收斂,並在相同測試集上評估。

實驗結果如圖 5 所示。僅使用 1/32 的配對訓練資料,該團隊的完整模型相比無預訓練模型,FGD 分數更低。隨著配對微調資料量增加,效能差距雖有所減小,但完整模型始終優於無預訓練模型和 EMAGE 基線。這證明了預訓練的價值以及模型在極度缺乏資料時的出色泛化能力。
圖片
統一音訊和文字的可編輯動作生成

這個模型可以同時接受音訊和文字輸入來生成動作。首先,在 BEATv2 和 AMASS 兩個動作資料集上訓練動作分詞器。預訓練和後訓練階段分別採用統一的任務設定,後訓練階段整合了音訊到動作和文字到動作的指令,文字部分使用 HumanML3D 的標註資料。

這種雙重輸入的設計讓模型具備了可編輯動作生成的能力。模型可以根據語音內容和文字指令生成全身動作,比如生成一個邊走邊說話的人物動作。研究團隊還實現了分別控制不同身體部位的動作,並能將它們自然地組合在一起。這項技術對遊戲和 VR 等應用有重要價值。圖 6 展示了幾個實際 demo,說明模型能夠準確響應音訊和文字的雙重指令。
圖片
根據動作預測情緒

憑藉靈活的輸入 / 輸出模態,這種新的多模態語言模型還在一些新任務上展現出了出色的能力,比如不同身體部位或模態之間的轉譯。

該團隊提出了一個新任務來考驗這個新模型:根據動作預測情緒,也就是閱讀人的肢體語言。

為此,他們提取了 BEATv2 的情緒標籤(中性、憤怒、快樂、恐懼、厭惡、悲傷、輕蔑和驚訝),並將其轉換為了訓練指令。結果見表 3。
圖片
在這項任務上,MotionGPT 完全失敗,其表現與隨機亂猜差不多,因為它的訓練目標就只是描述一般動作,而不是細微的手勢動作和肢體語言。新模型的表現遠遠優於隨機和 MotionGPT,這表明其能夠根據動作預測情緒。以下動圖展示了一個示例。
圖片

相關文章