【读点论文】Read Like Humans Autonomous, Bidirectional and Iterative Language for Scene Text Recognition

Read Like Humans Autonomous, Bidirectional and Iterative Language Modeling for Scene Text Recognition

Abstract

  • 语言知识对场景文本识别有很大的帮助。然而,如何在端到端深度网络中有效地建模语言规则仍然是一个研究挑战。在本文中,我们认为语言模型的能力有限来自于:1)隐式语言建模;2)单向特征表示;3)带噪声输入的语言模型。相应地,我们提出了一种自主、双向、迭代的场景文本识别ABINet。首先,自治建议阻塞视觉和语言模型之间的梯度流,以强制显式语言建模。其次,提出了一种基于双向特征表示的新型双向完形网络作为语言模型。第三,提出了一种语言模型迭代修正的执行方式,可以有效缓解噪声输入的影响。此外,我们提出了一种基于迭代预测集合的自训练方法,可以有效地从未标记的图像中学习。大量的实验表明,ABINet在低质量图像上具有优势,并在几个主流基准测试中取得了最先进的结果。此外,集成自训练训练的ABINet在实现人类水平的识别方面也有很大的进步。代码可从https://github.com/FangShancheng/ABINet获得。
  • 论文地址:[2103.06495] Read Like Humans: Autonomous, Bidirectional and Iterative Language Modeling for Scene Text Recognition (arxiv.org)
  • Accepted by CVPR 2021CVPR 2021 Open Access Repository (thecvf.com)

Introduction

  • 具有从场景图像中读取文本的能力是人工智能必不可少的。为此,早期的尝试将字符视为无意义的符号,并通过分类模型识别符号[End-to-end scene text recognition,Reading text in the wild with convolutional neural networks]。然而,当面对遮挡、模糊、噪声等具有挑战性的环境时,由于失去了视觉分辨能力而变得模糊。幸运的是,由于文本承载着丰富的语言信息,人们可以根据上下文对文字进行推理。因此,一堆方法[Deep structured output learning for unconstrained text recognition,Deep features for text spotting,Seed: Semantics enhanced encoder-decoder framework for scene text recognition]将注意力转向语言建模,并取得了不容置疑的改进。

  • 然而,如何有效地模拟人类阅读中的语言行为仍然是一个悬而未决的问题。从心理学的观察来看,我们可以对人类阅读做出三个假设,即语言建模是自主的、双向的和迭代的:1)聋哑人和盲人都可以分别拥有完整的视觉和语言功能,我们用“自治”一词来解释视觉和语言之间学习的独立性。自治性也意味着视觉和语言之间的良好互动,独立学习的语言知识有助于视觉中字符的识别。2)推理字符上下文的行为类似于完形填空任务,因为难以辨认的字符可以被视为空白。因此,可以同时利用难读字符左右两侧的易读字符提示进行预测,这与双向性相对应。3)迭代是指在具有挑战性的环境下,人类采用渐进的策略,通过对识别结果的迭代修正来提高预测置信度。

  • 首先,将自治原理应用于场景文本识别(STR),即识别模型解耦为视觉模型(VM)和语言模型(LM),子模型可以作为独立的功能单元单独学习。最近基于注意力的方法通常基于 rnn 或Transformer设计LMs,其中语言规则在耦合模型中隐式学习(下图a)。然而,LMs是否以及如何学习字符关系是不可知的。此外,这种方法不可能通过直接从大规模未标记文本中预训练LM来获取丰富的先验知识。

    • 在这里插入图片描述

    • (a)耦合语言模型。(b)迭代修正的自治语言模型。©我们的双向结构。(d)自回归中的单向RNN。(e)并联预测中两个单向 Transformer 的集合

  • 其次,与单向LMs相比,采用双向原理的LMs捕获的信息量是单向LMs的两倍。构建双向模型的一种直接方法是合并从左到右的模型和从右到左的模型,无论是在概率级别还是在特征级别(上图e)。然而,严格来说,它们的功能并不强大,因为它们的语言特征实际上是单向表示。此外,集成模型在计算和参数方面的成本是前者的两倍。BERT是NLP领域最近一项引人注目的工作,它引入了一种通过屏蔽文本标记来学习的深度双向表示。直接将BERT应用于STR需要屏蔽文本实例中的所有字符,而这是非常昂贵的,因为每次只能屏蔽一个字符。

  • 第三,采用迭代原理执行的LMs可以从视觉和语言线索中改进预测,这是目前方法没有探索的。执行LM的典型方法是自回归(上图d),其中错误识别被积累为噪声,并作为后续预测的输入。为了适应Transformer架构,[2d attentional irregular scene text recognizer, Towards accurate scene text recognition with semantic reasoning networks]放弃了自回归,采用并行预测(上图e)来提高效率。然而,噪声输入在并行预测中仍然存在,VM 输出的误差直接影响 LM 的精度。此外,SRN中的并行预测还存在长度未对齐的问题,即如果VM错误地预测了文本长度,SRN很难推断出正确的字符。

  • 针对现有方法在内部交互、特征表示和执行方式等方面存在的不足,提出了基于自治、双向和迭代原则的ABINet。首先,我们通过阻塞VM和LM之间的梯度流(BGF)探索了一种解耦方法(上图b),该方法强制LM显式学习语言规则。此外,VM 和 LM 都是自治单元,可以分别从图像和文本进行预训练。其次,我们设计了一种新的双向完形网络(BCN)作为LM,消除了两个单向模型合并的困境(上图c)。BCN通过指定注意掩码来控制两边字符的访问,从而联合地以左右上下文为条件。此外,不允许跨步骤访问以防止信息泄漏。第三,我们提出了一种迭代修正LM的执行方式(上图b)。通过将 ABINet 的输出反复输入到 LM 中,可以逐步细化预测,在一定程度上缓解长度不对齐的问题。此外,将迭代预测作为一个整体,探索了一种基于自训练的半监督方法,为人类水平的识别提供了新的解决方案。

  • 本文的贡献主要包括:1)提出自主、双向和迭代原则来指导STR中LM的设计,在这些原则下,LM是一个功能单元,需要迭代地提取双向表示和正确预测。2)引入了一种新的BCN算法,利用双向表示估计完形任务等字符的概率分布。3)所提出的ABINet在主流基准上达到了最先进(SOTA)的性能,并且经过集成自训练训练的ABINet在实现人类水平的识别方面有很大的提高。

