0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Transformer与覆盖注意力机制建模的手写数学公式识别

CVer 来源:CSIG文档图像分析与识别专 作者: Wenqi Zhao, Liangca 2022-11-01 15:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、研究背景

手写数学公式识别是将包含数学表达式的图像转换为结构表达式,例如LaTeX数学表达式或符号布局树的过程。手写数学表达式的识别已经带来了许多下游应用,如在线教育、自动评分和公式图像搜索。在在线教育场景下,手写数学表达式的识别率对提高学习效率和教学质量至关重要。 对比于传统的文本符号识别(Optical Character Recognition, OCR),公式识别具有更大的挑战性。公式识别不仅需要从图像中识别不同书写风格的符号,还需要建模符号和上下文之间的关系。例如,在LaTeX中,模型需要生成“^”、“_”、“{”和“}”来描述二维图像中符号之间的位置和层次关系。编码器-解码器架构由于可以编码器部分进行特征提取,在解码器部分进行语言建模,而在手写数学公式识别任务(Handwritten Mathematical Expression Recognition, HMER)中被广泛使用。 虽然Transformer在自然语言处理领域已经成为了基础模型,但其在HMER任务上的性能相较于循环神经网络(Recurrent Neural Network, RNN)还不能令人满意。作者观察到现有的Transformer与RNN一样会受到缺少覆盖注意力机制的影响,即“过解析”——图像的某些部分被不必要地多次解析,以及“欠解析”——有些区域未被解析。RNN解码器使用覆盖注意机制来缓解这一问题。然而,Transformer解码器所采用的点积注意力没有这样的覆盖机制,作者认为这是限制其性能的关键因素。 不同于RNN,Transformer中每一步的计算是相互独立的。虽然这种特性提高了Transformer中的并行性,但也使得在Transformer解码器中直接使用以前工作中的覆盖机制变得困难。为了解决上述问题,作者提出了一种利用Transformer解码器中覆盖信息的新模型,称为CoMER。受RNN中覆盖机制的启发,作者希望Transformer将更多的注意力分配到尚未解析的区域。具体地说,作者提出了一种新颖的注意精炼模块(Attention Refinement Module, ARM),它可以在不影响并行性的前提下,根据过去的对齐信息对注意权重进行精炼。同时为了充分利用来自不同层的过去对齐信息,作者提出了自覆盖和交叉覆盖,分别利用来自当前层和前一层的过去对齐信息。作者进一步证明,在HMER任务中,CoMER的性能优于标准Transformer解码器和RNN解码器。

8250599c-5944-11ed-a3b6-dac502259ad0.png

图1 本文提出的具有注意力精炼模块的Transformer模型

二、方法原理简述

CNN编码器在编码器部分,本文使用DenseNet作为编码器。相较于ResNet,DenseNet在不同尺度特征图上的密集连接能够更好地反映出不同大小字符的尺度特征,有利于后续解码不同位置大小字符的含义。为了使DenseNet输出特征与解码器模型尺寸对齐,作者在编码器的末端增加了1 × 1的卷积层,得到输出图像特征

8272d60c-5944-11ed-a3b6-dac502259ad0.png

位置编码与RNN解码器不同,由于Transformer解码器的Token之间不具有空间位置关系,额外的位置信息是必要的。在论文中,作者与BTTR[1]一致,同时使用图像位置编码和字符位置编码。 对于字符位置编码,作者使用Transformer[2]中引入的1D位置编码。给定编码维数d,位置p,特征维索引i,则字符位置编码向量

8283cb38-5944-11ed-a3b6-dac502259ad0.png

可表示为:

8298865e-5944-11ed-a3b6-dac502259ad0.png

图像位置编码采用与[1,3]相同的二维归一化位置编码。由于模型需要关注的是相对位置,所以首先要将位置坐标归一化。给定二维坐标元组82a77696-5944-11ed-a3b6-dac502259ad0.png,编码维数为d,通过一维位置的拼接计算二维图像位置编码

82b3a6a0-5944-11ed-a3b6-dac502259ad0.png

82c3bb30-5944-11ed-a3b6-dac502259ad0.png

