浅读A Simple Multi-Modality Transfer Learning Baseline for Sign Language Translation

浅读A Simple Multi-Modality Transfer Learning Baseline for Sign Language Translation

https://arxiv.org/abs/2203.04287

Abstract

这篇论文提出了一种简单的​迁移学习基线方法,用于手语翻译。现有的手语数据集(如PHOENIX-2014T、CSL-Daily)只包含大约10K-20K对手语视频、手语标注和文本,数量比训练口语翻译模型的平行数据少一个数量级。因此,数据是训练有效的手语翻译模型的瓶颈。为了缓解这个问题,我们提出了逐步从包含大量​外部监督的通用领域数据集到内部领域数据集进行预训练的模型。 具体而言,我们在通用领域的人类动作数据集和内部领域的手语到手语标注数据集上对手语到手语标注的​视觉网络进行预训练,同时在通用领域的多语言语料库和内部领域的手语标注到文本翻译语料库上对手语标注到文本翻译网络进行预训练。联合模型通过一个名为​视觉-语言映射器的附加模块连接这两个网络。 这个简单的基线方法在两个手语翻译基准测试中超过了先前的最新结果,证明了迁移学习的有效性。由于其简单性和强大的性能,这种方法可以作为未来研究的坚实基线。代码和模型可以在https://github.com/FangyunWei/SLRT 上获取。

We pretrain the sign-to-gloss visual network on the general domain of human actions and the within-domain of a sign-to-gloss dataset,

and pretrain the gloss-to-text translation network on the general domain of a multilingual corpus and the within-domain of a gloss-to-text corpus.

transfer learning

external supervision

visual network

visual language mapper

迁移学习之——什么是迁移学习(Transfer Learning) (zhihu.com)

什么是迁移学习

在某些机器学习场景中,由于直接对目标域从头开始学习成本太高,因此我们期望运用已有的相关知识来辅助尽快地学习新知识。比如,已经会下中国象棋,就可以类比着来学习国际象棋;已经学会英语,就可以类比着来学习法语。

迁移学习(Transfer Learning)通俗来讲就是学会举一反三的能力。

迁移学习通常会关注有一个源域 D s D_s Ds和一个目标域 D t D_t Dt的情况,其中源域 image 使用表示, x i , y i x_i,y_i xi,yi 分别表示数据样本和对应的类别标签,目标域使用 image 表示。

在了解了迁移学习中的源域和目标域后,迁移学习的定义如下:

给定源域 D s D_s Ds和学习任务 T s T_s Ts 、目标域 D t D_t Dt 和学习任务 T t T_t Tt,迁移学习的目的是获取源域 D s D_s Ds 和学习任务 T s T_s Ts 中的知识以帮助提升目标域中的预测函数 f t ( ⋅ ) f_{t}(\cdot) ft()的学习,其中 D s ≠ D t D_{s}\ne D_{t} Ds=Dt或者 T s ≠ T t T_{s}\ne T_{t} Ts=Tt

迁移学习的研究与应用领域

迁移学习通常适用于下面的一些场景:

(1)虽然有大量的数据样本,但是大部分数据样本是无标注的,而且想要继续增加更多的数据标注,需要付出巨大的成本。在这种场景下,利用迁移学习思想,可以寻找一些和目标数据相似而且已经有标注的数据,利用数据之间的相似性对知识进行迁移,提高对目标数据的预测效果或者标注精度。

(2)想要获取具有更强泛化能力,但是数据样本较少. 许多应用场景数据量小。当前机器学习的成功应用依赖于大量有标签数据的可用性。然而,高质量有标签数据总是供不应求。传统的机器学习算法常常因为数据量小而产生过拟合问题,因而无法很好地泛化到新的场景中。

1.Introduction

手语是聋哑人之间的视觉信号交流方式。这些语言主要通过手部动作来表达,同时还受到身体、头部、嘴巴、眼睛和眉毛的运动的极大帮助。虽然用于自动机器翻译口语的技术已经成功投入生产,但手语翻译(SLT)的研究落后于口语翻译,仍处于早期开发阶段。有效的自动手语翻译系统可能有助于在聋人和听力正常的人之间建立桥梁。

现有的手语翻译方法遵循最初用于口语的神经机器翻译(NMT)框架,区别在于源语言是以时空像素表示,而不是离散的标记。具体而言,手语视频首先通过​视频主干网络提取中间表示,然后通过NMT将其映射到目标语言文本。中间表示通常由手语标注进行监督, 其中每个手语标注对应于连续视频输入中单个手语的语义含义(例如,快乐、悲伤)。

neural machine translation NMT

spatio temporal pixels

discrete tokens

video backbone network

神奇的神经机器翻译:从发展脉络到未来前景(附论文资源) - 知乎 (zhihu.com)