Related Work

Language-free Methods

  • 无语言方法一般利用视觉特征而不考虑字符之间的关系,如基于ctc的和基于分词的方法。基于ctc的方法采用CNN提取视觉特征,RNN对特征序列建模。然后使用CTC损失对CNN和RNN进行端到端训练。基于分割的方法将FCN应用于像素级的字符分割。廖等通过将分割的像素分组到文本区域来识别字符。Wan等人提出了一种额外的顺序分割映射,可以按正确的顺序转录字符。由于缺乏语言信息,无语言方法不能很好地解决低质量图像的识别问题

Language-based Methods

  • 视觉和语言之间的内在互动。在一些早期的工作中,N-grams的文本字符串包由CNN作为显式LM进行预测。之后,基于注意力的方法开始流行,它使用更强大的RNN或Transformer隐式地对语言建模。基于注意力的方法遵循编码器-解码器架构,其中编码器处理图像,解码器通过关注一维图像特征或二维图像特征中的相关信息来生成字符。例如,R2AM 采用递归CNN作为特征提取器,LSTM 作为字符级学习的 LM 隐式建模语言,避免了n -gram的使用。此外,在将不规则图像输入网络之前,通常通过集成对不规则图像的校正模块来增强这类方法。与上述方法不同,我们的方法致力于通过显式语言建模来构建更强大的LM。在试图改善语言表达的过程中,一些作品引入了多重损失,其中额外的损失来自语义。其中,SEED提出使用预训练的FastText模型来指导RNN的训练,这带来了额外的语义信息。我们偏离了这一点,因为我们的方法直接在未标记的文本中预训练LM,这在实践中更可行。
  • 语言特征的表示。在基于注意力的方法中,字符序列通常采用从左到右的方式建模。例如,Textscanner继承了基于注意力的方法的单向模型。不同的是,它们采用额外的位置分支来增强位置信息并减少在无上下文场景中的错误识别。为了利用双向信息,还有的方法使用两个单向模型的集成模型。具体来说,为了捕获全局语义上下文,SRN[Towards accurate scene text recognition with semantic reasoning networks]结合了从左到右和从右到左的 Transformer 的特征,以进一步预测。我们强调集成双向模型本质上是一种单向特征表示.
  • 语言模型的执行方式。目前,LMs的网络架构主要基于RNN和Transformer。基于rnn的LM通常以自回归的方式执行以最后一个字符的预测作为输入。典型的工作如DAN首先使用提出的卷积对齐模块获得每个字符的视觉特征。然后,GRU以最后一个时间步长的预测嵌入和当前时间步长的字符特征作为输入,对每个字符进行预测。基于 transformer 的方法在并行执行方面具有优势,其中每个时间步长的输入要么是视觉特征,要么是来自视觉特征预测的字符嵌入。我们的方法属于并行执行,但我们试图减轻并行语言模型中存在的噪声输入问题。

