手写公式识别算法ABM论文翻译

Handwritten Mathematical Expression Recognition via Attention Aggregation based Bi-directional Mutual Learning

一、摘要

  手写数学表达式识别旨在从给定图像自动生成 LaTeX 序列。目前,基于注意力的编码器-解码器模型被广泛用于这项任务。它们通常以从左到右 (L2R) 的方式生成目标序列,而未利用从右到左 (R2L) 的上下文。在本文中,我们提出了一种基于注意力聚合的双向相互学习网络(ABM),它由一个共享编码器和两个并行逆解码器(L2R 和 R2L)组成。两个解码器通过相互蒸馏得到增强,在每个训练步骤中都涉及一对一的知识转移,充分利用了两个相反方向的互补信息。此外,为了处理不同尺度的数学符号,提出了一种注意力聚合模块(AAM)来有效地整合多尺度覆盖注意力。值得注意的是,在推理阶段,鉴于模型已经从两个反向方向学习知识,我们只使用 L2R 分支进行推理,保持原始参数大小和推理速度。大量实验表明,我们提出的方法在 CROHME 2014 上实现了 56.85% 的识别准确率,在 CROHME 2016 上实现了 52.92% 的识别准确率,在 CROHME 2019 上实现了 53.96% 的识别准确率,而无需数据增强和模型集成,大大优于最先进的方法。
  源代码地址 https://github.com/XH-B/ABM
  论文地址:https://arxiv.org/pdf/2112.03603.pdf

二、简介

  手写数学表达式识别(HMER)具有智能教育、人机交互、学术论文写作辅助工具等多种应用场景。 从输入图像生成 LaTeX 序列的传统方法总是依赖于专门设计的语法(Lavirotte 和 Pottier 1998;Chan 和 Yeung 2001;MacLean 和 Labahn 2013)。 这些文法需要大量的先验知识来定义数学表达式结构、符号的位置关系以及相应的解析算法,使其无法识别复杂的数学表达式。
  最近,基于注意力的编码器-解码器模型已应用于 HMER,因为它在机器翻译 (Cho et al. 2014)、语音识别 (Bahdanau et al. 2016)、分割 (Tianfei et al. 2020, 2021; Wenguan) 方面表现出色等人,2021)。这些基于注意力的方法(Deng et al. 2017; Le and Nakagawa 2017; Zhang et al. 2017, 2018; Zhang, Du, and Dai 2018; Wu et al. 2018; Le, Indurkhya, and Nakagawa 2019; Li et al. . 2020; Wu et al. 2020) 明显优于基于语法的方法。例如,WAP(Zhang et al. 2017)首先引入了2D coverage attention来解决缺乏覆盖的问题,如图1(a)所示。覆盖注意力是过去注意力的总和,旨在跟踪过去的对齐信息,从而可以引导注意力模型为图像的未翻译区域分配更高的注意力概率。然而,覆盖注意力的一个主要限制是它只使用历史对齐信息,而忽略未来信息(未翻译区域)。例如,许多数学表达式具有对称结构,其中左"{“和右”}“大括号总是一起出现,有时甚至相距甚远。并且方程中的一些符号是相关的,例如” ∫ ”和" d x dx dx"。大多数方法只使用从左到右的覆盖注意力来识别当前符号,而忽略了从右边开始的未来信息也很重要的事实,这可能会导致注意力漂移的问题。并且当前符号和先前符号之间捕获的依赖信息随着它们距离的增加而变得更弱。因此,他们可能无法充分利用长距离相关性或数学表达式的语法规范(Zhao et al. 2021)。 BTTR (Zhao et al. 2021) 使用具有两个方向的 Transformer 解码器来处理注意力漂移(图 1(f)),但是没有明确的监督信息让 BTTR 从反向方向学习,并且 BTTR 对齐注意力时没有覆盖机制,使其在识别长公式方面仍然受到一些限制。此外,数学表达式中字符的可变比例可能导致识别困难或不确定性。 DWAP-MSA (Zhang et al. 2018) 尝试对多尺度特征进行编码以缓解这个问题。然而,它们不缩放局部感受野,而只缩放特征图,使得在识别过程中无法准确关注小字符。