机器翻译(MT)是借机器之力「自动地将一种自然语言文本(源语言)翻译成另一种自然语言文本(目标语言)」。在20 世纪 50 年代到 80 年代,机器翻译都是通过研究源语言与目标语言的语言学信息来做的,也就是基于词典和语法生成翻译,这被称为基于规则的机器翻译(RBMT)。随着统计学的发展,研究者开始将统计模型应用于机器翻译,这种方法是基于对双语文本语料库的分析来生成翻译结果。这种方法被称为统计机器翻译(SMT),它的表现比 RBMT 更好,并且在 1980 年代到 2000 年代之间主宰了这一领域。1997 年,Ramon Neco 和 Mikel Forcada 提出了使用「编码器-解码器」结构做机器翻译的想法 。几年之后的 2003 年,蒙特利尔大学 Yoshua Bengio 领导的一个研究团队开发了一个基于神经网络的语言模型 ,改善了传统 SMT 模型的数据稀疏性问题。他们的研究工作为未来神经网络在机器翻译上的应用奠定了基础。

神经机器翻译的诞生

2013 年,Nal Kalchbrenner 和 Phil Blunsom 提出了一种用于机器翻译的新型端到端编码器-解码器结构 。该模型可以使用卷积神经网络(CNN)将给定的一段源文本编码成一个连续的向量,然后再使用循环神经网络(RNN)作为解码器将该状态向量转换成目标语言。他们的研究成果可以说是神经机器翻译(NMT)的诞生;神经机器翻译是一种使用深度学习神经网络获取自然语言之间的映射关系的方法。NMT 的非线性映射不同于线性的 SMT 模型,而且是使用了连接编码器和解码器的状态向量来描述语义的等价关系。此外,RNN 应该还能得到无限长句子背后的信息,从而解决所谓的「长距离重新排序(long distance reordering)」问题 。但是,「梯度爆炸/消失」问题让 RNN 实际上难以处理长距依存(long distance dependency);因此,NMT 模型一开始的表现并不好。

用于长距问题的记忆

一年后的 2014 年,Sutskever et al. 和 Cho et al. 开发了一种名叫序列到序列(seq2seq)学习的方法,可以将 RNN 既用于编码器也用于解码器 ,并且还为 NMT 引入了长短时记忆(LSTM,是一种 RNN)。在门机制(gate mechanism)的帮助下(允许在 LSTM 中删除和更新明确的记忆),「梯度爆炸/消失」问题得到了控制,从而让模型可以远远更好地获取句子中的「长距依存」。

LSTM 的引入解决了「长距离重新排序」问题,同时将 NMT 的主要难题变成了「固定长度向量(fixed-length vector)」问题:如图 1 所示,不管源句子的长度几何,这个神经网络都需要将其压缩成一个固定长度的向量,这会在解码过程中带来更大的复杂性和不确定性,尤其是当源句子很长时。

注意力

自 2014 年 Yoshua Bengio 的团队为 NMT 引入了「注意力(attention)」机制之后,「固定长度向量」问题也开始得到解决。注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector)。然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。自那以后,NMT 的表现得到了显著提升,「注意力编码器-解码器网络」已经成为了 NMT 领域当前最佳的模型。​​

尽管采用了先进的神经机器翻译框架,但目前的结果远未达到令人满意的水平。对于PHOENIX-Weather-2014T测试数据集,最好的手语翻译性能报告在BLEU-4指标上为24.32,而基线Transformer在英德翻译中达到了30.9的BLEU-4分数。我们假设阻碍手语翻译进展的关键因素是训练数据的规模。 要有效训练典型的NMT模型,通常需要一个包含100万个平行样本的语料库。然而,现有的手语数据集小了一个数量级,只包含不到20K个平行样本。

在本文中,我们研究了一种​多模态预训练方法 ,以应对手语翻译中的数据稀缺问题。 虽然预训练和迁移学习在视觉、语言和跨模态任务中取得了显著的性能提升,但在手语翻译中仍然不够充分。我们的工作旨在利用它们在手语翻译中的优势。

multi-modal pretraining approach

手语翻译可以分解为两个不相交的任务: 将手语视频转换为语义手语标注的视觉动作识别任务(Sign2Gloss),以及将手语标注映射到口语文本的语言翻译任务(Gloss2Text)。我们的迁移学习方法逐步对每个任务进行预训练,然后微调联合模型。对于Sign2Gloss,我们首先在通用领域上对视觉模型进行预训练,学习通用的人类动作,然后将其转移到内部领域以学习​细粒度的手语标注 。 类似地,对于Gloss2Text,我们采用mBART,这是一个在大规模通用领域​多语言语料库上进行预训练的​去噪自编码器 ,并将其转移到手语标注到文本翻译的内部领域任务上。 通过利用现有数据集和监督信息,可以有效地将其迁移到手语翻译,从而减少了获取大规模平行数据的必要性。

a visual action recognition task

semantic glosses

fine-grained glosses

denoising auto-encoder

multilingual corpus

通过训练良好的Sign2Gloss和Gloss2Text模块,我们可以构建一个名为Sign2Gloss2Text的两阶段流水线,从视频中生成一个手语标注序列,然后将预测的手语标注序列翻译为文本。这种两阶段的流水线也在中实现,并展示了有希望的结果。然而,手语标注是语言模态的离散表示,没有编码来自手语视频的​时空视觉信息 ,例如面部表情,这可能导致翻译性能下降。例如,听障人士使用夸张的面部表情来传达副词“非常”,但这种信息在手语标注中被忽略了。相反,标注者和语言学家必须考虑这些副词,以生成完整和语义准确的翻译句子。因此,需要融合视觉和语言模态的方法。