Proposed Method

Vision Model

  • 视觉模型由骨干网和位置关注模块组成(下图)。在前面的方法基础上,采用ResNet和Transformer单元作为特征提取网络和序列建模网络。对于图像 x ,我们有:

    • F b = T ( R ( x ) ) ∈ R H 4 ∗ W 4 ∗ C F_b=\mathcal{T}(R(x))\in \R^{\frac H4*\frac W4*C} Fb=T(R(x))R4H4WC

    • H;W为x的大小,C为特征维数。位置注意模块将视觉特征并行转录为字符概率,该模块基于查询范式:

    • F v = s o f t m a x ( Q K T C ) V F_v=softmax(\frac{QK^T}{\sqrt{C}})V Fv=softmax(C QKT)V

    • 其中, Q ∈ R T × C Q\in \R ^{T ×C} QRT×C 为字符顺序的位置编码,T 为字符序列的长度。 K = G ( F b ) ∈ R H W 16 × C K = \mathcal G(F_b) \in \R^{\frac{HW}{16}×C } K=G(Fb)R16HW×C,其中 $\mathcal G(·) $ 由一个迷你 U-Net 实现。$V =\mathcal H(F_b) \in \R^{\frac {HW} {16} ×C} $,其中 H ( ⋅ ) \mathcal H(·) H() 为单位映射。

    • 在这里插入图片描述

    • Architecture of vision model.

Language Model

Autonomous Strategy
  • 如下图所示,自治策略包括以下特征:1) LM作为一个独立的拼写校正模型,以字符的概率向量作为输入,输出期望字符的概率分布。2)训练梯度流在输入向量处被阻塞(BGF)。3) LM可以与未标记的文本数据分开训练

    • 在这里插入图片描述

    • A schematic overview of ABINet.

  • 遵循自治策略,ABINet 可以被划分为可解释的单元。通过将概率作为输入,LM 可以是可替换的(即直接替换为更强大的模型)和灵活的(如在3.2.3节中迭代执行)。此外,重要的一点是,BGF 强制模型不可避免地学习语言知识,这与隐式建模有根本区别,隐式建模中模型究竟学习了什么是不可知的。此外,自治策略使我们能够直接分享NLP社区的先进进展。例如,预训练 LM 可能是提高性能的有效方法。

  • 自治性在实现上,就是显性定义视觉模型与语言模型,视觉模型只负责图像分类的功能,而语言模型只负责语言建模的功能。视觉模型与语言模型的交互方式为视觉模型的预测概率分布直接作为语言模型的输入。语言模型的输入为概率向量,并使用线性函数实现概率映射(Probability Mapping)。二者分别使用损失函数进行训练,最终结果进行融合。其中,一个核心的点为视觉模型的输出概率向量到语言模型的输入概率向量,通过梯度阻塞的方式使得视觉模型跟语言模型进行分离,进而实现两个模型作为独立的功能个体进行学习,即实现显性地语言建模型。这样做的好处其实有很多:

    • 解耦之后,视觉模型跟语言模型就互相独立了。语言模型在做语言推理的适合也不再依赖于视觉特征,视觉模型跟语言模型都是独立的个体,比如说语言模型的语言修正功能可以直接使用和单独训练,这个是隐性的方法不具备的。因此,视觉模型可以单独训练(有监督/无监督均可),而语言模型更可以轻易从海量文本中无监督预训练学习。这就是为啥是叫自治的模型,而非解耦的模型。
    • 强大的可解释性,我们甚至可以直接评估语言模型的性能,比如我们在实验章节单独针对语言模型展开定量以及可视化定性的评估,在这样的模式下,今后我们可以针对语言模型更加具体的问题提出解决方案。
    • 足够的灵活性,一方面今后如果有更优秀的语言模型能代替ABINet中的BCN语言模型,那么可以在不调整其他结构比如视觉模型的前提下直接取代BCN;以及在端到端识别中,只需要替换视觉模型,而语言模型并不需要做改变(甚至已经学习到的模型可以直接拿来做fine-tune),这样成本就低很多了。
    • 更好的拓展性,由于我们输入输出都是定义成概率的形式,拓展性就很强了,比如说在我们的框架下可以很简单的实现第三点迭代性的建模。
    • 最大的优势是强迫语言模型真正地学习语言规则方面的建模。不像隐性语言模型那样,可能存在视觉特征作为混杂因子的某种关系导致了模型的偏倚,在反向传播过程中,某条作弊的路径让语言模型的学习是次优的。CVPR 2021 Oral | 聊一聊使用NLP语言模型解决场景文本识别中问题的思路以及一些思考…-CSDN博客