其中82d304dc-5944-11ed-a3b6-dac502259ad0.png82dd0806-5944-11ed-a3b6-dac502259ad0.png代表了输入图像特征的尺寸。注意力精炼模块(ARM)如果在Transformer中直接采用RNN式的覆盖注意力机制。那么将会产生一个具有82e85134-5944-11ed-a3b6-dac502259ad0.png空间复杂度的覆盖矩阵82f64532-5944-11ed-a3b6-dac502259ad0.png,这样的大小是难以接受的。问题的瓶颈在于覆盖矩阵需要先与其他特征向量相加,再乘以向量8305bb20-5944-11ed-a3b6-dac502259ad0.png。如果我们可以先将覆盖矩阵与831270b8-5944-11ed-a3b6-dac502259ad0.png相乘,再加上LuongAttention[4]的结果,空间复杂度将大大降低到82e85134-5944-11ed-a3b6-dac502259ad0.png。因此作者将注意力机制修改为:

832bf3c6-5944-11ed-a3b6-dac502259ad0.png

其中相似向量833be3ee-5944-11ed-a3b6-dac502259ad0.png可分为注意项和精炼项834f0078-5944-11ed-a3b6-dac502259ad0.png。需要注意的是,精炼项可以通过覆盖函数直接由累积835a9da2-5944-11ed-a3b6-dac502259ad0.png向量生成,从而避免了具有为维数为8366b9de-5944-11ed-a3b6-dac502259ad0.png的中间项。作者将上式命名为注意力精炼框架。

8373561c-5944-11ed-a3b6-dac502259ad0.png

图2 注意精炼模块(ARM)的整体结构 为了在Transformer中使用这一框架,作者提出了如图2所示的注意精炼模块(ARM)。可以将Transformer中的点积矩阵8386e8a8-5944-11ed-a3b6-dac502259ad0.png作为注意项,精炼项矩阵R需要从经过Softmax后的注意权值A中计算出来。作者使用了注意权值A来提供历史对齐信息,具体的选择会在下一小节介绍。 作者定义了一个将注意力权重8391753e-5944-11ed-a3b6-dac502259ad0.png作为输入,输出为精炼矩阵839d53e0-5944-11ed-a3b6-dac502259ad0.png的函数83ad28f6-5944-11ed-a3b6-dac502259ad0.png

83b81784-5944-11ed-a3b6-dac502259ad0.png

其中83c67f90-5944-11ed-a3b6-dac502259ad0.png是在时间步83d531a2-5944-11ed-a3b6-dac502259ad0.png时的注意力权重。83e98c24-5944-11ed-a3b6-dac502259ad0.png代表一个卷积核,*代表卷积操作。83f51166-5944-11ed-a3b6-dac502259ad0.png是一个偏置项,8401eb34-5944-11ed-a3b6-dac502259ad0.png是一个线性投影矩阵。 作者认为函数840f6a84-5944-11ed-a3b6-dac502259ad0.png可以提取局部覆盖特征来检测已解析区域的边缘,并识别传入的未解析区域。最终,作者通过减去精炼项R来达到精炼注意力项E的目的。覆盖注意力本节将介绍注意权重A的具体选择。作者提出了自覆盖、交叉覆盖以及融合覆盖三种模式,以利用不同阶段的对齐信息。自覆盖: 自覆盖是指使用当前层生成的对齐信息作为注意精炼模块的输入。对于当前层j,首先计算注意权重8420b0d2-5944-11ed-a3b6-dac502259ad0.png,并对其进行精炼。

842c1814-5944-11ed-a3b6-dac502259ad0.png

其中843b1c42-5944-11ed-a3b6-dac502259ad0.png代表了精炼后的点积结果。8446a6de-5944-11ed-a3b6-dac502259ad0.png代表在j层精炼后的注意力权重。交叉覆盖:作者利用Transformer中解码层相互堆叠的特性,提出了一种新的交叉覆盖方法。交叉覆盖使用前一层的对齐信息作为当前层ARM的输入。j为当前层,我们使用精炼后的注意力权重8452e93a-5944-11ed-a3b6-dac502259ad0.png之前8461ce82-5944-11ed-a3b6-dac502259ad0.png层来精炼当前层的注意力项。

846fa4d0-5944-11ed-a3b6-dac502259ad0.png

融合覆盖:将自覆盖和交叉覆盖相结合,作者提出了一种新的融合覆盖方法,充分利用从不同层生成的过去对齐信息。

848740c2-5944-11ed-a3b6-dac502259ad0.png

其中8495b63e-5944-11ed-a3b6-dac502259ad0.png表示来自当前层的注意权重与来自前一层的精炼注意权重进行拼接。

三、主要实验结果及可视化结果

表1 与先前工作在CROHME数据集上的效果的比较

84a19f30-5944-11ed-a3b6-dac502259ad0.png