在这里插入图片描述
  图1:典型架构和我们提出的 HMER 模型。(a)是基于二维注意力的 HMER 编码器 - 解码器框架( Zhang et al. 2017 )。(b)使用多尺度特征 (Zhang et al. 2018) 。(c)引入符号分类网络(Truong et al. 2020)。(d) 利用现有的印刷表达方式(Wu et al. 2020)。(e)引入了树解码器 (Zhang et al. 2020)。 (f) 使用变压器解码器(Zhao et al. 2021)。(g)是我们提出的模型,其中两个逆解码器相互学习以增强其解码能力。
  因此,我们提出了一种用于 HMER 的具有注意力聚合和双向相互学习 (ABM) 的新框架,如图 1(g) 所示。特别是,我们的框架包括三个模块:特征提取、注意力聚合和双向相互学习。 (1) 在特征提取模块中,我们使用 DenseNet 作为特征提取器,因为它已被证明在 WAP 中是有效的 (Zhang et al. 2017)。 (2)在Attention Aggregation模块中,我们提出了多尺度覆盖attention来识别数学表达式中不同大小的字符,从而提高了当前时刻的识别准确率,缓解了错误累积的问题。 (3) 在双向相互学习模块中,我们提出了一种新颖的解码器框架,具有两个解码方向相反的并行解码器分支(L2R 和 R2L),并使用相互蒸馏来相互学习。具体来说,该框架有助于当前的覆盖注意力同时充分利用历史和未来信息,从而更好地确定当前的注意力位置。因此,每个分支可以通过逐步相互学习来学习更多互补的上下文信息并探索远距离依赖信息,从而获得更强的解码能力。请注意,虽然我们使用两个解码器进行训练,但我们只使用一个 L2R 分支进行推理。我们的贡献总结如下:
  (1) 我们提出了一种新颖的双向相互学习框架,具有共享编码器和两个反向解码器,以更好地学习互补的上下文信息。 据我们所知,我们是第一个将相互学习引入 HMER 的。
  (2) 我们提出了一种多尺度覆盖注意机制,以更好地识别表达式中具有可变尺度的符号。
  (3) 综合实验表明,ABM 分别在 CROHME 2014、2016 和 2019 上大大超越了最先进的方法。 并且 ABM 框架可以应用于包括 GRU、LSTM 和 Transformer 在内的各种解码器。

三、相关工作

3.1 、HMER 方法

  传统的 HMER 方法需要专门设计的语法规则来表示公式的二维结构信息,例如图形语法 (Lavirotte and Pottier 1998)、定语从句语法 (Chan and Yeung 2001)、关系语法 (MacLean and Labahn 2013) 或概率基于模型的语法(Awal、Mouchere 和 Viard-Gaudin 2014;MacLean 和 Labahn 2015;'Alvaro、S’anchez 和 Bened’ı 2016)。
  近年来,随着序列学习在各种应用中的成功,例如机器翻译 (Luong et al. 2014) 和语音识别 (Bahdanau et al. 2016),编码器-解码器框架已被广泛用于解决图像到- 序列任务。 (Deng et al. 2017) 首次将这样的框架引入 HEMR,它使用卷积神经网络 (CNN) 和循环神经网络 (RNN) (Kawakami 2008) 作为编码器进行特征提取,而门控循环单元 (GRU) ( Chung et al. 2014) 被用作识别 LaTeX 字符的解码器。许多方法通常使用更强的卷积网络来改进编码器以加强特征提取,例如引入全卷积网络 (Zhang et al. 2017; Wang et al. 2019)、DenseNet (Zhang, Du, and Dai 2018; Le, Indurkhya, and Nakagawa 2019;Truong 等人 2020)和 ResNet(Li 等人 2020;Yan 等人 2021)。对于解码器,大多数方法都设计了注意力机制来改进它们的翻译。例如,覆盖注意力机制(Zhang et al. 2017; Zhang, Du, and Dai 2018; Li et al. 2020; Le 2020; Truong et al. 2020)通过考虑过去的对齐概率。此外,一些方法通过引入数据增强等附加数据来提高其识别性能,包括模式生成策略 PGS (Le, Indurkhya, and Nakagawa 2019)、随机尺度增强 SCDA (Li et al. 2020),以及使用印刷表达式 DLA (Le 2020)、PAL (Wu et al. 2018) 和 PALv2 (Wu et al. 2020)。此外,一些方法还改进了带有转换器的解码器以利用双向信息 (BTTR) (Zhao et al. 2021) 或树解码器来增强处理复杂公式的解码能力 (DWAPTD) (Zhang et al. 2020)。上述一些模型的结构如图1(a-f)所示。

3.2 、相互学习

  相互学习是指一组模型在训练过程中共同学习的过程。 DML(Zhang et al. 2018)在知识蒸馏领域首次提出互学习的概念,通过协同训练提高模型泛化能力。共蒸馏(Anil et al. 2018)迫使每个网络通过蒸馏损失保持其多样性。 ONE (Lan, Zhu, and Gong 2018) 训练一个多分支网络,并使用这些分支的预测作为软目标来指导每个分支网络。 CLNN (Song and Chai 2018) 设计了分层的多个分支并使用了相应的缩放梯度。 KDCL (Guo et al. 2020) 提出整合来自多个网络的软目标,然后监督每个网络的学习。这些方法已经在公共分类数据集上得到了广泛的尝试,并且每个相互学习的工作通常都是单一的基于 CNN 的架构。然而,我们的实验结果表明,两个编码器-解码器网络之间的直接相互学习无法实现 HMER 任务的令人满意的识别精度。因此,我们设计了一种新颖的架构,由一个共享编码器和两个逆解码器组成,它们可以在每个解码步骤中对齐并相互学习,以充分探索数学表达式的特定特征,例如对称性和长距离相关性。

四、方法

  我们为 HMER 提出了一种具有注意力聚合和双向相互学习 (ABM) 的新型端到端架构,如图 2 所示。它主要由三个模块组成:1) 提取特征的特征提取模块 (FEM) 来自数学表达式图像的信息。 2)Attention Aggregation Module(AAM),集成多尺度覆盖attention,对齐历史attention信息,在解码阶段有效聚合不同尺度symbol的不同尺度特征。 3)双向相互学习模块(BML)由两个具有相反解码方向(L2R和R2L)的并行解码器组成,以相互补充信息。 在训练过程中,每个解码器分支不仅可以学习ground-truth LaTeX序列,还可以学习另一个分支的预测,从而增强解码能力。