pipeline

spatio-temporal visual information

为此,我们引入了一个​视觉-语言映射器 ,它将视觉模型中的手语分类之前的视觉特征连接到翻译模型中的手语嵌入。 通过这个映射器,在联合训练中对整个模型进行优化,并且规避了离散的手语表示。该映射器简单地实现为一个具有两个隐藏层的全连接多层感知器(MLP)。图1展示了我们的设计。

image

We introduce a visual-language mapper which connects the visual features before gloss classification in the visual model to the gloss embedding in the translation model.

visual-language mapper

discrete gloss representation

Multilayer Perceptron MLP

与以往的工作相比,以手工方式集成来自口型或手势姿势的多个线索或采用先进的机器翻译技术(如反向翻译)来改进翻译性能,我们的整体框架非常简单,是在标准NMT模型之上的迁移学习方法。 一些以前的工作通过在人类动作识别上预训练视觉骨干网络或加载预训练的词嵌入来进行SLT的迁移学习,而我们是第一个以渐进方式采用​通用领域和​内部领域预训练,并将预训练的口语语言模型融入SLT的方法。 我们的实验结果表明,这种渐进式预训练的视觉和翻译模型极大地提升了性能。我们简单的方法在PHOENIX-2014T 和CSL-Daily 等数据集上大幅超过了所有现有的方法,包括采用半监督学习的方法。

We are the first to adopt both general-domain and within-domain pretraining in a progressive manner and incorporate pretrained spoken language model into SLT.

word embeddings

general-domain

within-domain

2.Related Work

Sign Language Recognition

在手语理解中,一个基本任务是孤立手语识别(ISLR),其目标是为短视频片段识别一个手语标签[2, 19, 20, 28, 30, 43]。更具挑战性的连续手语识别(CSLR)任务旨在仅使用弱句级注释将连续的手语视频转换为手语序列[9, 22, 23, 37, 50]。我们的工作充分利用了手语标注对SLT的支持,通过将ISLR中的领域内知识转移到CSLR和SLT中。

Sign Language Translation

手语翻译(SLT) 旨在将原始视频序列翻译为口语句子。现有的工作尝试将这个任务构建为神经机器翻译(NMT)问题。然而, 与NMT从大规模平行语料中受益不同,SLT在数据稀缺方面面临很大困难。 为了解决这个问题,[6]联合训练了SLR和SLT,对翻译编码器施加正则化约束;[49]提出了一种数据增强策略,通过使用注释作为中介将文本反向翻译成视觉特征。此外,[5, 50]手动设计了复杂的多线索通道,以建模手语中多个视觉线索的协作,而[29]引入了一个时间语义金字塔网络,以捕捉手语视频中多个级别的时间粒度。与这些方法相比 ,我们的方法通过​渐进预训练利用了大量的外部监督,既简单又更有效。

Isolated Sign Language Recognition ISLR

Continuous Sign Language Recognition CSLR

weak sentence-level annotations

enforce regularization

data augmentation strategy

multi-cue channels

temporal semantic pyramid network

temporal granularity

progressive pretraining

Action Recognition

一个相关的研究领域可能有助于手语的视觉建模是动作识别,许多研究关注网络架构和大规模数据集构建。由于细粒度手势理解是人类动作识别的一个特例,一些ISLR和SLT的工作使用在动作分类任务上预训练的权重来初始化它们的视觉网络。我们以渐进的方式采用通用领域的动作识别预训练以及内部领域的Sign2Gloss预训练。

Pretraining for Text Generation

最近,自然语言处理领域在大规模自监督预训练方面取得了快速进展,这为下游任务带来了显著的改进。特别是,在大规模单语语料上预训练语言模型可以极大地改善资源稀缺的NMT。一些多模态任务,如图像字幕和视觉问答,也利用预训练的语言模型作为双模态Transformer的初始化。由于手语是一个完整的语言系统,强大的自然语言处理技术很可能被推广到SLT中,以帮助解决数据稀缺问题。我们是第一个在SLT中应用预训练的口语语言模型的工作。

Transfer learning in SLT

一些以前的工作尝试将外部的视觉或语言知识转移到SLT中。在视觉预训练方面,[29]在Kinetics-400 和两个ISLR数据集上预训练视觉骨干网络。[4, 6, 49, 50]在具有手语标注内部领域的Sign2Gloss任务上预训练他们的视觉骨干网络。我们采用通用领域和内部领域的渐进预训练方法。 在语言预训练方面,[29, 46]将预训练的词嵌入加载到解码器的嵌入层,但未能证明它们的有效性。我们是第一个利用强大的预训练语言模型的工作,这带来了显著的改进。

network architecture

large-scale dataset construction

self-supervised pretraining

monolingual corpus

3.Method

