
🍎個人主頁:小嗷犬的個人主頁
🍊個人網站:小嗷犬的技術小站
🥭個人信條:為天地立心,為生民立命,為往圣繼絕學,為萬世開太平。
基本信息
標題: Visual Alignment Pre-training for Sign Language Translation
作者: Peiqi Jiao, Yuecong Min, Xilin Chen
發表: ECCV 2024
摘要
手語翻譯(Sign Language Translation, SLT)旨在將手語視頻翻譯為文本句子。
盡管gloss序列為SLT中的視覺表征學習提供了有效的對齊監督信息,但標注gloss的高成本限制了其可擴展性。
現有工作在gloss-free的情況下尚未取得令人滿意的結果。
在本研究中,我們將這一挑戰歸因于視覺token和文本token之間的靈活對應關系,并通過從文本句子中構建類似gloss的約束來解決這一問題。
具體而言,我們提出了一種 視覺對齊預訓練(Visual Alignment Pre-training, VAP) 方案,通過以貪婪的方式對齊視覺和文本token來利用視覺信息。
VAP方案增強了視覺編碼器捕獲語義感知視覺信息的能力,并促進了與在大規模語料庫上預訓練的翻譯模塊的更好適配。
針對四個SLT基準的實驗結果證明了VAP的有效性,能夠生成合理的對齊,并顯著縮小與gloss-based方法之間的性能差距。
介紹
主要貢獻
- 探討了gloss annotation在手語翻譯(SLT)中的作用,并展示了在gloss-free設置下利用視覺信息的重要性。
- 提出了視覺對齊預訓練(Visual Alignment Pre-training, VAP),通過以貪婪的方式對齊視覺和文本token來促進視覺表征學習。
- 對gloss-free的SLT模型訓練進行了深入的實驗。實驗結果表明,VAP具有良好的效果,能夠生成可靠的對齊結果,并接近gloss-based的方法。
方法
gloss標注在手語翻譯中的作用
手語翻譯旨在將手語視頻翻譯為對應的文本句子。如圖2所示,通用的SLT網絡可以劃分為一個視覺編碼器 ψ V \psi_V ψV? 和一個翻譯模塊 ψ T \psi_T ψT?。給定一個手語視頻或其他類型的輸入(例如,骨架數據) X \mathcal{X} X 和對應的文本句子 s = { s 1 , ? , s U } s = \{s_1, \cdots, s_U\} s={s1?,?,sU?}, ψ V \psi_V ψV? 從視頻中提取視覺特征 V = { v 1 , ? , v r } \mathcal{V} = \{v_1, \cdots, v_r\} V={v1?,?,vr?},而 ψ T \psi_T ψT? 基于 V \mathcal{V} V 預測 s s s。網絡通過最小化負對數似然來優化,其公式為:
L S L T = ? log ? p ( s ∣ V ; θ ψ V , θ ψ T ) . \mathcal{L}_{SLT} = -\log p(s | \mathcal{V}; \theta_{\psi_V}, \theta_{\psi_T}). LSLT?=?logp(s∣V;θψV??,θψT??).
在自然語言處理(NLP)中,單詞對齊通常指的是在平行文本中指示對應單詞 a = { a i } i = 1 m a = \{a_i\}_{i=1}^m a={ai?}i=1m? 和 b = { b j } j = 1 n b = \{b_j\}_{j=1}^n b={bj?}j=1n? 的過程,可以表示為矩陣 A ∈ R m × n \mathcal{A} \in \mathbb{R}^{m \times n} A∈Rm×n,其中 A i j ∈ { 0 , 1 } A_{ij} \in \{0, 1\} Aij?∈{0,1} 表示 a i a_i ai? 是否與 b j b_j bj? 對應。考慮到 V \mathcal{V} V 和 s s s 之間的對齊關系 A \mathcal{A} A,最近gloss-based的SLT研究中使用的損失函數可以重新表述為:
L = L S L T + L S L R = ? log ? ∑ A p ( A ∣ V ) p ( s ∣ V , A ) ? log ? p ( g ∣ V ) , \mathcal{L} = \mathcal{L}_{SLT} + \mathcal{L}_{SLR} = -\log \sum_{\mathcal{A}} p(\mathcal{A} | \mathcal{V}) p(s | \mathcal{V}, \mathcal{A}) - \log p(g | \mathcal{V}), L=LSLT?+LSLR?=?logA∑?p(A∣V)p(s∣V,A)?logp(g∣V),
其中 g = { g 1 , ? , g M } g = \{g_1, \cdots, g_M\} g={g1?,?,gM?} 表示包含 M M M 個gloss的gloss標注,它與 V \mathcal{V} V 單調對齊。如上文公式所示, L S L T \mathcal{L}_{SLT} LSLT? 的監督來自兩個方面:對齊本身和翻譯與對齊的結合。gloss-based的方法通過引入額外的監督來提高視覺信息的利用率。然而,之前的gloss-free方法表現較差,主要原因在于 V \mathcal{V} V 和 s s s 之間的靈活對應關系,這阻礙了最佳對齊的尋找,并無法為視覺編碼器提供足夠的監督。
基于以上分析,我們認為解決該問題的關鍵在于從文本句子中構建類似gloss的約束,并提出了 視覺對齊預訓練(Visual Alignment Pre-training, VAP) 方案。
視覺對齊預訓練
gloss-based的傳統方法通常利用CTC(連接時序分類)對 ψ V \psi_V ψV? 進行監督,假設 ψ V \psi_V ψV? 中所有的單調對齊均成立,公式如下:
L C T C ( g , V ) = ? log ? ( p ( g ∣ V ; θ ψ V ) ) = ? log ? ( ∑ π p ( π ∣ V ; θ ψ V ) ) L_{CTC}(g, V) = -\log(p(g|V; \theta_{\psi_V})) = -\log\left(\sum_{\pi}p(\pi|V; \theta_{\psi_V})\right) LCTC?(g,V)=?log(p(g∣V;θψV??))=?log(π∑?p(π∣V;θψV??))
其中 π \pi π 表示 V V V 和 g g g 之間的一種對齊關系。我們假設視頻中每個手勢的近似含義可以在對應的文本句子中找到,并嘗試利用 V V V 和 s s s 之間的對齊關系來監督 ψ V \psi_V ψV?。然而, V V V 和 s s s 之間存在多達 2 T ? U 2^{T \cdot U} 2T?U 種潛在的對齊方式,這對在沒有適當約束的情況下(例如單調關系或gloss注解所具有的約束)識別最佳對齊關系提出了挑戰。受近期視覺-語言預訓練技術的啟發,我們提出了一種VAP方案,用于簡化對齊過程,以貪婪方式近似最佳對齊,并為視覺編碼器提供逐幀標簽。
具體而言,給定一個文本句子 s s s,我們首先使用文本編碼器 ψ E \psi_E ψE? 提取其對應的文本特征 ψ E ( s ) \psi_E(s) ψE?(s),然后通過兩個簡單的線性層將 V V V 和 ψ E ( s ) \psi_E(s) ψE?(s) 投影到一個聯合特征空間:
v ~ t = Linear ( v t ) , s ~ u = Linear ( ψ E ( s u ) ) . \tilde{v}_t = \text{Linear}(v_t), \quad \tilde{s}_u = \text{Linear}(\psi_E(s_u)). v~t?=Linear(vt?),s~u?=Linear(ψE?(su?)).
隨后,通過識別每個視覺特征與最相似的文本特征,可以計算對齊關系 A V 2 S ∈ R T × U \mathbf{A}^{V2S} \in \mathbb{R}^{T \times U} AV2S∈RT×U:
A t , u V 2 S = { 1 , for? u = arg ? max ? u ′ f ( v ~ t , s ~ u ′ ) , 0 , otherwise . A^{V2S}_{t,u} = \begin{cases} 1, & \text{for } u = \arg\max_{u'} f(\tilde{v}_t, \tilde{s}_{u'}), \\ 0, & \text{otherwise}. \end{cases} At,uV2S?={1,0,?for?u=argmaxu′?f(v~t?,s~u′?),otherwise.?
其中, f ( ? , ? ) f(\cdot, \cdot) f(?,?) 以余弦相似度的形式實現。為了確保 A V 2 S \mathbf{A}^{V2S} AV2S 的合理性,我們通過以下公式計算視頻和文本的相似性 ρ ( X , s ) \rho(\mathcal{X}, s) ρ(X,s):
ρ ( X , s ) = 1 T ∑ t = 1 T f ( v ~ t , A t V 2 S s ~ ) , \rho(\mathcal{X}, s) = \frac{1}{T} \sum_{t=1}^{T} f(\tilde{v}_t, A^{V2S}_t \tilde{s}), ρ(X,s)=T1?t=1∑T?f(v~t?,AtV2S?s~),
并采用對比學習模式優化 A V 2 S \mathbf{A}^{V2S} AV2S。然而,僅依賴 ρ ( X , s ) \rho(\mathcal{X}, s) ρ(X,s) 進行預訓練可能會導致 ψ V \psi_V ψV? 的輸出坍縮為一個恒定值。為了避免這種情況,我們還計算文本與視頻的相似性 ρ ( s , X ) \rho(s, \mathcal{X}) ρ(s,X),該相似性通過為每個文本特征識別最相似的視覺特征 A S 2 V \mathbf{A}^{S2V} AS2V 來計算。
在此基礎上,對于包含 N N N 個視頻-文本對 { X i , s i } i = 1 N \{ \mathcal{X}^i, s^i \}_{i=1}^N {Xi,si}i=1N? 的小批量,可以通過以下公式計算對比損失:
L Align = ? 1 2 N ( ∑ i = 1 N log ? exp ( ρ ( X i , s i ) / σ ) ∑ j = 1 N exp ( ρ ( X i , s j ) / σ ) + ∑ i = 1 N log ? exp ( ρ ( s i , X i ) / σ ) ∑ j = 1 N exp ( ρ ( s i , X j ) / σ ) ) , L_{\text{Align}} = -\frac{1}{2N} \left( \sum_{i=1}^N \log\frac{\text{exp}(\rho(\mathcal{X}^i, s^i) / \sigma)}{\sum_{j=1}^N \text{exp}(\rho(\mathcal{X}^i, s^j) / \sigma)} + \sum_{i=1}^N \log\frac{\text{exp}(\rho(s^i, \mathcal{X}^i) / \sigma)}{\sum_{j=1}^N \text{exp}(\rho(s^i, \mathcal{X}^j) / \sigma)} \right), LAlign?=?2N1?(i=1∑N?log∑j=1N?exp(ρ(Xi,sj)/σ)exp(ρ(Xi,si)/σ)?+i=1∑N?log∑j=1N?exp(ρ(si,Xj)/σ)exp(ρ(si,Xi)/σ)?),
其中, σ \sigma σ 是用于縮放logits的預定義溫度。通過所提出的 L Align L_{\text{Align}} LAlign?,我們增大了成對的視覺和文本特征序列之間的相似性,這將鼓勵每個特征找到其最相關的配對特征并靠攏。
此外,對齊的計算僅依賴于gloss級別的信息,缺乏對齊時間一致性的約束。上文公式的分解表明,翻譯損失也顯著增強了對齊質量。我們通過實驗(表3)展示,僅通過重新初始化翻譯模塊就可以提升性能,這表明優化對齊過程與提升翻譯能力同步進行的重要性。因此,我們將 L SLT L_{\text{SLT}} LSLT? 納入進來,以確保所用翻譯模塊的時間一致性,從而達到對齊的時間一致性。預訓練階段的最終監督目標如下:
L pre-train = L Align + L SLT . L_{\text{pre-train}} = L_{\text{Align}} + L_{\text{SLT}}. Lpre-train?=LAlign?+LSLT?.
通過以上設計,我們可以計算視覺和文本token之間的近似對齊,并獲得一個語義感知的視覺編碼器。
端到端微調
與一般的機器翻譯數據集相比,公共的手語翻譯(SLT)數據集仍然規模有限。因此,我們采用在大規模語料庫(如 mBART, T5)上預訓練的翻譯模塊來替代淺層翻譯模塊,從而在微調過程中緩解對大量訓練數據的需求。此外,類似于文獻中的 G2T(Gloss2Text)任務,我們設計了一個偽gloss到文本(P2T,Pseudo-gloss2Text)任務,用于微調預訓練翻譯模塊以更好地適應任務。
具體來說,我們可以基于對齊矩陣 A v 2 s A^{v2s} Av2s 為每個手語視頻生成一個偽gloss序列 g ~ \tilde{g} g~?。由于 A v 2 s A^{v2s} Av2s 為每個視覺特征識別出最相似的文本token,而視頻的連續性導致局部窗口內的特征可能會引用相同的token,我們簡單地合并重復的token,通過以下公式獲得 g ~ \tilde{g} g~?:
g ~ = B ( A v 2 s s ) , \tilde{g} = \mathcal{B}(A^{v2s}s), g~?=B(Av2ss),
其中, B \mathcal{B} B 表示合并操作。P2T 的訓練目標可以表述為:
L P 2 T = ? log ? p ( s ∣ g ~ ) . \mathcal{L}_{P2T} = -\log p(s|\tilde{g}). LP2T?=?logp(s∣g~?).
至此,我們已經有了預訓練良好的視覺編碼器和微調良好的翻譯模塊。接下來是對整個模型的端到端微調。我們采用一個兩層的 MLP 作為視覺-語言映射器(V-L 映射器),與之前工作中相同,該模塊負責將視覺特征投影到文本空間。在微調期間,我們仍然包括 L A l i g n \mathcal{L}_{Align} LAlign? 損失以持續改進視覺編碼器,最終的總損失可以表示為:
L f i n e ? t u n e = L A l i g n + L S L T . \mathcal{L}_{fine-tune} = \mathcal{L}_{Align} + \mathcal{L}_{SLT}. Lfine?tune?=LAlign?+LSLT?.
對齊質量評估
在上文中,我們假設視頻中每個手語的大致含義可以在文本句子中找到,并通過識別最相似的文本token來計算對齊關系。基于這一假設,生成的偽gloss g ~ \tilde{g} g~? 也應該與手語視頻單調對齊。然而,由于不同詞匯之間的差異,我們無法直接通過gloss來評估生成對齊關系的質量。因此,我們提出了兩種方法來間接評估生成對齊關系的質量。
如果 g ~ \tilde{g} g~? 與手語視頻單調對齊,它應該能夠像gloss一樣指導 SLT 網絡的學習。因此,我們從零開始訓練一個 SLT 網絡,類似于大多數gloss-based的 SLT 方法,但用偽gloss g ~ \tilde{g} g~? 替代了gloss,其損失函數可以表述為:
L = L S L T + L C T C ( g ~ , V ) , \mathcal{L} = \mathcal{L}_{SLT} + \mathcal{L}_{CTC}(\tilde{g}, V), L=LSLT?+LCTC?(g~?,V),
通過這種基于偽gloss的模型與 VAP 的性能差距可以隱式反映生成對齊關系的質量。
與通過翻譯性能(如詞錯誤率,WER)評估對齊質量相比,通過對齊性能進行評估更為直觀。因此,我們提出通過在預訓練中用偽gloss替換文本句子,計算生成偽gloss與對應gloss之間的 WER 來評估對齊方法的質量。換句話說,這種方法旨在檢查對齊方法是否能夠從無序序列中找到正確的順序。
總的來說,所提出的方法能夠評估對齊關系的質量,包括生成結果和對齊方法本身的質量。
訓練與推理
訓練
如圖 3 所示,VAP 的訓練流程包括三個階段。
視覺編碼器在第 1 階段使用 L pre-train L_{\text{pre-train}} Lpre-train? 進行預訓練。翻譯模塊基于大規模語料庫進行預訓練,并在第 2 階段使用 g ~ \tilde{g} g~? 進行微調。最后,在第 3 階段,整個模型使用 L f i n e ? t u n e \mathcal{L}_{fine-tune} Lfine?tune? 進行端到端微調。
需要注意的是,VAP 是一種gloss-free方法,gloss僅用于如上文所述的偽gloss質量評估。
推理
在經過第3階段的微調后,整個模型被用于推理。具體來說,視覺編碼器首先提取視覺特征 V \mathcal{V} V,然后視覺-語言映射器(V-L mapper)將這些特征投射到文本空間中。接下來,翻譯模塊以自回歸的方式生成文本句子。
實驗
主實驗
消融實驗
可視化
總結
在本文中,我們專注于在無gloss標注情況下,如何在手語翻譯(SLT)中利用視覺信息。
我們提出了一種視覺對齊預訓練(Visual Alignment Pre-training, VAP)方案,通過從文本句子中構建類似gloss的約束來增強視覺編碼器的能力。
VAP以一種貪心的方式逼近視覺特征與文本token之間的最優對齊,同時為視覺編碼器提供逐幀的標簽,并改善其與在大規模語料庫上預訓練的翻譯模塊之間的兼容性。
實驗結果表明,所提出的VAP方案在引導視覺編碼器學習和建立視覺特征與文本token之間的有意義對齊方面是有效的。此外,VAP生成的對齊結果可以作為偽gloss,為手語翻譯模型提供中間監督。
我們預計,所提出的VAP方案將推動未來的研究工作,特別是在將手語翻譯擴展到大規模數據集方面,從而促進手語翻譯領域的發展。