Bidirectional Representation
  • 给定一个文本字符串 y = ( y 1 , . . . , y n ) y = (y_1,...,y_n) y=(y1,...,yn),文本长度为n,类数为 c,则双向模型和单向模型 y i y_i yi 的条件概率为 P ( y i ∣ y n , . . . , y i + 1 , y i − 1 , . . . , y 1 )   a n d   P ( y i ∣ y i − 1 , . . . , y 1 ) P(y_i|y_n,...,y_{i+1},y_{i-1},...,y_1) ~and ~P(y_i|y_{i−1},...,y_1) P(yiyn,...,yi+1,yi1,...,y1) and P(yiyi1,...,y1) 。从信息论的角度来看,双向表示的可用熵可以量化为 H y = ( n − 1 ) l o g c H_y = (n−1)log c Hy=(n1)logc,而对于单向表示,信息为 1 n ∑ i = 1 n ( i − 1 ) l o g c = 1 2 H y \frac 1 n \sum^n_{i=1} (i−1)log c =\frac1 2H_y n1i=1n(i1)logc=21Hy。我们的见解是,以前的方法通常使用两个单向模型的集成模型,其本质上是单向表示。单向表示基本上捕获了 1 2 H y \frac12H_y 21Hy 的信息,与双向表示相比,其特征抽象能力有限

  • 得益于3.2.1节中的自主设计,具有拼写纠正能力的现成 NLP 模型可以被转移。一种可行的方法是利用BERT中的掩码语言模型(MLM),将 y i y_i yi 替换为token [MASK]。然而,我们注意到这是不可接受的,因为对于每个文本实例,MLM应该单独调用 n 次,导致效率极低。我们建议通过指定注意掩码来代替屏蔽输入字符。

  • 总的来说,BCN是 L 层 Transformer 解码器的一种变体。BCN的每一层是一系列多头关注前馈网络,然后是残差连接和层归一化,如下图所示。与普通 Transformer 不同的是,字符向量被输入到多头注意块中,而不是网络的第一层。此外,多头注意中的注意 mask 是为了防止“看到自己”而设计的。此外,为了避免跨时间步长的信息泄漏,BCN中没有使用自关注。多头块内的注意力操作可以形式化为:

    • 在这里插入图片描述

    • 其中 $ Q\in \R^{T ×C} $ 是第一层字符顺序的位置编码,其他是最后一层的输出。$K,V\in \R^{T ×C} $ 由字符概率 P ( y i ) ∈ R c P(y_i) \in \R^c P(yi)Rc 得到, W l ∈ R c × C W_l\in \R^ {c×C} WlRc×C 为线性映射矩阵。 M ∈ R T × T M\in \R^{T ×T} MRT×T 是阻止参与当前字符的注意掩模矩阵。将BCN层堆叠成深度架构后,确定文本 y 的双向表示 F l F_l Fl

  • 在这里插入图片描述

    • Architecture of language model (BCN).
  • 通过以完形填空的方式指定注意掩模,BCN能够优雅地学习比单向表示集合更强大的双向表示。此外,得益于类似transformer的架构,BCN可以独立并行地执行计算。而且,它比集成模型更有效,只需要一半的计算量和参数