在本节中,我们介绍了一种简单的手语翻译方法。给定一个输入手语视频 V = ( v 1 , . . . , v T ) V = (v_1, ..., v_T) V=(v1,...,vT),其中 T 是帧数,我们的目标是学习一个神经网络 N θ ( ⋅ ) N_θ(·) Nθ(),可以直接从手语视频 V V V 预测出与之相关的口语句子 S = ( s 1 , . . . , s U ) S = (s_1, ..., s_U) S=(s1,...,sU)

S = N θ ( V ) . ( 1 ) S = N_θ(V). (1) S=Nθ(V).(1)

为了从动作识别和机器翻译的通用领域中转移知识,我们将手语翻译框架分解成两个不相交的任务:一个将手语视频转换为语义标签的视觉动作识别任务(Sign2Gloss),以及一个将标签映射为口语文本的语言翻译任务(Gloss2Text)。这样我们可以分别预训练每个任务,然后微调联合模型。

在我们的方法中,整体网络 N θ ( . ) N_θ(.) Nθ(.) 由三个子网络组成:

原始视频转换为视觉特征的视觉编码器网络 E E E

语言特征翻译为口语文本的序列到序列翻译网络 D D D

在视觉模态和语言模态之间建立桥梁的视觉-语言映射器 M M M​,用于联合训练。

该框架如图2所示。

image

在这项工作中,我们证明使用这样一个简单的、无花俏的框架可以实现高水平的手语翻译性能。除了它的简单性和高性能外,我们揭示了当前手语翻译系统的瓶颈主要在于缺乏训练数据,因此一种更灵活的架构,可以通过来自视觉和语言两方面的预训练充分利用尽可能多的训练数据,更具优势。

neural network

visual encoder network

visual-language mapper

3.1. Visual Encoder Network and Pretraining

视觉编码器网络 E E E​将原始视频输入转换为视觉特征。这个阶段的视觉特征主要用于预测​语义标签 , 本质上是一个细粒度的动作识别任务。图3显示了网络架构,包括一个视频主干网络和一个轻量级的头部网络,用于进一步编码时序信息。

image

gloss labels

temporal information

Video Backbone

我们使用 S3D 作为主干网络,因为它在性能和推理速度之间有很好的平衡。我们将每个大小为 T ×224×224×3 的视频输入主干网络。由于我们的目标是提取用于预测标签序列的​密集表示 ,因此只使用 S3D 的前四个块,提取的 S3D 特征经过​空间池化后的大小为 T /4×832。提取的特征然后作为我们头部网络的输入。

dense representation

spatial pooling
在这里插入图片描述
在这里插入图片描述

Head Network

如图3所示,我们的轻量级头部网络包括一个​投影块 ,其中包含一个​时间线性层 、一个​批归一化层和一个​ReLU层 ,以及一个​时间卷积块 , 其中包含两个时间卷积层,时间核大小为3,步长为1,一个线性平移层和一个ReLU层。我们将S3D特征输入到投影块和后续的时间卷积块中, 生成大小为 Z ∈ R T / 4 × 512 Z ∈ R^{T/4×512 } ZRT/4×512的特征表示。我们将其称为gloss表示, 因为它在高维空间中表示gloss类别。然后,应用​线性分类器和Softmax函数来提取基于帧的gloss概率 P ∈ R T / 4 × K P ∈ R^{T/4×K} PRT/4×K,其中 K K K 是gloss词汇表的大小。

屏幕截图 2024-01-21 195947

projection block

temporal linear layer

batch normalization layer

batch normalization layer

ReLU layer

temporal convolutional block

temporal kernel

linear translation layer

gloss categories

linear classifier

Progressive Pretraining

我们通过先在通用领域进行预训练来逐步预训练​视觉编码器 E E E​ ,首先在通用领域学习通用的人类动作知识,然后将其迁移到学习细粒度gloss的同领域任务中。 具体而言,对于通用领域的预训练,我们在动作识别数据集 Kinetics-400 上预训练我们的 S3D 主干网络,然后在孤立手语识别数据集 WLASL 上进行预训练。 接下来,对于同领域的预训练,我们在SLT数据集中提供的连续gloss注释的监督下,通过Sign2Gloss任务训练我们的视觉编码器。

与口语文本不同,连续的gloss注释在时间上与手语信号保持一致。我们利用众所周知的连接主义时序分类(CTC)损失在gloss注释的监督下进行同领域预训练。CTC损失考虑了两个序列之间的所有可能对齐,同时最小化错误。 具体而言,对于输入视频 V V V 和相应的真实gloss序列 G G G,我们通过CTC在所有可能的 V V V G G G对齐上进行边际化计算 p ( G ∣ V ) p(G|V) p(GV)
p ( G ∣ V ) = ∑ π ∈ B p ( π ∣ V ) , ( 2 ) p(G|V) = ∑ _{π∈B} p(π|V), (2) p(GV)=πBp(πV),(2)
其中 π π π表示一条路径, B B B是对应于 G G G的所有可行路径的集合。概率 p ( π ∣ V ) p(π|V) p(πV) 由视觉编码器 E E E 计算。CTC损失被定义为:
L = − l n p ( G ∣ V ) . ( 3 ) L = − ln p(G|V) .(3) L=lnp(GV).(3)
在这里插入图片描述
connectionist temporal classification (CTC) loss