在这里插入图片描述
  图2 :我们提出的模型的架构。 首先将图像输入 DenseNet 以提取特征,然后两个解码器分别生成两个相反方向的 LaTeX 序列。 在解码期间,通过最小化每个时间步的预测概率之间的距离来训练两个分支。 提出了一种注意力聚合模块,通过不同尺度的覆盖注意力来产生当前注意力。 操作"平铺"复制隐藏状态向量 H × W 次。 " MLP" 表示可训练的多层感知层。 两个分支在训练期间不共享参数。

4.1 、Feature Extraction Module(特征提取模型)

  我们使用密集连接的卷积网络 (DenseNet (Huang et al. 2017)) 作为编码器从输入图像中提取特征,类似于 (Zhang, Du, and Dai 2018)。 输出是一个 H × W × D H×W×D H×W×D的三维特征图 F F F,其中 H H H W W W D D D分别表示特征图的高度、宽度和通道。 具体而言,我们将输出特征视为 M M M维的内容信息 a a a,形成向量 a = { a 1 , a 2 , . . . , a M } a = \{ a_{1},a_{2},...,a_{M} \} a={a1,a2,...,aM},其中 a i ∈ R D a_i \in R^{D} aiRD M = H × W M=H\times W M=H×W

4.2 、Attention Aggregation Module( 注意力聚合模块)

  注意机制提示解码器关注输入图像的特定区域。特别是,基于覆盖的注意力可以更好地跟踪对齐信息并指导模型将更高的注意力概率分配给未翻译的区域(Zhang et al. 2017)。受 Inception 模块 (Szegedy et al. 2015) 的启发,我们提出了注意力聚合模块 (AAM) 来聚合覆盖注意力的不同感受野。与传统注意力相比,AAM 不仅关注局部区域的详细特征,还关注更大感受野上的全局信息。因此,AAM 将生成更精细的信息对齐,并帮助模型捕捉更准确的空间关系。请注意,我们的 AAM 与 DWAPMSA (Zhang et al. 2018) 不同,后者提出了一种具有多尺度分支的密集编码器来生成低分辨率和高分辨率特征,需要更多的参数和计算。图 2 显示了我们的 AAM 的详细信息,它使用隐藏状态 h t ^ \hat{h_t} ht^、特征图 F \mathcal{F} F和覆盖注意力 β t \beta_t βt来计算当前注意力权重 α t \alpha_t αt,然后获得上下文向量 c t c_t ct

A s = U s β t , A l = U l β t , (1) A_s=U_s \beta_t,A_l=U_l\beta_t,\tag{1} As=Usβt,Al=Ulβt,(1)

U s U_s Us U l U_l Ul分别表示小内核大小和大内核大小(例如,5、11)的卷积操作, β t \beta_t βt表示所有过去注意力概率的总和,它被初始化为零向量,然后由下式计算

