作者 | 汪逢生 编辑 | 汪逢生 校对 | 李仲深
今天给大家介绍的是以色列科技大学Aviad Aberdam等人发表在CVPR2021上的一篇文章 ”Sequence-to-Sequence Contrastive Learning for Text Recognition”。作者在这篇文章中提出了一种用于视觉表示的序列到序列的对比学习框架 (SeqCLR)用于文本识别。考虑到序列到序列的结构,每个图像特征映射被分成不同的实例来计算对比损失。这个操作能够在单词级别从每张图像中提取几对正对和多个负的例子进行对比。为了让文本识别产生有效的视觉表示,作者进一步提出了新的增强启发式方法、不同的编码器架构和自定义投影头。在手写文本和场景文本数据集上的实验表明,当文本解码器训练学习表示时,作者的方法优于非序列对比方法。此外,半监督的SeqCLR相比监督训练显著提高了性能,作者的方法在标准手写文本重新编码上取得了最先进的结果。
一、研究背景
用于自监督表示学习的对比学习技术在多个半监督计算机视觉应用上实现了重要的提高。对比学习实现了最大相同图像不同增强视角的一致性以及能够和数据集中不同图像的表示进行区分。当前绝大多数手写体文本识别完全是全监督学习需要大量的标注数据,而由于当前对比学习框架仅仅是用作输入仅仅是单张图像目标检测和分类上。文本识别是将一个词视作字符序列,通过将整张图像划分为相连的切片进行建模。作者对已存在的对比学习方法在序列预测任务文本识别上进行了延伸。其中关键的思想是对于序列中的单个元素保持位置信息的同时应用对比学习。为此作者引入了一个实例映射函数从序列特征图中每连续几帧中产生一个实例用于对比学习。为了确保用于对比学习实例有效表示作者设计了一个增强过程并确保序列级别的对齐。作者通过在手写文本和场景文本数据集上进行对比验证了提出方法的有效性。
二、模型与方法
受到视觉表示学习自监督方法的启发,作者提出了一种用于序列到序列视觉识别对比学习框架。作者首先引入了一个实例映射阶段从连续几帧中生产一个单独的实例。这些实例作为对比损失的基本元素。作者进一步设计了一个保留序列架构的图像增强过程。如图1所示,作者提出的框架由以下五个部分组成,随机的数据增强模块将一张图像随机的变换为两种增强的图像,基本的编码器f提取一对增强图像的序列表示,可选的投影头使用一个小的辅助网络对表示进行进一步的变换,实例映射函数从投影帧产生实例,对比损失函数将正样本表示尽可能接近以及确保与负样本的差异。
图1. SeqCLR示意图
数据增强对于被学习的视觉表示的最终品质起着十分重要的作用,当前的随机增强框架不能满足文本识别的需求,因为可能使得增强后文本出现不可读的情况比如水平裁剪可能出现删除完整字符的情况。为此作者避免了一些特定的变换。图2说明了不同的增强类型包括垂直裁剪、模糊、随机噪声和不同的透视变换。基本的编码器从增强的图像提取序列表示一次提取了视觉特征和上下文特征图。投影头是可选的,在预训练阶段完全抛弃,是一个小的多层感知机辅助网络。实例映射函数,作者提出了3种,全部到实例函数取所有序列帧的平均,窗口到实例是每几个连续帧平均池化创建一个实例,帧到实例每一帧产生一个单独的实例。
图2. 考虑的增强变换
三、实验结果
图3展示了作者提出的SeqCLR相比于SimCLR以及SimCLR上下文方法在公共手写文本和场景文本基准数据集上的比较结果。对不同的实例映射函数的比较表明,从窗口到实例的映射可以获得最佳的结果。可以看到,帧到实例的映射在场景文本图像上表现不佳。这些图像甚至通过轻微的增强也容易出现序列级的错位,因为它们包含了已经有不同形状的文本。另一方面,平均所有帧的全实例映射显著减少了每批中负实例的数量,这反过来也会影响性能。窗口到实例的映射成功地平衡了这些问题,从而导致了更好的性能。如前所述,目前的视觉表示的对比方法是为类化和目标检测等任务而设计的,其中整张图像是基本的输入元素。然而,在文本识别中,一个单词被视为一系列字符,因此,标准的整个图像概念会导致性能不佳。具体地说考虑的增强过程通常会破坏输入文本图像的顺序结构。此外,在之前的论文中,特征图被视为一个单一的表示,而在文本识别中,它最终被解码为一系列表示。
图3. 视觉表示质量
图4将作者的方法于SimCLR上下文和监督基线训练进行了比较展示了半监督的性能。可以看到,在文本识别的情况下,使用非顺序对比学习方案的预训练往往与监督基线相比导致性能下降。另一方面,SeqCLR对每个半监督场景和每个手写数据集都具有更好的性能。特别地,窗口到实例的映射对注意解码器的性能最好,而帧到实例的解码器则比在使用CTC解码器时更优越。这可能表明帧到实例更适合CTC解码器,因为它们都在特征图的单个帧上工作。
图4. 半监督结果
四、总结
在这个工作中,作者提出了一种自监督的对比学习算法SeqCLR用于序列到序列视觉识别,将每个特征图化分成一系列独立的部分用于计算对比损失。为了充分利用自监督,作者提出了许多序列特别增强方法。注意文本识别任务的结构,即把一幅图像当作一系列的帧来处理。实验表明,在监督训练量有限时,SeqCLR在识别手写文本和场景文本图像方面大大优于当前的非序列对比学习方法。此外,作者的方法在手写方面取得了最先进的性能,与文献中最好的方法相比,SeqCLR在标准基准数据集RIMES上的单词错误率降低了9.5%和20.8%。SeqCLR是对不同设计选项进行仔细实验评估的结果,包括不同的增强组成、编码器架构、投影头、实例映射函数和解码器类型。SeqCLR的成功将有望鼓励其他研究人员探索文本识别的半监督和自我监督方案,以及针对不同序列到序列预测的对比学习算法。
参考文献
Aberdam A , Litman R , Tsiper S , et al.Sequence-to-Sequence Contrastive Learning for Text Recognition[J]. 2020.