Gloss Sequence Prediction

一旦预训练完成,我们的视觉编码器网络就可以用于根据手语视频预测gloss序列。 如图3所示,我们首先使用视觉编码器提取gloss概率,然后利用CTC解码生成预测的gloss序列。 CTC解码的详细信息可以在补充材料中找到。

屏幕截图 2024-01-21 195947

3.2. Translation Network and Pretraining

现在我们介绍翻译网络​ D D D​ ,它学习了gloss序列和口语文本之间的映射关系, 并提出了相应的渐进预训练过程。

Translation Network

受到神经机器翻译和多语言去噪预训练的最新进展的启发,我们使用mBART作为我们的翻译网络的初始化,mBART是一个在大规模​多语言语料库上预训练的​序列到序列​去噪自编码器 。 该网络的架构是一个标准的序列到序列Transformer,编码器有12层,解码器有12层,模型维度为1024,使用16个注意力头。

multilingual denoising pretraining

multi-lingual corpus

denoising auto-encoder

Progressive Pretraining,渐进预训练

在mBART初始化的基础上,我们的翻译网络已经在​通用语言领域进行了预训练。我们进一步在Gloss2Text任务上进行同领域预训练,将mBART转移到gloss到文本翻译的特定领域。我们的目标是训练一个能够从给定的gloss序列 G G G预测文本句子 S S S的翻译网络。具体而言,我们使用mBART的​SentencePiece分词器将​ G G G​和​ S S S​都分割成​子词单元 ,并通过mBART的预训练​词嵌入层将​独热向量投影到​密集嵌入中。然后,我们将位置嵌入添加到单词嵌入中,作为编码器和解码器堆栈底部的输入。我们在Gloss2Text语料库上训练mBART,最小化序列到序列的​交叉熵损失 L = − l o g P ( S ∣ G ) L = − log P(S|G) L=logP(SG)​ 。 在得到训练良好的翻译模型之后,我们可以根据gloss序列预测口语文本句子。从真实的手语gloss序列翻译为口语文本(Gloss2Text)被认为是SLT任务性能的一种虚拟上限。而先利用Sign2Gloss模型(我们的视觉编码器)生成gloss序列,然后将预测的gloss序列输入到经过良好训练的Gloss2Text流水线中进行翻译的两阶段翻译任务被称为Sign2Gloss2Text。然而,使用gloss作为中间表示可能不是最优的,因为gloss无法完全编码时空视觉信息。为了克服这个限制,我们通过V-L映射器进行联合训练来桥接视觉和语言模态。

the general language domain

SentencePiece tokenizer

sub-word units

one-hot vectors

dense embeddings

word embedding layer

cross-entropy loss

spatio-temporal visual information

vision and language modalities

3.3. End-to-end Sign Language Translation

到目前为止,我们已经描述了视觉编码器和翻译网络的架构和预训练过程。现在,我们引入了视觉-语言映射器(Visual-Language Mapper,简称V-L Mapper),它建立了连接两个网络的桥梁,以模拟不同模态的数据,实现联合训练的目的。我们的V-L Mapper实际上是一个具有两个隐藏层的全连接​多层感知器 。 如图2所示,它将视觉编码器提取的视觉特征转换为语言特征,然后作为翻译编码器的输入。
在这里插入图片描述

我们在第4.4.3节中研究了将不同的视觉特征输入V-L Mapper的效果,并使用手语注释(见图3)作为我们的默认设置。多亏了V-L Mapper,我们的框架可以在端到端的方式下进行训练,同时受到CTC损失和翻译损失的联合监督。 令人惊讶的是,我们的框架甚至在RWTH-PHOENIX-Weather-2014T测试集上超过了公认的上限,即通过使用经过良好训练的Gloss2Text模型将真实手语手势序列翻译为口头语言文本。这是因为我们的框架不仅编码了手语视频中的​时空信息 ,还编码了文本转录中的​语义知识 , 相比于仅基于语言模态的Gloss2Text模型,提供了更多线索。

Multilayer Perceptron MLP

spatio-temporal information

semantic knowledge

4. Experiments

4.1. Datasets and Evaluation Metrics,数据集和评估指标

RWTH-PHOENIX-Weather 2014T

PHOENIX-2014T是近年来在SLT领域中最广泛使用的基准数据集之一。该数据集被收集自德国公共电视台PHOENIX三年间的天气预报新闻,包括了九位手语演员用德国手语(DGS)表演的8,000个RGB手语视频,以及句子级别的手语注释和从新闻播报中转录的德文翻译。PHOENIX-2014T数据集分为训练集、开发集和测试集,分别包含了7,096、519和642个视频片段。该数据集的手语注释词汇量为1,066个手势注释,德文文本的词汇量为2,887个。研究论文中将他们的方法与现有的最先进方法在开发集和测试集上进行了比较,同时也在该数据集上进行了所有消融研究。

train, dev and test splits

ablation studies

CSL-Daily