Iterative Correction
  • Transformer的并行预测采用的噪声输入通常是来自视觉预测或视觉特征的近似值。具体而言,如图双向表示下的例子,P(“O”)的期望条件为“SH-WING”。然而,由于环境的模糊和遮挡,VM得到的实际情况是“SH-VING”,其中“V”变成了噪声,损害了预测的置信度。随着VM中错误预测的增加,它对LM更加不利。
  • 为了解决噪声输入的问题,我们提出迭代LM(如图所示)。LM重复执行M次,对 y 进行不同的赋值。对于第一次迭代, y i = 1 y_i=1 yi=1 是VM的概率预测。对于后续迭代, y i ≥ 2 y_i≥2 yi2 为上次迭代中融合模型(3.3节)的概率预测。通过这种方法,LM 能够迭代地修正视觉预测
  • 另一个观察结果是,基于 Transformer 的方法通常存在长度不对齐问题,这表明如果字符数与 GT 值不对齐,Transformer很难纠正视觉预测。长度不对齐的问题是由于不可避免的填充掩码的实现造成的,填充掩码是固定的,用于过滤文本长度以外的上下文。我们的迭代LM可以缓解这一问题,因为视觉特征和语言特征被多次融合,因此预测的文本长度也会逐渐细化
  • 迭代修正的思想为反复多轮执行语言模型,使得识别的效果逐步修正。在我们这个框架下,语言模型在第一轮修正的目标为视觉模型的输出结果,而在第二轮及多轮以后修正的目标为上一轮ABINet的输出结果。这种方法巧妙的地方就在于,不需要修改任何其他的定义或结构,就能实现反复迭代了。并且,网络在非迭代的方式下训练,直接在推理阶段迭代,也是有效的!当然,我们跑的实验来看,训练阶段迭代效果更好些。但得注意的是,迭代的方法也得看使用的场景,通常来说针对hard的样本效果才明显,easy的场景用处就没那么大了。比如说在实际工程中,甚至可以这样去做,如果识别结果的置信度比较低,就反复多轮迭代,置信度比较高,就没必要迭代了。

Fusion

  • 从概念上讲,图像训练的视觉模型和文本训练的语言模型属于不同的模态。为了对齐视觉特征和语言特征,我们简单地使用门控机制进行最终决策:

    • G = δ ( [ F v , F l ] W f ) F f = G ⊙ F v + ( 1 − G ) ⊙ F l G=\delta([F_v,F_l]W_f)\\ F_f=G\odot F_v+(1-G)\odot F_l G=δ([Fv,Fl]Wf)Ff=GFv+(1G)Fl

    • 其中 W f ∈ R 2 C × C W_f\in \R^ {2C×C} WfR2C×C G ∈ R T × C G\in \R^ {T ×C} GRT×C

Supervised Training

  • ABINet使用以下多任务目标进行端到端训练:

    • L = λ v L v + λ l M ∑ i = 1 M L l i + 1 M ∑ i = 1 M L f i ; \mathcal L = λ_vL_v + \frac{λl}M\sum^M_{i=1}L^i_l + \frac1M\sum_{i=1}^M L^i_f; L=λvLv+Mλli=1MLli+M1i=1MLfi;

    • 其中Lv, Ll 和 Lf 分别为 Fv, Fl 和 Ff 的交叉熵损失。具体来说, L l i L^i_l Lli L f i L^i_f Lfi 是第 i 次迭代的损失。 λ v λ_v λv λ l λ_l λl 是平衡因子。

