论文解读系列九:文字识别中基于Transformer识别方法之 SRN 简介
不同于其他很多序列识别器,SRN采用完全不同的解码方式(并行解码),并引入全局语义推理模块。就获取语义信息的方式而言,主流的Attention based方法基于RNN来实现,是一种采用单向串行方式进行建模的方法,如图 1.(a)所示。虽然该多模型在很多任务中取得了很好的效果,但是有些难以克服的弊端:RNN对序列的处理为单向,只有通过多层和多个方向的级联才能获得全局的信息;下一的预测依赖于当前预测,导致解码误差会进行累积;在目前并行设备得到广泛应用的情况下,串行的解码方式只能无法做到并行化,所以相对低效。本文受Transformer的启发,如图(b)所示,使用了self-attention操作实现序列信息提取和解码。
图 1. 两种不同的传递语义信息的方法
直接进行并行解码相对于目前主流Attention based方法来说,一个潜在问题是语义建模能力下降,这是因为并行预测时,每个位置的预测是无法是获取其他位置的预测信息,因此作者在并行解码结果基础上,添加了一个全局语义推理模块,对并行预测结果进行一次修正,最后将两者进行一个融合,得到最终结果。
如图2所示,SRN由基础网络Backbone、并行的视觉特诊提取模块(PVAM)、全局语义推理模块(GSRM) 和视觉语义融合的解码器(VSFD)四部分构成。Backbone使用Resnet50+FPN的结构,并通过Transformer unit处理后得到二维特征;PVAM通过attention机制并行地获取每个目标字符相应的视觉特征G;GSRM(Global Semantic Reasoning Module)会基于视觉特征G获取全局语义信息,得到修正后的预测结果,将其称之为语义特征S;最后VSFD将视觉特征和语义特征S进行融合进行推理,得到最终的预测结果。下面对模型的每个模块进行介绍。
图 2. 方法的总体结构图
PVAM模块介绍:在Backbone输出了2D的视觉特征图之后,PVAM会针对文本行中的每个字符,计算出相应attention map, 通过将其与feature map逐像素加权求和,可得到每个目标字符对应的的视觉特征。另外,PVAM也用字符的阅读顺序 取代上一时刻隐变量 来引导计算当前时刻的attention map,实现了并行提取视觉特征的目的。
GSRM模块介绍:GSRM会基于全局语义信息进行推理。具体过程为,首先将视觉过程转换成语义特征,使用交叉熵损失进行监督,并对其概率分布取argmax得到初始的分类结果,同时通过分类结果获取每个字符的embedding向量,通过多层Transformer unit后,得到经语义推理模块修正的预测结果,同样使用交叉熵损失进行监督。
VSFD 模块介绍:对PVAM输出的对齐的视觉特征和GSRM输出的全局语义特征。最后基于融合后的特征进行预测输出。该方法在多个英文基准数据集上取得了SOTA的结果。对于中文长文本的识别,SRN相对于其他识别方法也有明显优势,如表1所示。
表 1.中文数据集结果(TRW-L为长文本)
速度上,得益于整个模型的并行设计,SRN拥有较小的推理时延,如表2所示。
表 2.推理速度介绍
总体上本文虽然受到了Transformer的启发,但是采用截然不同的解码方式,能实现并行推理和训练,能较为高效的处理长文本。作者提出的语义推理模块若能证明在其他方法上的有效性,可作为一个通用模块进行使用,在比较需要语义的场景,如模糊文本、遮挡样本识别,通过该模块提升系统性能。同时需要注意到的是,本文方法相对于其他识别方式,使用了更强的Backbone(Resnet50+FPN)、更长的训练时间、更多的数据扩增,这些都是性能提升潜在因素,相对于其他方法性能提升,多少是来自于此,不得而知。
Reference
- 点赞
- 收藏
- 关注作者
评论(0)