CSL-Daily是一个最近发布的中国手语(CSL)翻译数据集,是在一个工作室中由十位不同的手语演员表演的20,000个三元组 (视频、手势注释、文本) 。该数据集涵盖了家庭生活、医疗护理和学校生活等主题。 CSL-Daily数据集包含了18,401个训练集片段,1,077个开发集片段和1,176个测试集片段。该数据集的手势注释词汇量为2,000个,中文文本的词汇量为2,343个。我们将他们的方法与最先进的方法在开发集和测试集上进行了比较。

Evaluation Tasks

我们进行了以下任务的性能评估:

  • Sign2Gloss: 根据原始视频输入预测手势注释序列。这个任务也被称为CSLR(Continuous Sign Language Recognition,连续手语识别),主要用于评估视觉编码器的性能。
  • Gloss2Text: 将真实的手势注释序列翻译为文本。其结果通常被视为手语翻译任务的上界。该任务还用于评估翻译模型的性能。
  • Sign2Gloss2Text: 一个两阶段的流程,首先采用Sign2Gloss模块预测手势注释序列,然后通过Gloss2Text模块将预测的手势注释翻译为文本。这用于评估将视觉编码器和翻译模型通过预测的手势注释序列连接起来的流水线方法。
  • Sign2Text: 直接将手语视频翻译为文本,这是我们的目标。

与之前的研究论文一样,我们采用Word Error Rate(WER)评估Sign2Gloss任务的性能,使用ROUGE和BLEU评估其他三个任务的性能。
在这里插入图片描述

4.2. Implementation details

模型的实现采用了PyTorch框架,关于所有超参数的详细信息可以在补充材料中找到。

Visual Encoder Pretraining

视觉编码器是通过渐进式预训练的方式从通用领域到特定领域进行训练的。首先,在两个动作识别数据集上顺序预训练S3D骨干网络, 这两个数据集分别是包含400个动作类别的最流行的人体动作识别数据集Kinetics-400和包含2,000个孤立手势类别的大规模Word-Level美国手语视频数据集WLASL。训练过程遵循之前的研究论文[45]中描述的方法。视频片段通过S3D骨干网络的五个块进行处理,然后通过一个3D平均池化层和一个线性分类层进行动作分类预测。接下来,我们使用在Sign2Gloss任务上的CTC损失(​ L = − l n p ( G ∣ V ) . ( 3 ) L = − ln p(G|V) .(3) L=lnp(GV).(3)​ )进行领域内预训练。在领域内预训练中,我们只使用预训练的S3D的前四个块,并将S3D特征在空间上池化为T/4×832的大小,作为头部网络的输入。

average pooling layer

linear classification layer

Translation Pretraining

对于通用领域的预训练,我们使用了mBART-large-cc253作为语言模型的初始参数。 mBART-large-cc253是在CC25上进行预训练的,CC25是一个包含了来自Common Crawl的大小为1300GB的多语言语料库,涵盖了25种语言。我们还尝试了在16GB德文单语语料库上进行预训练的GPT2模型。除非另有说明,我们默认使用mBART模型。

Joint Training

我们将两个独立预训练的模块作为初始化参数。线性分类器之前的特征(即手势注释的表示)通过V-L映射器投影为1024维的向量,并添加​位置嵌入以形成翻译编码器的输入。整个网络在CTC损失和交叉熵损失的联合监督下进行训练, 两个损失的权重都设置为1.0。

position embeddings

cross-entropy loss

4.3. Comparison with State-of-the-art Methods,与最先进的方法的比较

我们在PHOENIX-2014T和CSL-Daily数据集上将我们的方法与最先进的方法进行了比较,如表1和表2所示。在没有集成多重线索特征和高级数据增强策略(如反向翻译)的情况下,我们简单的方法在PHOENIX-2014T和CSL-Daily上显著超越了所有对应的方法。

在这里插入图片描述
在这里插入图片描述

4.4. Ablation Study, 消融研究

4.4.1 Pretraining of Visual Encoder

我们的视觉编码器是以渐进的方式进行预训练的。我们首先研究了使用不同通用领域预训练策略的效果:
• Scratch. 不进行通用领域预训练,S3D骨干网络从头开始训练。
• K-400. 在Kinetics-400上进行通用领域预训练,这是一个大规模的动作识别数据集。
• K-400→WLASL. 我们进一步在K-400预训练的S3D骨干网络上进行WLASL的大规模单词级手语识别数据集的预训练。
我们在这些预训练模型上进行领域内的Sign2Gloss预训练,并在表3中报告其对Sign2Gloss和Sign2Text任务的影响。

在这里插入图片描述