Semi-supervised Ensemble Self-training

  • 为了进一步探索我们迭代模型的优越性,我们提出了一种基于自训练的半监督学习方法,采用迭代预测集合。自训练的基本思想是首先由模型本身生成伪标签,然后使用附加的伪标签对模型进行重新训练。因此,关键问题在于如何构造高质量的伪标签。
  • 为了过滤噪声伪标签,我们提出以下方法:1)选择文本实例中字符的最小置信度作为文本确定性。2)每个字符的迭代预测被视为一个集合,以平滑噪声标签的影响。因此,我们定义过滤函数如下:
    • 在这里插入图片描述

    • 其中C为文本实例的最小确定性, P m ( y t ) P_m(y_t) Pm(yt) 为第m次迭代时第 t 个字符的概率分布。训练过程如算法1所示,其中Q为阈值。Bl, Bu 是标记和未标记数据的训练批次。 N m a x N_{max} Nmax 是最大训练步数, N u p l N_{upl} Nupl 是更新伪标签的步数。

    • 在这里插入图片描述

Experiment

Datasets and Implementation Details

  • 为了公平比较,实验按照[Towards accurate scene text recognition with semantic reasoning networks]的设置进行。具体来说,训练数据集是两个合成数据集MJSynth (MJ)和SynthText (ST)。以ICDAR 2013 (IC13)、ICDAR 2015 (IC15)、IIIT 5KWords (IIIT)、Street View Text (SVT)、Street View Text- perspective (SVTP)和CUTE80 (CUTE)六个标准基准作为测试数据集。这些数据集的详细信息可以在之前的著作[Towards accurate scene text recognition with semantic reasoning networks]中找到。此外,使用去除标签的Uber-Text作为无标签数据集来评估半监督方法。

  • 模型尺寸 C 始终设置为 512。BCN有4层,每层有8个注意头。平衡因子 λ v , λ l λ_v ,λ_l λv,λl 分别设为1,1。图像直接调整为32 × 128的数据增强,如几何变换(即旋转,仿射和透视),图像质量恶化和颜色抖动等。我们使用4个NVIDIA 1080Ti gpu来训练批量大小为384的模型。采用ADAM优化器,初始学习率为1e−4,经过6次迭代后学习率衰减为1e−5。

Ablation Study

Vision Model
  • 首先从特征提取和序列建模两个方面讨论了 VM 的性能。实验结果见下表。平行注意是一种流行的注意方法,所提出的位置注意具有更强大的键/值向量表示。从统计数据中我们可以得出结论:1)简单地升级 VM 将导致准确性的极大提高,但代价是参数和速度。2)为了升级 VM,我们可以在特征提取中使用位置注意,在序列建模中使用更深层次的 Transformer。
    • 在这里插入图片描述