从表1中可以看出,与使用覆盖注意力机制的RNN的模型相比,CoMER在每个CROHME测试集上的性能优于Ding等人[5]提出的先前最先进的模型。在完全正确率ExpRate中,与之前性能最好的基于RNN的模型相比,CoMER平均提高了1.43%。与基于Transformer的模型相比,作者提出的带有ARM和融合覆盖的CoMER显著提高了性能。具体而言,CoMER在所有指标上都优于基准“BTTR”,在ExpRate中平均领先基准“BTTR”3.6%。

表2 各模块消融实验

84c74f0a-5944-11ed-a3b6-dac502259ad0.png

在表2中,“Scale -aug”表示是否采用尺度增广[6]。“Self-cov”和“Cross-cov”分别表示是否使用自覆盖和交叉覆盖。与BTTR相比,采用ARM和覆盖机制的CoMER的性能有了明显的提高。

84e9ffe6-5944-11ed-a3b6-dac502259ad0.png

图3 不同算法在CROHME 2014数据集上不同长度正确率的对比 从图3中可以看到,相较于基准方法与本文提出的三种覆盖方法,融合覆盖可以大大增强模型对长公式的识别率。这也验证了覆盖机制能够更好地引导注意力对齐历史信息。

84feee74-5944-11ed-a3b6-dac502259ad0.png

图4 公式图像识别中的精炼项R可视化。

如图4所示,作者将识别过程中的精炼项R可视化。可以看到,经过解析的区域颜色较深,这表明ARM将抑制这些解析区域的注意权重,鼓励模型关注未解析区域。可视化实验表明,作者提出的ARM可以有效地缓解覆盖不足的问题。

四、总结及讨论

作者受RNN中覆盖注意力的启发,提出将覆盖机制引入到Transformer解码器中。提出了一种新的注意精炼模块(ARM),使得在Transformer中进行注意力精炼的同时不损害其并行计算特性成为可能。同时还提出了自覆盖、交叉覆盖和融合覆盖的方法,利用来自当前层和前一层的过去对齐信息来优化注意权重。实验证明了作者提出的CoMER缓解了覆盖不足的问题,显著提高了长表达式的识别精度。作者认为其提出的注意精炼框架不仅适用于手写数学表达式识别。ARM可以帮助精炼注意权重,提高所有需要动态对齐的任务的对齐质量。为此,作者打算将解码器中的ARM扩展为一个通用框架,用于解决未来工作中的各种视觉和语言任务(例如,机器翻译、文本摘要、图像字幕)。