Sign2Gloss的性能直接反映了不同通用领域预训练模型的效果。尽管K-400是一个动作分类数据集,但是与从头开始训练的模型相比,使用在其上进行预训练的模型作为初始化仍然改善了Sign2Gloss的性能,在测试集上将WER从28.06降低到23.50。使用K-400→WLASL作为初始化进一步提升了性能,在测试集上达到了22.45的WER。尽管WLASL和PHOENIX-2014T之间存在差异,例如前者旨在解决美国手语的孤立手语识别,而后者旨在解决德国手语的连续手语识别,但在WLASL上进行通用领域预训练仍然学习到了相关的表示,例如低级手势特征。对于Sign2Text任务,视觉预训练的增益变得更小,这表明学习有利的视觉特征并不是影响Sign2Text的唯一决定因素。例如,翻译模型提供了补充信息。此外,为了验证领域内Sign2Gloss预训练对Sign2Text的重要性,我们将仅在K-400和WLASL上进行预训练的视觉编码器加载到Sign2Text的联合训练中。如表3的最后一列所示,跳过领域内预训练会严重影响性能,在两个数据集上的BLEU-4分数减少了近7个点。我们得出结论,通用领域和领域内预训练都对我们方法的高性能有所贡献。

4.4.2 Pretraining of Translation Model

SLT(手语翻译)在数据稀缺问题上存在严重困扰。最近,语言预训练在低资源NMT(神经机器翻译)方面显示出了有希望的结果,这启发我们将语言预训练引入到SLT中。

General-domain Pretraining Improves Gloss2Text

我们首先使用两个流行的预训练语言模型进行实验,即mBART 和GPT2 ,通过直接在PHOENIX Gloss2Text任务上进行评估,以验证使用不同架构和不同大规模通用领域语料库的效果。表4显示了结果。

在这里插入图片描述

作为基准,我们使用与mBART或GPT2相同架构但具有随机初始化的两个翻译网络进行训练。mBART优于GPT2,表明mBART的编码器-解码器架构和双向注意力使其比仅具有单向注意力解码器的GPT2更适用于Gloss2Text。然而,对大规模语料库进行的通用领域预训练改进了mBART和GPT2在Gloss2Text上的性能,而在CC25上预训练的mBART实现了最佳性能。我们在后续实验中使用mBART。此外,mBART在多语言语料库上进行预训练, 因此可以作为各种手语的通用预训练模型使用。

encoder-decoder architecture

bidirectional attention

Progressive Pretraining Improves Sign2Text

我们对渐进预训练对Sign2Text任务的影响进行了研究,这是我们最终的目标。我们研究了四种预训练设置:1)无预训练;2)在Gloss2Text任务上进行预训练;3)在CC25语料库上进行预训练;4)渐进预训练,即先在CC25上对翻译模型进行预训练,然后在Gloss2Text任务上进行领域内进一步预训练。 对于所有设置,我们在Sign2Text任务中使用相同的联合训练过程。结果如表5所示。

在这里插入图片描述

我们使用没有预训练的相同架构的Transformer作为基准。从表中可以看出,对于在Gloss2Text任务上进行预训练的翻译模型在测试集上略微改善了(+1.92 BLEU-4)。当在CC25上进行预训练时,我们的方法在测试集上达到了26.95 BLEU-4,这证明了在大规模语料库上进行语言预训练的重要性。最佳结果是通过渐进预训练实现的,这可以归因于对大规模语料库进行的通用领域预训练以及通过领域内预训练(Gloss2Text)和下游任务(Sign2Text)进行的领域对齐。

4.4.3 Joint Multi-modality Training

最后,我们通过V-L映射器将两种模态通过联合多模态Sign2Text训练进行桥接,研究其有效性。最直接的方法是构建一个两阶段的翻译流程,即Sign2Gloss2Text,其中预测的手语标记作为中间状态。由于离散的手语标记不能完全捕捉手语视频中的语义,因此我们研究了将不同的视觉特征作为V-L映射器的输入。 在一项消融研究中,我们研究了图3中显示的三种特征,即手语标记logits、手语表示和S3D特征。

在这里插入图片描述

表6显示了结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

从真实的手语序列翻译成文本(Gloss2Text)通常被认为是SLT中的一个上限。令人惊讶的是,我们使用手语表示和手语标记进行的联合Sign2Text训练不仅优于Sign2Gloss2Text,还优于Gloss2Text的上限,这证明了我们渐进预训练和提出的多模态迁移学习的有效性。

gloss representations

gloss logits

5.Conclusion

我们提出了一种简单而有效的​多模态迁移学习基准方法 ,用于手语翻译。为了缓解数据稀缺问题,我们通过渐进预训练将来自人类动作和口语的大规模外部知识应用于视觉和语言模块,从通用领域逐步迁移到目标领域内。然后,通过视觉-语言映射器将这两个预训练的模块连接起来,进行联合SLT训练。 在两个SLT数据集上的实验证明,我们的方法优于所有最先进的方法。我们的方法可以应用于各种手语。在未来的工作中,我们希望利用这个框架将更多的外部知识转移到SLT中,以进一步提高性能。我们希望我们的简单基线能够促进SLT领域的未来研究,并激励更多的研究人员参与其中。

multi-modality transfer learning baseline

A. Implementation Details

本节我们详细介绍我们的训练和推理过程。除非另有说明,我们使用批量大小为8,Adam优化器,权重衰减为1e-3,余弦退火调度器。

weight decay

cosine annealing scheduler

Visual Encoder Pretraining

对于在K-400和WLASL上进行通用领域预训练,我们的训练过程遵循[45]。