Language Model
  • 自治的策略。为了分析自治模型,我们分别采用LV和BCN作为VM和LM。从下表的结果可以看出:1)预训练VM是有用的,平均提高准确率约为0:6 ~ 0:7%;2)预训练LM对训练数据集(即MJ和ST)的好处可以忽略不计;3)而从额外的未标记数据集(例如WikiText103)预训练LM即使在基础模型处于高精度时也是有帮助的。以上观察结果表明,STR对VM和LM都进行预训练是有用的。在额外的未标记数据集上预训练LM比在训练数据集上更有效,因为有限的文本多样性和有偏差的数据分布无法促进学习性能良好的LM。此外,在未标记的数据集上预训练LM成本很低,因为很容易获得额外的数据

    • 在这里插入图片描述
  • 此外,在VM和LM之间允许梯度流(AGF)时,性能平均下降0:9%(上表)。我们还注意到AGF的训练损失急剧减小到一个较低的值。这表明在LM中会发生过拟合,因为VM有助于在训练中作弊,这也可能发生在隐式语言建模中。因此,通过BGF增强LM的自主学习能力是至关重要的。我们注意到SRN在VM之后使用argmax运算,这本质上是BGF的一种特殊情况,因为argmax是不可微的。另一个优点是自治策略使模型具有更好的可解释性,因为我们可以深入了解LM的性能(例如,下表),这在隐式语言建模中是不可行的。

    • 在这里插入图片描述
  • 双向表示。由于BCN是Transformer的一个变体,我们将BCN与其对应的SRN进行比较。基于transformer的SRN表现出优越的性能,它是一个单向表示的集合。为公平比较,除网络外,均在相同条件下进行实验。我们使用SV和LV作为 VM 来验证不同精度水平下的有效性。如下表所示,虽然BCN与单向版本的SRN (SRN- u)具有相似的参数和推理速度,但在不同vm下,BCN在准确率上具有竞争优势。此外,与集成中的双向SRN相比,BCN在IC15和CUTE等具有挑战性的数据集上表现出更好的性能,此外,配备BCN的ABINet比SRN快约20%-25%,这对于大规模任务是实用的。

    • 在这里插入图片描述
  • 章节3.2.1认为LMs可以被看作是独立的单元来估计拼写纠正的概率分布,因此我们从这个角度进行实验。训练集是来自MJ和st的文本,为了模拟拼写错误,测试集是随机选择的20000个项目,其中我们为20%的文本添加或删除一个字符,为60%的文本替换一个字符,其余文本保持不变。从表4的结果可以看出,BCN的字符准确率比SRN高4.5%,单词准确率比SRN高14.3%,说明BCN在字符级语言建模方面具有更强大的能力

  • 为了更好地理解BCN在ABINet内部是如何工作的,我们在下图中可视化了前5个概率,其中以“today”为例。一方面,由于“today”是一个带有语义信息的字符串,以“-oday”和“tod-y”作为输入,BCN可以高置信度地预测“t”和“a”,并有助于最终的融合预测。另一方面,由于错误字符“l”和“o”是其余预测的噪声,BCN变得不那么自信,对最终预测的影响很小。此外,如果存在多个错误字符,由于缺乏足够的上下文,BCN很难恢复正确的文本

    • 在这里插入图片描述

    • Visualization of top-5 probability in BCN.

  • 迭代修正。我们再次将SV和LV应用于BCN,以验证不同层次迭代校正的性能。实验结果如下表所示,其中训练和测试的迭代次数分别为1、2和3。从结果可以看出,对BCN进行3次迭代,准确率平均分别提高了0.4%、0.3%。具体来说,IIIT是一个相对简单的数据集,具有清晰的字符外观。然而,当涉及到其他更难的数据集,如IC15、SVT和SVTP时,迭代校正的精度稳步提高,SV和LV的SVT分别提高了1.3%和1.0%。还注意到推理时间随迭代次数线性增加。

    • 在这里插入图片描述
  • 我们进一步探讨了训练迭代和测试迭代的区别。从下图中平均精度的波动情况可以看出:1)在测试中直接进行迭代校正也可以得到很好的效果;2)训练中的迭代是有益的,因为它为LM提供了额外的训练样本;3)模型迭代3次以上,精度达到饱和状态,无需大迭代次数。

    • 在这里插入图片描述

    • Accuracy of iterating BCN in training and testing.

  • 为了对迭代校正有一个全面的认识,我们将中间预测可视化,如下图所示。通常情况下,视觉预测可以被修正,接近事实,但在某些情况下仍然是错误的。经过多次迭代,最终可以对预测结果进行修正。此外,我们还观察到迭代修正能够缓解长度未对齐的问题,如下图最后一列所示。

    • 在这里插入图片描述

    • 使用迭代校正的成功实例。文本字符串从左到右、从上到下分别为ground truth、vision prediction、fusion prediction without iterative correction和with iterative correction。

  • 从消融研究中可以得出结论:1)双向BCN是一种功能强大的LM,可以有效地提高精度和速度。2)通过进一步对BCN进行迭代校正,可以缓解噪声输入问题,建议以增量计算为代价来处理低质量图像等具有挑战性的示例

Comparisons with State-of-the-Arts

  • 一般情况下,直接使用已报道的统计数据与其他方法进行公平比较并不容易[What is wrong with scene text recognition model comparisons? dataset and model analysis],因为在主干(即CNN结构和参数)、数据处理(即图像校正和数据增强)、训练技巧等方面可能存在差异。为了严格进行公平比较,我们重现了与ABINet具有相同实验配置的SOTA算法SRN,如下表所示。

    • 在这里插入图片描述
  • 两个重新实现的 SRN-SV 和 SRN-LV 在替换 vm、去除多尺度训练的副作用、应用衰减学习率等方面与报道的模型略有不同。请注意,由于上述技巧,SRN- sv 的性能比SRN要好一些。从比较中可以看出,我们的ABINet-SV在IC13、SVT、IIIT、IC15、SVTP 和 CUTE 数据集上分别以0.5%、2.3%、0.4%、1.4%、0.6%、1.4%的结果优于SRN-SV。此外,具有更强大 VM 的ABINet-LV在IC13, SVT, IC15, SVTP和CUTE基准上实现了0.6%,1.2%,1.8%,1.4%,1.0%的改进。

  • 与最近在MJ和ST上训练的SOTA作品相比,ABINet也表现出了令人印象深刻的表现(上表)。特别是ABINet在SVT、SVTP和IC15上的优势非常突出,因为这些数据集包含大量的低质量图像,如噪声和模糊图像,而VM无法自信地识别这些图像。此外,我们还发现,由于语言信息作为视觉特征的重要补充,具有异常字体和不规则文本的图像可以被成功识别。因此,即使不进行图像校正,ABINet也可以在CUTE上获得次优结果。