β t = Σ l = 1 t − 1 α l (2) \beta_t = \Sigma _{l=1} ^{t-1} \alpha_l \tag{2} βt=Σl=1t1αl(2)

其中 α l \alpha_l αl表示第 l l l步的注意力分数。 当前注意力图 由下式计算

α t = v a T tanh ⁡ ( W h ^ h ^ t + U f F + W s A s + W l A l (3) \alpha_t=v_a^T \tanh(W_{\hat{h}} \hat{h}_t + U_fF+W_sA_s+W_lA_l \tag{3} αt=vaTtanh(Wh^h^t+UfF+WsAs+WlAl(3)

其中 W h ^ ∈ R n × d W_{\hat{h}} \in R^{n \times d} Wh^Rn×d W s ∈ R 1 × d W_{s} \in R^{1 \times d} WsR1×d W l ∈ R 1 × d W_{l} \in R^{1 \times d} WlR1×d是可训练的权重矩阵, U f U_f Uf 1 × 1 1\times 1 1×1卷积运算, h ^ t \hat h_t h^t表示由等式中的 GRU 生成的隐藏状态在公式(7)。
  上下文向量表示为 c t c_t ct并计算为特征内容信息 a a a的加权和:

c t = Σ i − 1 M α t , i a i (4) c_t= \Sigma _{i-1} ^{M} \alpha _{t,i} a_i \tag{4} ct=Σi1Mαt,iai(4)

其中 α t \alpha_t αt F \mathcal F F在步骤 t t t的第 i i i个特征的权重。

4.3 、Bi-directional Mutual Learning Module(双向交互学习模型)

  给定输入的数学表达式图像,传统的 HMER 方法从左到右 (L2R) 对其进行解码 (Zhang et al. 2017; Zhang, Du, and Dai 2018),没有充分考虑长距离依赖性。因此,我们建议利用双流解码器将输入图像转换为两个相反方向(L2R 和 R2L)的 LaTex 序列,然后相互学习解码信息。这两个分支具有相同的架构,只是它们的解码方向不同。对于双向训练,我们分别添加 <sos>和 <eos> 作为 LaTeX 序列的开始和结束符号。特别地,对于长度为 T T T, Y = { Y 1 , Y 2 , . . . , Y T } Y=\{Y_1,Y_2,...,Y_T \} Y={Y1,Y2,...,YT}的目标 LaTeX 序列,我们将其从左到右 (L2R)表示为 Y → l 2 r = { < s o s > , Y 1 , Y 2 , . . . , Y T , < e o s > } \overrightarrow{\mathcal Y}_{l2r} = \{ <sos>,Y_1,Y_2,...,Y_T,<eos>\} Y l2r={<sos>,Y1,Y2,...,YT,<eos>}并且从右到左(R2L)为: Y → r 2 l = { < e o s > , Y T , Y T − 1 , . . . , Y 1 , < s o s > } \overrightarrow{\mathcal Y}_{r2l} = \{ <eos>,Y_T,Y_{T-1},...,Y_1,<sos>\} Y r2l={<eos>,YT,YT1,...,Y1,<sos>},L2R 和 R2L 分支在步骤 t t t的预测符号概率计算如下:

p ( y → t ∣ y → t − 1 ) = W 0 m a x ( W y E y → t − 1 + W h h t + W t c t ) (5) p(\overrightarrow{y}_t|\overrightarrow{y}_{t-1})=W_0max(W_y E \overrightarrow{y}_{t-1} + W_h h_t +W_t c_t) \tag{5} p(y ty t1)=W0max(WyEy t1+Whht+Wtct)(5)

p ( y ← t ∣ y ← t − 1 ) = W y ′ m a x ( W y ′ E ′ y ← t − 1 + W h ′ h t ′ + W t ′ c t ′ ) (6) p(\overleftarrow{y}_t|\overleftarrow{y}_{t-1})=W_y ^{\prime}max(W_y^{\prime} E^{\prime} \overleftarrow{y}_{t-1} + W_h^{\prime} h_t^{\prime} +W_t^{\prime} c_t^{\prime}) \tag{6} p(y ty t1)=Wymax(WyEy t1+Whht+Wtct)(6)

其中 h t h_t ht, y → t \overrightarrow{y}_t y t表示 L2R 分支中步骤 t t t的当前状态和先前的预测输出。标记 ∗ ′ *^ \prime 表示 R2L 分支。 W 0 ∈ R K × d W_0 \in R^{K \times d} W0RK×d W y ∈ R d × n W_y \in R^{d \times n} WyRd×n, W h ∈ R d × n W_h \in R^{d \times n} WhRd×n, W t ∈ R d × D W_t \in R^{d \times D} WtRd×D是可训练的权重矩阵。令 d d d K K K n n n分别表示注意维度、符号类的数量和 GRU 维度。 E E E是一个嵌入矩阵。 max 表示 maxout 激活函数。隐藏表示 { h 1 , h 2 , . . . , h t } \{ h_1,h_2,...,h_t \} {h1,h2,...,ht}由以下方式产生:
h ^ t = f 1 ( h t − 1 , E y → t − 1 ) (7) \hat h_t=f_1(h_{t-1},E\overrightarrow{y}_{t-1}) \tag{7} h^t=f1(ht1,Ey t1)(7)
h t = f 2 ( h ^ t , c t ) (8) h_t=f_2(\hat h_t,c_t) \tag{8} ht=f2(h^t,ct)(8)

其中 f 1 f_1 f1 f 2 f_2 f2表示类似于 (Zhang et al. 2017) 的两个单向 GRU 模型。
  我们将 L2R 分支的概率定义为 P → l 2 r = { < s o s > , y → 1 , y → 2 , . . . , y → T , < e o s > } \overrightarrow{\mathcal P}_{l2r} = \{ <sos>,\overrightarrow{y}_1,\overrightarrow{y}_2,...,\overrightarrow{y}_T,<eos>\} P l2r={<sos>,y 1,y 2,...,y T,<eos>},并且 R2L 分支为 P ← r 2 l = { < e o s > , y ← 1 , y ← 2 , . . . , y ← T , < s o s > } \overleftarrow{\mathcal P}_{r2l} = \{ <eos>,\overleftarrow{y}_1,\overleftarrow{y}_2,...,\overleftarrow{y}_T,<sos>\} P r2l={<eos>,y 1,y 2,...,y T,<sos>},其中 y → i ∈ R K \overrightarrow{y}_i \in R^K y iRK是执行第 i i i步解码时标签符号的预测概率。为了将相互学习应用于来自两个分支的预测分布,我们需要对齐 L2R 和 R2L 解码器生成的 LaTeX 序列。具体来说,我们丢弃第一个和最后一个预测( ⟨ e o s ⟩ \left\langle {eos} \right\rangle eos ⟨ s o s ⟩ \left\langle {sos} \right\rangle sos)得到 P → l 2 r ′ \overrightarrow{\mathcal P}_{l2r}^\prime P l2r P ← r 2 l ′ \overleftarrow{\mathcal P}_{r2l}^\prime P r2l,然后反向 P ← r 2 l ′ \overleftarrow{\mathcal P}_{r2l}^\prime P r2l得到 P ← r 2 l ∗ = { y ← T , y ← T − 1 , . . . , y ← 1 } \overleftarrow{\mathcal P}_{r2l} ^* = \{ \overleftarrow{y}_T,\overleftarrow{y}_{T-1},...,\overleftarrow{y}_1\} P r2l={y T,y T1,...,y 1}。同时,引入 Kullback-Leibler (KL) loss 来量化它们之间预测分布的差异。在训练期间,我们使用模型生成的软概率来提供更多信息,类似于 (Zhang, Du, and Dai 2018)。因此,对于 k 个类别,来自 L2R 分支的软概率定义为:

σ ( Z ⃗ i , k , S ) = exp ⁡ ( Z ⃗ i , k / S ) Σ j = 1 K exp ⁡ ( Z ⃗ i , j / S ) (9) \sigma ( {{{\vec Z}_{i,k}},S} ) = {{\exp \left( {{{\vec Z}_{i,k}}/S} \right)} \over {\Sigma_{j = 1}^K {\exp \left( {{{\vec Z}_{i,j}}/S} \right)} }} \tag{9} σ(Z i,k,S)=Σj=1Kexp(Z i,j/S)exp(Z i,k/S)(9)

其中 S 表示生成软标签的温度参数。解码器网络计算的该序列的第 i 个符号的 logits 定义为 Z ⃗ i = { z 1 , z 2 , . . . , z K } {\vec Z_i} = \{ {z_1},{\rm{ }}{z_2},{\rm{ }}...,{\rm{ }}{z_K}\} Z i={z1,z2,...,zK}。我们的目标是最小化两个分支概率分布之间的距离。因此, P → l 2 r ′ \overrightarrow{\mathcal P}_{l2r}^\prime P l2r P ← r 2 l ∗ \overleftarrow{\mathcal P}_{r2l}^* P r2l 之间的 KL 距离计算如下:
L K L = S 2 Σ i − 1 T Σ j = 1 K σ ( Z → i , j , S ) log ⁡ σ ( Z → i , j , S ) σ ( Z ← T + 1 − i , j , S ) (10) L_{KL}=S^2\Sigma_{i-1}^{T} \Sigma _{j=1}^{K} \sigma(\overrightarrow{Z}_{i,j},S) \log \frac {\sigma(\overrightarrow{Z}_{i,j},S)}{\sigma(\overleftarrow{Z}_{T+1-i,j},S)} \tag{10} LKL=S2Σi1TΣj=1Kσ(Z i,j,S)logσ(Z T+1i,j,S)σ(Z i,j,S)(10)
其中 S 2 S^2 S2确保来自其他分支的真值和概率分布可以对模型训练做出可比的贡献(Hinton、Vinyals 和 Dean 2015),并且 Z → i , j \overrightarrow{Z}_{i,j} Z i,j Z ← T + 1 − i , j \overleftarrow{Z}_{T+1-i,j} Z T+1i,j表示分别来自 L2R 和 R2L 分支的 logits。

4.4 、损失函数

特别地,对于长度为 T T T, Y → l 2 r = { < s o s > , Y 1 , Y 2 , . . . , Y T , < e o s > } \overrightarrow{\mathcal Y}_{l2r} = \{ <sos>,Y_1,Y_2,...,Y_T,<eos>\} Y l2r={<sos>,Y1,Y2,...,YT,<eos>}的目标 LaTex 序列,我们表示在第 i 个时间步对应的 one-hot ground-truth 标签 为 Y i = { x 1 , x 2 , . . . , x K } Y_i= \{x_1,x_2,...,x_K \} Yi={x1,x2,...,xK}其中 x i ∈ { 0 , 1 } x_i \in \{0,1\} xi{0,1}。 第 k 个符号的 softmax 概率计算为:
y → i , k = e x p ( Z → i , k ) Σ j = 1 K e x p ( Z → i , j ) . (11) \overrightarrow {y}_{i,k}= \frac {exp(\overrightarrow{Z}_{i,k})}{\Sigma _{j=1}^K exp(\overrightarrow{Z}_{i,j})}. \tag{11} y i,k=Σj=1Kexp(Z i,j)exp(Z i,k).(11)
对于多类分类,目标标签和两个分支的软最大概率之间的交叉熵损失定义为:
L c d l 2 r = Σ i = 1 T Σ j = 1 K − Y i , j log ⁡ ( y → i , j ) . (12) L_{cd}^{l2r} =\Sigma _{i=1}^T \Sigma _{j=1} ^K -Y_{i,j} \log(\overrightarrow{y}_{i,j}). \tag{12} Lcdl2r=Σi=1TΣj=1KYi,jlog(y i,j).(12)
L c d r 2 l = Σ i = 1 T Σ j = 1 K − Y i , j log ⁡ ( y ← T + 1 − i , j ) . (13) L_{cd}^{r2l} =\Sigma _{i=1}^T \Sigma _{j=1} ^K -Y_{i,j} \log(\overleftarrow{y}_{T+1-i,j}). \tag{13} Lcdr2l=Σi=1TΣj=1KYi,jlog(y T+1i,j).(13)
总损失函数如下:
L = L c d l 2 r + L c d r 2 l + λ L K L (14) L=L_{cd}^{l2r}+L_{cd}^{r2l} + \lambda L_{KL} \tag{14} L=Lcdl2r+Lcdr2l+λLKL(14)
其中 λ \lambda λ是平衡识别损失和KL发散损失的超参数。

五、实验

5.1 、数据集和指标

  我们基于具有 111 类数学符号和 8836 个手写数学表达式的 CROHME 2014 竞赛数据集训练我们的模型,并在三个公共测试数据集上测试我们的模型:CROHME 2014、2016 和 2019,分别具有 986、1147 和 1199 个表达式 . 我们使用两个指标来评估模型:(1)表达水平:ExpRate(%),≤1误差(%)和≤2误差(%)表示在可以容忍零到两个结构或符号错误时的表达识别精度。 (2) 词级:词级错误率(WER(%))(Klakow and Peters 2002)用于评估词级的替换、删除和插入等错误。

5.2 、实施细节

  设置 :我们模型中的两个不同解码器分支设置为不同的权重初始化方法(Glorot 和 Bengio 2010;He et al. 2015)。 对于解码器,我们设置 n = 256、d=512、D=684 和 K=113(在 111 个标签上添加 hsosi 和 heosi)。 在损失函数中,λ 设置为 0.5。 训练 :我们提出的方法使用 Adadelta 优化器进行了优化,它的学习率从 1 开始,当 WER 在 15 个 epoch 内没有下降时衰减两倍。 当学习率下降 10 倍时,训练会提前停止。 我们将批量大小设置为 16。 测试平台 :所有模型都在单个 NVIDIA V100 16GB GPU 上进行训练/测试。

5.3、与先前工作的比较

在这里插入图片描述

  表1:与先前作品的比较(以%为单位)。 请注意,我们的结果来自L2R分支。 上面显示的结果部分引用自他们的相应论文。

  我们将 ABM 与先前的最先进技术进行比较,包括 PAL (Wu et al. 2018)、PAL-v2 (Wu et al. 2020)、WAP (Zhang et al. 2017)、PGS (Le, Indurkhya, and Nakagawa 2019), DWAP (WAP with DenseNet as encoder), DWAP-MSA (DWAP with multi-scale attention) (Zhang et al. 2018), DWAP-TD (DWAP with tree decoder) (Zhang et al. 2020)、DLA (Le 2020)、WS WAP(弱监督 WAP)(Truong 等人 2020)和 BTTR(双向训练变压器)(Zhao 等人 2021)。为了确保性能比较的公平性,我们展示的所有方法都没有使用数据增强。从表 1 中我们可以观察到:(1)所提出的模型 ABM 在三个测试数据集上显着提高了识别准确率(ExpRate)并优于基线(DWAP)6.25%、5.49% 和 6.26%,证明了 bi 的成功-定向相互学习模块和注意力聚合模块在增强预测能力方面。 (2) 与其他方法相比,我们的 ABM 模型在几乎所有指标方面都优于以前的最新技术。 BTTR 使用传统的 Transformer 作为解码器,可以在一定程度上减少长序列的解码错误。但是,≤1error和≤2error的结果表明,单词错误率并不能显着降低。在 CROHME 2014 上,我们的模型比 BTTR 更准确,在 ExpRate 中分别高出 2.89%、7.71% 和 10.96%,误差≤1 和 ≤2。这表明我们的方法可以提高基于 GRU 的模型的性能,并且完全优于 BTTR 的 Transformer 解码器。

5.4 、消融研究

在这里插入图片描述

  表2:消融研究(%)。 我们在CROHME 2014测试数据集上评估 AAM和 BML模块。
在这里插入图片描述

  图3:对AAM中的卷积核和方程式(14)中的hy-parameter λ 组合的参数敏感性分析。

  我们进行消融研究以调查不同组件在提议的网络中的贡献。基线模型是传统的编码器-解码器架构 (DWAP) (Zhang et al. 2018),在 ExpRate 中达到 50.60%。从表2可以看出:(1)“+AAM"的结果表明,在baseline模型中加入attention聚合模块进一步提升了2.04%以上的识别性能,多尺度attention可以有利于基线模型,因为更多地关注小符号。 (2)”+BML"是指为baseline模型配备一个额外的逆解码方向的解码器,用于相互学习。从结果来看,该模型在利用逆向上下文信息后,可以实现从 50.60% 到 55.23% 的 4.63% 准确度增量。 (3) ABM的结果表明,这两个模块同时使用产生了累积效应,使模型的整体准确率大幅提高了6.25%。为此,我们证明了所提出方法中的每个组件都可以对整体识别效果做出贡献。

5.5、参数灵敏度

  我们在单变量设置下对 CROHME 2014 上提出的 ABM 进行敏感性分析。 AAM 中卷积核的组合:鉴于不同大小的卷积核具有不同的感受野,我们证明了不同卷积核在 AAM 中的潜在值。从图 3(a) 可以看出,多尺度内核的设置可以在所有数据集上产生更好的性能,并且多尺度注意力是有益的,特别是对于具有可变尺度的符号。我们的选择,即结合 5*5 和 11*11,是最稳健的策略。超参数 λ:λ 控制来自两个解码分支的相互学习损失与方程式中的识别损失之间的权衡。 (14)。在图 3(b) 中,λ 从小因子 (=0.1) 开始到大因子 (=1),并且性能 (ExpRate) 在开始时增加,因为另一个分支从反方向带来了有价值的信息。但是,由于可能会发生不稳定的训练,因此 ExpRate 往往会因较大的因素(如 0.7)而较低。因此,我们设置超参数 λ = 0.5。

5.6、讨论

在这里插入图片描述
  图4:将手写数学表达式翻译成两个方向( L2R和R2L)的LaTeX序列的覆盖注意力可视化过程。 蓝色框表示当前时间步中正在解码的字符。
在这里插入图片描述
  图5: CROHME 2014上DWAP(基线)和 ABM 的 t-SNE可视化。

在这里插入图片描述

  1"Uni"表示应用一个分支进行训练。

  2"AUM"表示与 AAM应用单向互学习。

  3"-L2R"和" -R2L" 分别表示从L2R和R2L解码器生成的结果。

  表3:不同解码方向的性能(百分比)比较。 请注意,我们只使用一个解码分支进行测试。

在这里插入图片描述
  表4:带有 BML的CROHME 2014测试数据集上前缀-(2, 5)(前两个或五个符号)和后缀-(2, 5)(最后两个或五个符号)的识别准确率(以百分比为单位)。

在这里插入图片描述

  1 † 表示使用 AAM BML 模块。

  2 BTTR* 表示在没有 AJS 的情况下应用 Bi-trained 方法,结果直接引用自其论文。

  3 ‡ 表示仅应用 BML 模块,因为 AAM 不适合采用并行解码的 BTTR** 。

  4 有两个分支时来自 L2R 分支的结果。

  表5 :配备我们模块的不同解码器的性能(百分比)。

在这里插入图片描述

  表6 :不同长度表达式的准确度

  注意力可视化 为了进一步揭示我们提出的方法的内部工作机制,我们将连续解码的注意力过程可视化,如图 4 所示。注意力权重用红色表示,深红色表示注意力图中权重较高。比如解码器翻译第五个字符"0"时,从左到右方向看,attention可以获得历史对齐信息,从右到左方向,attention可以获得未来对齐信息,最终准确定位到当前attention位置.特征可视化此外,我们在 tSNE (Van der Maaten and Hinton 2008) 的 CROHME 2014 测试集中可视化十个符号的特征分布。我们将所有先前的目标符号输入到解码器以预测当前符号,然后在分类器的第一个全连接层之前可视化特征。图 5 表明,与基线 DWAP 相比,我们的方法生成的不同符号的特征更加可分离。评估不同的解码方向我们验证了双向相互学习相对于单向相互学习和原始单训练模型(Uni-L2R 或 Uni-R2L)的优越性。我们为单向互学习配备 AAM 以形成 AUM 以进行公平比较。从表 3 可以看出,我们的方法 (ABM) 将识别准确率提高了 6.25% 以上。事实证明,两个逆解码器之间的相互学习比单向相互学习更有效。关于长距离依赖 RNN 的一个主要弱点是其输出不平衡,具有高质量的前缀但低质量的后缀识别。从表 4 可以看出,Uni-L2R 中的前缀和后缀识别准确率有 5.27% 的差距。使用 ABM 后,L2R 分支的准确率从前缀的 85.29% 提高到 88.73%,在后缀从 80.02% 提高到 84.37%。因此,L2R 分支可以从 R2L 分支中学习解码知识,更好地适应长距离依赖。同时提高了两个方向的识别能力。不同编码器和解码器的通用性我们验证了所提出方法在不同编码器(MobileNetV2 (Sandler et al. 2018)、Xception (Chollet 2017) 和 DenseNet (Huang et al. 2017))以及不同解码器( GRU、LSTM 和变压器)。公平地说,所有实验都使用相同的设置。如表 5 所示,对于不同的编码器,我们将 DenseNet 替换为 MobileNetV2 和 Xception,它们的原始模型在 ExpRate 中分别提高了 4.47% 和 3.65%。对于不同的解码器,GRU、LSTM 和 Transformer 在 ExpRate 中分别提高了 6.25%、5.49% 和 3.34%。需要注意的是,单向训练的BTTR结果是48.13%。因此,我们的方法在不同的编码器或解码器上是通用的。不同长度表达式的性能进一步,为了探索我们的方法解码不同长度序列的能力,我们根据相应的 LaTeX 序列的长度将测试数据集分成不同的组,然后比较每组的模型。直观地说,表达越长,翻译越难。从表6来看,BTTR在一定程度上解决了长序列识别问题。这是因为它使用双向 Transformer 作为解码器。但对于序列长度大于 40 的长公式,其识别准确率反而下降。然而,我们的方法可以在任何序列长度上表现良好。

六、结论

我们为 HMER 提出了一种新颖的 ABM 网络,它以相互学习的方式在反向解码方向上使用双分支解码器。实验结果表明,ABM 优于现有技术。此外,它适用于现有的解码器,包括 GRU、LSTM 和 Transformer,在推理过程中无需增加额外参数即可有效提高其性能。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值