通用领域预训练中使用S3D骨干网络中的所有五个块,后面跟随一个空间平均池化层和一个线性分类层。

对于在Sign2Gloss上进行领域内预训练,我们只使用预训练的S3D网络的前四个块,并将S3D特征在空间上池化为大小为T /4 × 832的输入。领域内预训练的数据增强包括具有范围为[0.7-1.0]的时间连续的空间随机裁剪和帧率增强,范围为[×0.5-×1.5]。所有帧都被调整为输入大小为224×224。我们将视觉编码器训练80个epoch,初始学习率为1e-3。推理时,我们使用所有帧,并将它们调整为224×224的大小,不进行裁剪。对于手语标记序列的预测,我们采用CTC束搜索解码器,束搜索的宽度从1到10,选择在开发集上性能最好的宽度进行测试集评估。

spatial average pooling layer

linear classification layer

data augmentations

temporally-consistent spatial random crop

CTC beam search decoder

CTC Decoder

一旦我们完成了视觉编码器的领域内预训练(Sign2Gloss),我们就可以将其用于手语标记的预测。

具体而言,给定一个包含 T T T帧的手语视频 V = ( v 1 , . . . , v T ) V = (v_1, ..., v_T) V=(v1,...,vT),视觉编码器 E E E预测手语标记概率 P = ( p 1 , . . . , p T / 4 ) P = (p_1, ..., p_{T / 4}) P=(p1,...,pT/4),其中 p t p_t pt表示第 t t t步的手语标记概率分布。CTC解码器使用 P P P作为输入,使用束搜索解码算法估计最可信的手语标记序列。更多详细信息可以参考[16]。

beam search decoding algorithm

Translation Pretraining

对于通用领域预训练,我们使用mBART-large-cc25的发布版本作为初始化。对于领域内预训练,即Gloss2Text任务,我们使用交叉熵损失函数对翻译网络进行80个epoch的训练,初始学习率为1e-5。我们还使用了0.3的dropout和0.2的标签平滑来防止过拟合。为了提高内存效率,我们通过保留目标语言(例如CSL-Daily 的中文和PHOENIX2014T 的德语)中的单词来修剪mBART的词嵌入。修剪后的词嵌入在训练期间被冻结。按照mBART的做法,我们在编码器输入中使用语言id符号,即’zh CN’或’de DE’作为编码器输入的结束符([EOS]),以及解码器输入的开始符([BOS])以进行语言识别。

cross-entropy loss

Joint Training

两个独立预训练的网络被加载为联合训练的初始化模型。视觉-语言映射器(V-L Mapper)在视觉模态和语言模态之间建立了一个桥梁。为了降低计算成本,在联合训练期间我们冻结了S3D的骨干网络。对于PHOENIX-2014T 数据集,我们使用手语标记表示(参见论文中的图3)作为V-L Mapper的输入。在CSL-Daily 数据集中,我们观察到手语标记几乎包含了生成文本所需的所有语言信息,即在许多情况下,口语文本可以通过简单地重新排序甚至复制手语标记序列来准确预测。因此,在CSL-Daily中,手语标记的语言语义对于翻译任务(Sign2Text)比视觉语义更有帮助。因此,我们将手语标记概率(参见论文中的图3)作为V-L Mapper的输入,其中全连接(FC)层的初始化使用了预训练的翻译网络中的词嵌入权重。两个数据集的其他设置相同。翻译网络的学习率设置为1e-5,视觉编码器和V-L Mapper中可训练层的学习率设置为1e-3。我们在CTC损失和交叉熵损失的联合监督下训练整个网络,损失权重为1.0,共进行40个epoch的训练。在评估时,我们使用束搜索解码,束宽度为4,长度惩罚为1。

gloss representations

gloss probabilities

cross-entropy loss

  • 10
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
跨模态融合变压器用于多光谱目标检测是一种先进的目标检测方法。多光谱图像由不同波段的传感器捕获,每个波段提供了目标的不同特征信息。传统的目标检测算法往往局限于单一光谱波段,无法在多光谱图像中有效提取目标信息。而跨模态融合变压器能够将不同波段的光谱信息融合,并在融合后的特征上进行目标检测,从而提高目标检测的准确性和鲁棒性。 跨模态融合变压器结合了Transformer模型和跨模态融合方法。Transformer模型是一种基于自注意力机制的神经网络架构,能够有效地建模长距离依赖关系。它将目标的特征信息转化为一系列的注意力权重,然后利用这些权重来对不同波段的特征进行加权融合。这种融合方式可以将信息从一个波段传递到另一个波段,使得各个波段的特征能够共同影响目标检测结果。 跨模态融合变压器还引入了多尺度的注意力机制,以适应不同尺度目标的检测需求。它通过在特征提取的过程中引入多个不同大小的注意力窗口,来对不同尺度的目标进行建模。通过这种方式,跨模态融合变压器能够在多光谱图像中准确地检测到各种尺度的目标。 总之,跨模态融合变压器是一种能够融合不同波段特征并进行多光谱目标检测的先进方法。它的引入可以提高目标检测的准确性和鲁棒性,适用于各种需要从多光谱图像中提取目标信息的应用场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值