Semi-Supervised Training

  • 为了进一步推动准确阅读的边界,我们探索了一种半监督方法,该方法将MJ和ST作为标记数据集,将Uber-Text作为未标记数据集。章节3.5中的阈值Q设置为0.9,批大小Bl和Bu分别为256和128。上表的实验结果表明,本文提出的自训练方法ABINet-LVst在所有基准数据集上都可以轻松优于ABINet-LV。此外,集成自训练ABINet-LVest通过提高数据利用效率,表现出更稳定的性能。观察增强的结果,我们发现具有稀缺字体和模糊外观的困难示例也可以频繁地被识别(下图),这表明探索半/无监督学习方法是场景文本识别的一个有前途的方向。
    • 在这里插入图片描述

    • Hard examples successfully recognized by ABINet-LVest.

Conclusion

  • 在本文中,我们提出了ABINet,探索了在场景文本识别中利用语言知识的有效方法。ABINet具有自治性,通过显式强制学习来提高语言模型的能力;2)双向,通过双方字符上下文的共同条件作用来学习文本表示;3)迭代,逐步修正预测以减轻噪声输入的影响。在ABINet的基础上,我们进一步提出了一种半监督学习的集成自训练方法。在标准基准测试上的实验结果证明了ABINet的优越性,特别是在低质量图像上。此外,我们还声称利用未标记的数据是可能的,并且有望实现人类水平的识别。

  • 通常来说,无论是裁剪图像的文字识别还是端到端图像的文字识别,主要思想都是把文字识别问题当成CV中的(字符)图像分类问题,比如说传统特征时代检测并分割字符后识别的方法、到CNN共享计算的识别方法、到语义分割识别、甚至到现在主流的CTC方法,其本质上都是基于图像分类的纯CV方法。这种方法,在图像清晰可读的情况下,比如说文档图像、相对规整的手写及场景文本图像等,效果其实都可以做到比较好了(讲白了就是字符的外形清晰可读的情况)。但场景文本识别中,大部分情况并不是字符外形清晰可读的(至少不是每个字符都可能清晰可读),那这种情况下单纯基于CV的思路就比较乏力了。从简单层面来看,o0、il以及中文的末、蓝,这些字符在外形上都比较接近,使用纯视觉特征进行区分难度比较大。

  • Levenshtein Distance莱文斯坦距离,属于编辑距离的一种。由苏联数学家Vladimir Levenshtein于1965年提出。两个字符串之间的Levenshtein Distance莱文斯坦距离指的是将一个字符串变为另一个字符串需要进行编辑操作最少的次数。其中,允许的编辑操作有以下三种。不难看出其可用于衡量两个字符串之间的差异,故被广泛应用于拼写纠错检查、DNA分析、语音识别等领域

    • 「替换」:将一个字符替换成另一个字符
    • 「插入」:插入一个字符
    • 「删除」:删除一个字符
  • 对于两个字符串A、B而言,字符串A的前 i 个字符和字符串B的前 j 个字符的莱文斯坦距离符合如下公式

    • 在这里插入图片描述

    • 1 ( a i ≠ b j ) \mathcal 1_{(a_i\neq b_j)} 1(ai=bj) 是一个Indicator Function指示函数,当字符串a的第i个字符和字符串b的第j个字符不同时,其值为1;否则为0

    • 72. 编辑距离 - 力扣(LeetCode)

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羞儿

写作是兴趣,打赏看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值