原文作者: Wenqi Zhao, Liangcai Gao

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 解码器
    +关注

    关注

    9

    文章

    1203

    浏览量

    42867
  • ARM
    ARM
    +关注

    关注

    135

    文章

    9499

    浏览量

    388717
  • 编码器
    +关注

    关注

    45

    文章

    3903

    浏览量

    141443
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【道生物联TKB-623评估板试用】基于串口透传的手写数字识别

    【道生物联TKB-623评估板试用】基于串口透传的手写数字识别 本文介绍了道生物联TKB-623开发板结合 UART 串口透传实现手写数字识别与远距离传输的项目设计。 项目介绍 硬件连
    发表于 11-08 11:44

    【「AI芯片:科技探索与AGI愿景」阅读体验】+第二章 实现深度学习AI芯片的创新方法与架构

    基于注意力机制的神经网络结构。该模型将计算资源集中在对任务真正具有价值的关注焦点,使用于大规模并行处理任务,专为在GPU上进行处理而设计。 Transformer 模型的核心思想是自注意
    发表于 09-12 17:30

    小白学大模型:大模型加速的秘密 FlashAttention 1/2/3

    Transformer架构中,注意力机制的计算复杂度与序列长度(即文本长度)呈平方关系()。这意味着,当模型需要处理更长的文本时(比如从几千个词到几万个词),计算时间和所需的内存会急剧增加。最开始
    的头像 发表于 09-10 09:28 4322次阅读
    小白学大模型:大模型加速的秘密 FlashAttention 1/2/3

    【「DeepSeek 核心技术揭秘」阅读体验】+看视频+看书籍+国产开源大模型DeepSeekV3技术详解--1

    Cache 瓶颈问题。 我们将结合左侧的架构图和右侧的数学公式,一步步进行推导和解释。 1. 技术背景和核心思想 问题: 标准的 Transformer 在处理长文本时,需要缓存所有过去 token
    发表于 08-23 15:20

    如何在NVIDIA Blackwell GPU上优化DeepSeek R1吞吐量

    开源 DeepSeek R1 模型的创新架构包含多头潜在注意力机制 (MLA) 和大型稀疏混合专家模型 (MoE),其显著提升了大语言模型 (LLM) 的推理效率。
    的头像 发表于 08-12 15:19 3811次阅读
    如何在NVIDIA Blackwell GPU上优化DeepSeek R1吞吐量

    【「DeepSeek 核心技术揭秘」阅读体验】第三章:探索 DeepSeek - V3 技术架构的奥秘

    一、模型架构 在阅读第三章关于 DeepSeek 的模型架构部分时,我仿佛打开了一扇通往人工智能核心构造的大门。从架构图中,能清晰看到 Transformer 块、前馈神经网络、注意力机制等模块
    发表于 07-20 15:07

    对话张丽萍 AI磁芯损耗建模应用还有多远?

    AI技术的出现给磁芯损耗的建模提供了新的方向与机会。 过去磁芯损耗建模主要依赖于基于测试数据的数学拟合公式,这些公式在针对正弦波、PWM波激
    的头像 发表于 07-10 15:22 560次阅读
    对话张丽萍  AI磁芯损耗<b class='flag-5'>建模</b>应用还有多远?

    基于LockAI视觉识别模块:手写数字识别

    手写数字识别是一种经典的模式识别和图像处理问题,旨在通过计算机自动识别用户手写的数字。 本文将教会你如何使用基于RV1106的 LockAI
    发表于 06-30 16:45

    基于LockAI视觉识别模块:手写数字识别

    手写数字识别是一种经典的模式识别和图像处理问题,旨在通过计算机自动识别用户手写的数字。本文将教会你如何使用基于RV1106的LockAI视觉
    的头像 发表于 06-30 15:44 851次阅读
    基于LockAI视觉<b class='flag-5'>识别</b>模块:<b class='flag-5'>手写</b>数字<b class='flag-5'>识别</b>

    经颅电刺激适应症之tDCS治疗注意力缺陷ADHD

    ADHD是常见神经行为障碍,症状包括注意力不集中、多动和冲动,儿童和青少年患病率为5%-7.2%,成人在1%-10%,男孩多于女孩,成年后部分症状会持续,引发多种并发症,给个人、家庭和社会带来
    的头像 发表于 04-22 19:49 143次阅读
    经颅电刺激适应症之tDCS治疗<b class='flag-5'>注意力</b>缺陷ADHD

    VirtualLab Fusion应用:双轴晶体中的锥形折射

    中,在输出处发生横向偏移。因此,我们使用参数耦合方法将探测器的位移与晶体参数(晶体厚度和主折射率)联系起来,以实现自动定位。该数学公式的表达式可以在参考文献中找到。 公式来自C. F. Phelan
    发表于 02-27 09:50

    Firefly 服务器系列:覆盖多个领域的高算解决方案

    •服务器算覆盖60~1570TOPS强劲算,支持Transformer架构下大语言模型的私有化部署,如Gemma-2B、ChatGLM3-6B、Qwen-1.
    的头像 发表于 02-19 16:34 1353次阅读
    Firefly 服务器系列:<b class='flag-5'>覆盖</b>多个领域的高算<b class='flag-5'>力</b>解决方案

    如何使用MATLAB构建Transformer模型

    LanguageProcessing, NLP)中的序列到序列任务,如机器翻译。Transformer 通过引入自注意力机制使得处理长距离依赖关系时变得高效。因此 Vaswani 等人的论文强调“
    的头像 发表于 02-06 10:21 5725次阅读
    如何使用MATLAB构建<b class='flag-5'>Transformer</b>模型

    港大提出SparX:强化Vision Mamba和Transformer的稀疏跳跃连接机制

    本文分享香港大学计算和数据科学学院俞益洲教授及其研究团队发表于 AAAI 2025 的论文——SparX,一种强化 Vision Mamba 和 Transformer 的稀疏跳跃连接机制,性能强大
    的头像 发表于 01-03 09:28 1800次阅读
    港大提出SparX:强化Vision Mamba和<b class='flag-5'>Transformer</b>的稀疏跳跃连接<b class='flag-5'>机制</b>

    【正点原子STM32H7R3开发套件试用体验】手写数字、字母的识别

    【正点原子STM32H7R3开发套件试用体验】手写数字、字母的识别 本文介绍了利用正点原子提供的手写识别库,在STM32H7R3开发板上实现 0-9 数字和 A-Z,a-z 字母的
    发表于 01-01 17:37