CN113743315A - 一种基于结构增强的手写体初等数学公式识别方法 - Google Patents
一种基于结构增强的手写体初等数学公式识别方法 Download PDFInfo
- Publication number
- CN113743315A CN113743315A CN202111041823.5A CN202111041823A CN113743315A CN 113743315 A CN113743315 A CN 113743315A CN 202111041823 A CN202111041823 A CN 202111041823A CN 113743315 A CN113743315 A CN 113743315A
- Authority
- CN
- China
- Prior art keywords
- character
- attention
- feature map
- vector
- mathematical formula
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了一种基于结构增强的手写体初等数学公式识别方法,利用编码器模块对不同大小的图片提取特征图;利用解码器模块基于结构增强的注意力机制关注到特征图中每个字符的特征,然后解码出字符类型,针对手写体数学公式中涉及的复杂二维结构、二维结构的嵌套等识别问题,提出一种针对手写体数学公式识别的方法,具体而言是针对数学公式复杂的二维结构问题提出了一种基于结构增强的注意力机制,针对数学公式的不断嵌套问题提出了一种基于栈结构的全局信息更新机制,有效地解决了手写体数学公式的识别问题。
Description
技术领域
本发明涉及,具体涉及一种基于结构增强的手写体初等数学公式识别方法。
背景技术
目前,随着计算机、便携智能设备和互联网在教育领域的应用发展,在线教育快速发展,加上为了进一步对教师减压,自动判卷系统的需求已经成为当前的迫切需求,其中手写体数学公式的识别则是数学自动判卷系统的基础。然而手写体数学公式则因为其手写样本的多样性、数学公式复杂的结构以及结构的嵌套等造成了数学公式识别的困难。
注意力机制:
早在20世纪90年代提出的注意力机制(Attention Mechanism,AM)随着不断的发展,在神经网络中具有越来越重要的地位。注意力机制的提出主要借鉴了人类视觉特征:人类视觉在观察一个图像是总是能快速关注到目标区域,从而投入大量的精力仔细观察该区域,因此刚开始提出时主要在图像邻域中进行应用。在2014年Bahdanau等人首次提出将其应用到机器翻译任务上。本节将主要介绍注意力机制在计算机视觉领域中的应用。注意力机制在计算机视觉领域的应用中大体可以分为软注意力和硬注意立两种,其中硬注意力更加强调动态变化,它会随机选择一个概率最高的输入部分代替输入,其效果相对软注意力更好,但是随机选择不是一个可微的操作,导致其难以训练。软注意力则是对输入的各个部分的进行加权和代替输入,其可微的性质使其应用更广。而软注意力根据其作用的维度不同(通道,空间,类别等)可以分为不同的注意力,目前主流的为以下三种:通道注意力、自注意力和空间注意力:1.通道注意力关注的是不同通道(特征图)与关键信息的相关性,在计算机视觉中通过卷积神经网络运算过的特征图中,可以理解每一层特征图都是其在某一个维度的特征。通道注意力则是通过神经网络自动学习如何关注到每个维度的重要程度,最后通过学习到的计算方法计算每一个通道的权重,通过加权平均的方法来强化其中比较重要的维度特征而抑制其不重要的维度特征。其代表作SE-NET(Squeeze-and-excitationnetworks)[36]采用对通道数进行先降维度然后再升维的思路,利用两个多层感知机学习其通道的相关性,通过重新构建特征的方式来自适应地调整通道之间的特征关系。受SE-NET中的SE-block的启发结合Inception系列中的Inception-block,Li等人提出了SK-NET。该网络从多尺度的角度出发,通过多个神经网络构建不同尺度下的通道注意力,从而关注不同尺度下的特征图的重要性。2.空间注意力则更加符合人类视觉特征,从图像的空间特征中关注到其重要信息,常规的空间注意力是通过神经网络学习生成一层掩膜(mask),它为每个位置提供一个权重,该权重即每个位置的重要程度,通过该掩膜增强图像中的关键信息而模糊背景区域。Jaderberg等人在2015年提出SpatialTransformer Networks(STN),该网络提出使用空间转换器模块来替代最大值池化或者平均池化。其中空间转换器便是通过空间注意力机制关注原始图片中重点信息,在此基础上进一步进行旋转缩放等功能从而实现将空间转换的方式将当前图像转换到另一空间并保留其重要信息。3.自注意力也叫作内部注意力,最早由谷歌的Transformer提出,其目的是减少注意力中对外部信息的依赖,使其尽可能地通过自身的特征来决定如何关注重要信息。在此之后,何凯明等人将该思想应用到计算机视觉领域中并提出了Non-Local模块。
编码器-解码器:
循环神经网络通常需要输入和输出都是同样的长度,因为每一个输入都对应一个输出,然而很多问题的输入和输出并不是严格的一一对应,如机器翻译。针对该问题编码器-解码器(encoder-decoder)模型应运而生。两个循环神经网络共同组成了编码器-解码器模型,其中负责将输入序列编码成一个状态的循环神经网络的称之为编码器,负责生成输出序列的循环,两个循环神经网络共同组成了编码器-解码器模型,其中负责将输入序列编码成一个状态的循环神经网络的称之为编码器,负责生成输出序列的循环神经网络则称之为解码器。编码器的作用就是把一个不定长的输入序列进行特征整理,将所有的输入序列变成一个定长的上下文向量C,可以称C是输入序列的语义表达。对于输入X,编码器会使用一个循环神经网络进行处理,对每一个时刻的输入xt都有一个隐藏向量ht的产生,为了将各个时间步的隐藏状态转换到上下文变量,定义了一个自定义函数q,详细内容参考公式C=q(h1,...,ht)。通常这个自定义函数采用公式q(h1,...,ht)=ht,既将最后一个时刻的隐藏向量作为上下文向量。解码器的作用则是将编码器生成的上下文向量C解码成输出序列。在对给定的输出序列y1,...,yt对其中的每一个时间步t,解码器的输出yt的条件概率将基于之前的输出序列y1,...,yt-1和上下文变量C,因此使用不同于编码器的循环神经网络作为解码器,其中yt和C共同作为输入。
发明内容
针对现有技术中的上述不足,本发明提供了一种基于结构增强的手写体初等数学公式识别方法。
为了达到上述发明目的,本发明采用的技术方案为:
一种基于结构增强的手写体初等数学公式识别方法,包括如下步骤:
S1、获取包含手写体数学公式的图像,并对所获取的图像进行多尺度特征提取,得到多个手写体数学公式的二维特征图;
S2、利用通道注意力机制对步骤S1提取的二维特征图进行编码,输出编码后的二维特征图;
S3、将步骤S2输出的二维特征图作为全局信息,利用基于结构增强的注意力机制的解码器对其进行解码,计算当前字符的预测概率,并将概率最高的预测字符作为当前字符输出;
S4、重复步骤S3直至终止符,识别得到完整的手写体数学公式。
上述方案的有益效果是,使用多尺度特征选取编码器解决了实际使用中字体分辨率大小不一样的问题,使用基于结构增强的注意力机制的解码器解决了数学公式中二维结构难以识别的问题,使用基于栈的全局信息管理机制解决了数学公式中结构嵌套的问题。通过以上方法提高了手写体数学公式的识别准确率。
进一步的,所述步骤S2具体包括:
S21、将S1中将通过卷积提取的特征图通过多个不同大小的卷积核从而获取多个手写体数学公式的二维特征图进行卷积操作及最大池化操作;
S22、利用通道注意力机制对经过步骤S21处理后的不同尺度的二维特征图进行自动选择;
S23、利用最大池化层降低二维特征图的大小;
S24、重复步骤S21-S23得到编码后的二维特征图。
上述进一步方案的有益效果是,构建一个可以对输入信息进行多个尺度的观察,从而选择不同尺度中的重要特征。
进一步的,所述步骤S22具体包括:
S221、对步骤S21操作后的二维特征图进行特征提取;
S222、将步骤S221提取的特征使用两个不同大小的卷积核进行卷积操作,得到两个卷积后的特征图;
S223、将步骤S222得到的特征图叠加在一起,并使用全局平均池化将全局信息嵌入到叠加之后的特征图中,得到每个通道的统计信息,表示为:
其中,H表示步骤S222中特征图的高,W表示步骤S222中特征图的宽,Uc表示步骤S221提取的特征U在第c个通道的特征图,i,j表示特征坐标;
S224、将步骤S223中得到的统计信息经过全连接层进行升维和降维操作得到选择向量,并使用softmax函数生成对应特征图的权重系数,表示为:
其中,Ac和Bc分别表示在第c个通道上特征的转换矩阵,z表示选择向量,ac和bc分别为步骤S222提取的特征图在第c个通道上的权重系数;
S225、利用加权和将各特征图相加,得到当前通道上的二维特征图,表示为,
S226、重复步骤S221-S225,并将得到的所有通道上的二维特征图相加得到选择的二维特征图。
上述进一步方案的有益效果是,通过特征重用的方式进一步挖掘识别网络的潜力。
进一步的,所述步骤S3中的解码过程具体为:
S31、利用全局信息、前一时刻的隐藏状态和解码字符共同求出二维注意力机制,计算得到注意力向量。
S32、利用注意力向量对将步骤S2输出的编码后的二维特征图进行加权求和,得到大小固定的特征向量;
S33、使用循环神经网络对步骤S32得到的特征向量、前一时刻的预测字符和当前时刻生成的隐藏变量进行相加后解码,计算当前字符的预测概率,输出概率最高的预测字符作为当前字符。
S34、对全局信息进行更新;
上述进一步方案的有益效果是,通过解码器对编码之后的大小可变的二维特征图进行统一处理,利用每个时刻的输出对全局信息进行更新,从而影响后续的输出。
进一步的,所述步骤S31具体包括:
S311、将上一时刻输出的字符经过嵌入后与上一时刻的隐藏状态共同作为当前时刻的GRU输入,并生成当前时刻的间接隐藏状态,计算方式为:
hht=gru(Eyt-1,ht-1)
其中,hht为当前时刻的间接隐藏状态,yt-1为上一时刻输出的字符,E表示对上一时刻输出端字符的嵌入矩阵,ht-1为上一时刻的隐藏状态,gru()表示常规GRU计算隐藏状态的过程;
S312、通过注意力机制计算当前时刻间接隐藏状态的注意力向量,表示为:
α=attention2D(attenSum,structureInfo,hht-1,Conv(V)),
其中,α为注意力向量,attention2D为注意力计算方法,attenSum,structureInfo为可更新的全局信息,attenSum为注意力整体图,structureInfo为字符的结构信息;
进一步的,所述步骤S32中利用注意力向量对将步骤S2输出的编码后的二维特征图进行加权求和,得到大小固定的特征向量的计算方式为:
其中,W,H为步骤S2得到的二维特征图的宽和高,Ct为当前时刻的二维特征向量,atij表示t时刻i行j列的注意力向量,Vij表示二维特征图中i行j列的特征值。
上述进一步方案的有益效果是,通过在解码器阶段使用注意力机制产生的注意力向量对特征图进行加权和来求出固定大小的特征向量。
进一步的,所述步骤S33具体包括:
S331、对前一时刻预测的字符通过Embedding的方式进行编码。
S332、对步骤S321的隐藏状态hht和步骤S32的特征向量Ct进行Gru运算得到当前时刻的隐藏状态ht,其计算方式为:
ht=gru(Ct,hht)
S333、对步骤S331编码后的字符特征、S332得到的隐藏状态ht、S32的特征向量Ct进行求和。
S334、对步骤S333求和后的特征向量通过多层感知器,输出每一个字符的概率,选择其中概率最大的字符作为当前步骤的输出。
上述进一步方案的有益效果是,解码计算得到输出的数学公式字符。
进一步的,所述步骤S34中更新全局信息的方式为:
S341、将当前时刻之前的所有注意力图相加作为下一时刻的注意力图背景区域图,得到更新之后的注意力整体图;
S342、使用字符结构信息时,对结构类型信息和位置信息分别使用onehot编码并将上一时刻获取的字符嵌入其中得到新的词向量,得到当前字符的结构信息;
S343、将步骤S342得到的结构信息通过广播的方式扩展成为新的特征图;
S344、将当前时刻获取的结构字符的注意力图以及步骤S341获取的注意力整体图扩展为与步骤S343中特征图相同的尺度,并将其与步骤S343得到的新的特征图合并,得到更新之后的全局信息。
上述进一步方案的有益效果是,对可更新的全局信息进行更新,以指导纠正后续的字符混乱的问题。
附图说明
图1为本发明基于结构增强的手写体初等数学公式识别方法流程示意图。
图2为本发明实施例SKNet结构示意图。
图3为本发明实施例多尺度自动选择稠密块结构示意图。
图4为本发明实施例编码器结构示意图。
图5为本发明实施例解码器结构示意图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
一种基于结构增强的手写体初等数学公式识别方法,如图1所示,包括如下步骤:
S1、获取包含手写体数学公式的图像,并对所获取的图像进行多尺度特征提取,得到多个手写体数学公式的二维特征图;
为了使本文的数学公式识别模型对不同大小的图片都可以很鲁棒的进行识别,因此构建了多尺度自动选择稠密网络(MultiScaleSelectionDense,MSSD),该网络主要是由DenseNet中的稠密块(DenseBlock)和SKNet网络模块构成。可以通过SKNet来对不同感受野下提取的不同尺度的特征自动进行一个选择。因此将DenseBlock和SKNet进行结合从而构建了一个新的模块既多尺度自动选择稠密块(MultiScaleSelectionDenseblock),如图3所示,该模块的前半部分由DenseBlock进行特征提取后面则通过SKNet网络中选择核结构块(Selective Kernel,SK)中的分裂算子(Split)、融合算子(Fuse)、选择算子(Select)三个重要的算子加上一个池化层组成的。
在本实施例里,多尺度自动选择稠密网络的整体架构如图4所示,主要是由3个多尺度自动选择稠密块组成,其中图像输入的时候会首先经过一个7×7的卷积层操作(包括BN、Conv和Relu)和一个最大池化层。之后由三个多尺度自动选择稠密块拼接到一起。最后则通过一个1×1的卷积层操作来调整最后的特征维度。如表31为整个网络结构的细节。由表可以看出三个多尺度自动选择稠密块中的DenseBlock分别为6,12,24。对这个三个DenseBlock设置的维度增长速度都为32。初始7×7卷积的输出维度为64。为了防止网络特征维度过大从而导致训练效果不佳,因此使用Split算子时会将当前的维度进行减半输出。可以发现在第一个多尺度自动选择稠密块时采用了5×5和7×7两种卷积核大小的卷积进行不同尺度的卷积,而后面两个则是使用了5×5和3×3的两种,其目的在浅层网络时更好观察更大尺度的特征。
S2、利用通道注意力机制对步骤S1提取的二维特征图进行编码,输出编码后的二维特征图;
在本实施例里,DenseBlock为DenseNet网络中的一个重要的模块,如图4所示。多个DenseBlock串联构成了DenseNet。区别于其他卷积神经网络通过更深更宽的架构从而获取更强的学习能力,DenseNet通过在特征重用的方式来进一步挖掘网络的潜力。其根本方法体现在DenseBlock中,在一个DenseBlock中每层卷积都会通过密集连接的方式不断的重用前面的特征层。对于一个L层的卷积神经网络,常规的网络通常只有L层连接,而DenseBlock则有层连接。其具体实现方式是在第l层接受先前所有图层的特征图x0…,xl-1作为输入,在经过一个非线性变换Hl(.)后得到l层的输出xl,具体而言,包括如下步骤:
S21、将S1中将通过卷积提取的特征图通过多个不同大小的卷积核,获取多个手写体数学公式的二维特征图进行卷积操作和最大池化操作。
S22、利用通道注意力机制对经过步骤S21处理后的不同尺度的二维特征图进行自动选择。
在本实施例里,步骤S22具体为:
S221、利用稠密块对步骤S21操作后的二维特征图进行特征提取;
S222、将步骤S221提取的特征使用两个不同大小的卷积核进行卷积操作,得到两个卷积后的特征图;
在本实施例里,Split算子主要是通过使用不同大小的卷积核进行卷积操作以获得不同感受野下的特征,结构图中使用3×3和5×5的卷积核大小进行卷积后得到特征图Fuse算子则是将Split算子得到的特征图重新加到一起,然后使用全局平均池化(GAP)Fgp将全局信息嵌入到一维的向量从而表示每个通道的统计信息。
S223、将步骤S222得到的特征图叠加在一起,并使用全局平均池化将全局信息嵌入到叠加之后的特征图中,得到每个通道的统计信息,
本实施例使用全局平均池化(GAP)Fgp将全局信息嵌入到一维的向量从而表示每个通道的统计信息,表示为:
其中,H表示步骤S222中特征图的高,W表示步骤S222中特征图的宽,Uc表示步骤S221提取的特征U在第c个通道的特征图,i,j表示特征坐标;
S224、将步骤S223中得到的统计信息经过全连接层进行升维和降维操作得到选择向量,并使用softmax函数生成对应特征图的权重系数。
在获得每个通道的统计信息后,通过两个全连接层进行降维和升维操作得到选择向量z。Select算子则是在选择向量Z引导下使用softmax函数生成各个感受野下特征图的权重,向量表示为:
其中,Ac和Bc分别表示在第c个通道上特征的转换矩阵,z表示选择向量,ac和bc分别为步骤S222提取的特征图在第c个通道上的权重系数;
S225、利用加权和将各特征图相加,得到当前通道上的二维特征图。
在本实施例中,得到权重系数后使用加权和的方式将各个特征图进行相加,表示为,
S226、重复步骤S221-S225,并将得到的所有通道上的二维特征图相加得到选择的二维特征图。
S3、将步骤S2输出的二维特征图作为全局信息,利用基于结构增强的注意力机制的解码器对其进行解码,计算当前字符的预测概率,并将概率最高的预测字符作为当前字符输出;
本实施例中,输入为可变大小的图片,在经过编码器(decoder)加码之后得到的二维特征图也是大小可变的,为了将这些可变大小的特征图统一处理。通过在解码器阶段使用注意力机制产生的注意力向量对特征图进行加权和来求出固定大小的特征向量C。解码器阶段将会使用循环神经网络的架构来逐步生成latex字符(包括结构字符和字形字符),其中循环体将重新定义而不简单的使用LSTM、GRU等。整个解码器的架构如图5。从该图可以看到,不同于传统的decoder,在本文的decoder中将encoder输出的结果作为一个全局信息,它会参与整个循环神经网络的每一时刻的运行,同样可以发现除了encoder的结果V是全局信息,还引入了两个可更新的全局信息,不同于V的是这两个信息不仅在每个时刻都会参与的情况,而且每个时刻的输出同样会来更新这两个信息从而影响后面时刻的输出。
在本实施例里,解码过程具体为:
S31、利用全局信息、前一时刻的隐藏状态和解码字符求出二维注意力向量;具体而言,
S311、将上一时刻输出的字符经过嵌入后与上一时刻的隐藏状态共同作为当前时刻的GRU输入,并生成当前时刻的间接隐藏状态。
在本实施例里,循环体的执行过程中,在生成每个字符的过程中会首先将上一个时刻的输出经过词嵌入之后和前一时刻的隐藏状态ht-1共同作为当前GRU的输入,生成的间接隐藏状态hht将会引导注意力向量的生成,也是下一个GRU的输入计算方式为:
S312、通过注意力机制计算当前时刻间接隐藏状态的注意力向量,表示为:
α=attention2D(attenSum,structureInfo,hht-1,Conv(V)),
其中,attention2D为注意力计算方法,attenSum,structureInfo为可更新的全局信息,其中attenSum为注意力整体图,structureInfo为字符的结构信息。
S32、利用注意力向量对将步骤S2输出的编码后的二维特征图进行加权求和,得到大小固定的特征向量,表示为;
其中,W,H为步骤S2得到的二维特征图的宽和高,Ct为当前时刻的二维特征向量,atij表示t时刻i行j列的注意力向量,Vij表示二维特征图中i行j列的特征值。
S33、使用循环神经网络对步骤S32得到的特征向量、前一时刻的预测字符和当前时刻生成的隐藏变量进行相加后解码,计算当前字符的预测概率,输出概率最高的预测字符作为当前字符,并对全局信息进行更新,具体方法为:
S331、对前一时刻预测的字符通过Embedding的方式进行编码,得到编码后的字符特征;
S332、对步骤S311的隐藏状态hht和步骤S32的特征向量Ct进行Gru运算得到当前时刻的隐藏状态ht,其计算方式为:
ht=gru(Ct,hht)
S333、对步骤S331编码后的字符特征、S332得到的当前时刻的隐藏状态ht、S32的特征向量Ct进行求和。
S334、对步骤S333求和后的特征向量通过多层感知器,输出每一个字符的概率,选择其中概率最大的字符作为当前步骤的输出,计算方式为:
p(yt|y1,…,yt-1,V)=F(yt-1,hi-1,V)=f(C,ht,hht,Eyt-1)。
S34、利用步骤S33得到的当前字符对全局信息进行更新,可更新的全局信息主要由两部分组成,第一部分是注意力整体图(AttentionSum),已经识别过的字符所在区域通常不会是后面需要关注的区域,因此将t时刻之前所有的注意力图相加作为背景区域图为下一次注意力观察提供指导信息,该信息在每次识别字符的最后进行更新,其更新的公式如下:
AttentionSum=AttentionSum+αt;
其中,αt为t时刻的注意力机制向量。
另外一部分全局信息便是结构字符提供的结构信息。数学公式中的结构在空间上存在着一定相对关系,然而不同的结构的相对关系各不一样。因此需要通过全局信息记录当前字符所在结构的类型,同一结构中识别顺序总是有序的,然而整体识别的无序,造成了前一时刻的信息不能使用,因此通过相对结构的位置编码来增强当前字符的相当位置关系。在该信息中同样存储了结构字符的注意力图,主要用于给注意力机制提供当前识别字符所在结构位置信,具体步骤为:
S341、将当前时刻之前的所有注意力图相加作为下一时刻的注意力图背景区域图,得到更新之后的注意力整体图;
S342、使用字符结构信息时,对结构类型信息和位置信息分别使用onehot编码并将上一时刻获取的字符嵌入其中得到新的词向量,得到当前字符的结构信息;
S343、将步骤S342得到的结构信息通过广播的方式扩展成为新的特征图;
S344、将当前时刻获取的结构字符的注意力图以及步骤S341获取的注意力整体图扩展为与步骤S343中特征图相同的尺度,并将其与步骤S343得到的新的特征图合并,得到更新之后的全局信息。
S4、重复步骤S3直至终止符,识别得到完整的手写体数学公式。
数学结构中存在的结构嵌套行为,因此不能简单的通过使用一个变量记录这些信息。如公式其标签为\frac{,\sqrt{,2,},+,1,}{,3,}。如果采用覆盖的方式记录结构信息的话,在识别+号时,指导它的则是根号的终止符。然而这并不是符合预期的,可以很清楚地发现+是属于分数结构中的分子部分,它应该受到\frac{的指导而不是}符号。为了解决结构嵌套造成的指导字符混乱的问题,提出了在全局信息区使用栈的结构进行信息的存储。
在标准化后的latex字符串中每一种结构都有其开始字符和结束字符。遇到开始符号时,将当前符号的注意力图以及类型进行入栈,当遇到结束符号时,将会出栈,值得注意的是,分数结构的分子的结束和分母的开始合并成了一个结构符号,因此在遇到符号}{时将结构\frac的信息出栈之后再将符号}{的信息入栈。为上述公式的识别过程中栈更新的过程图。栈的初始是会存储一个全局初始化信息,它表示了数学公式最外层结构的信息。每个时刻将会使用栈顶的结构信息作为当前时刻的全局信息输入,在使用的同时对栈顶信息中的位置编码(Pos)进行加1,表示下一次使用该信息时,相对该结构的位置关系增加1。在当前时刻结束的时候将会根据当前时刻的输出决定是否出栈和入栈,如果输出是字形字符则不会对栈进行修改。观察图中可以发现,在分子结构时,嵌套了一个根号结构,而在分子结构中将整个根号结构看作一个位置,+号距离分子结构的相对距离则为2(下标为1)。其中常见的入栈结构字符有:\frac{、\sqrt{、^{、_{、\sum_{。出栈结构字符有:}。先出栈后入栈的结构符号:}{、}^{。
在使用结构信息的时候,会对结构类型信息和位置信息分别使用onehot编码后使用词嵌入将其组织成更加合理的词向量,将使用维度为d2的词向量表示这两个信息。用词向量表示出来后将结构类型信息和位置信息的词向量拼接起来得到当前的结构信息,此时结构信息的维度为1×1×d,再将该结构信息通过广播的方式扩展H×W次形成一个H×W×d的特征图。此时将栈中结构字符的注意力图和注意力整体图相加后沿着深度方向扩展d次形成H×W×d的特征图。最后将这两个特征图相加形成的全局信息g。
计算公式如下:
AttentionFeature=AttentionSum+AttentionStruct;
g=StructFeature+AttentionFeature;
其中cat表示将两个向量拼接起来,AttentionStruct表示结构字符的注意力图。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (8)
1.一种基于结构增强的手写体初等数学公式识别方法,其特征在于,包括如下步骤:
S1、获取包含手写体数学公式的图像,并对所获取的图像进行多尺度特征提取,得到多个手写体数学公式的二维特征图;
S2、利用通道注意力机制对步骤S1提取的二维特征图进行编码,输出编码后的二维特征图;
S3、将步骤S2输出的二维特征图作为全局信息,利用基于结构增强的注意力机制的解码器对其进行解码,计算当前字符的预测概率,并将概率最高的预测字符作为当前字符输出;
S4、重复步骤S3直至终止符,识别得到完整的手写体数学公式。
2.根据权利要求1所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S2具体包括:
S21、将S1中将通过卷积提取的特征图通过多个不同大小的卷积核从而获取多个手写体数学公式的二维特征图进行卷积操作及最大池化操作;
S22、利用通道注意力机制对经过步骤S21处理后的不同尺度的二维特征图进行自动选择;
S23、利用最大池化层降低二维特征图的大小;
S24、重复步骤S21-S23得到编码后的二维特征图。
3.根据权利要求2所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S22具体包括:
S221、利用稠密块对步骤S21操作后的二维特征图进行特征提取;
S222、将步骤S221提取的特征使用两个不同大小的卷积核进行卷积操作,得到两个卷积后的特征图;
S223、将步骤S222得到的特征图叠加在一起,并使用全局平均池化将全局信息嵌入到叠加之后的特征图中,得到每个通道的统计信息,表示为:
其中,H表示步骤S222中特征图的高,W表示步骤S222中特征图的宽,Uc表示步骤S221提取的特征U在第c个通道的特征图,i,j表示特征坐标;
S224、将步骤S223中得到的统计信息经过全连接层进行升维和降维操作得到选择向量,并使用softmax函数生成对应特征图的权重系数,表示为:
其中,Ac和Bc分别表示在第c个通道上特征的转换矩阵,z表示选择向量,ac和bc分别为步骤S222提取的特征图在第c个通道上的权重系数;
S225、利用加权和将各特征图相加,得到当前通道上的二维特征图,表示为,
S226、重复步骤S221-S225,并将得到的所有通道上的二维特征图相加得到选择的二维特征图。
4.根据权利要求3所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S3中的解码过程具体为:
S31、利用全局信息、前一时刻的隐藏状态和解码字符共同求出二维注意力机制。
S32、利用注意力向量对将步骤S2输出的编码后的二维特征图进行加权求和,得到大小固定的特征向量;
S33、使用循环神经网络对步骤S32得到的特征向量、前一时刻的预测字符和当前时刻生成的隐藏变量进行相加后解码,计算当前字符的预测概率,输出概率最高的预测字符作为当前字符
S34、利用步骤S33得到的当前字符对全局信息进行更新。
5.根据权利要求4所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S31具体包括:
S311、将上一时刻输出的字符经过嵌入后与上一时刻的隐藏状态共同作为当前时刻的GRU输入,并生成当前时刻的间接隐藏状态,计算方式为:
hht=gru(Eyt-1,ht-1)
其中,hht为当前时刻的间接隐藏状态,yt-1为上一时刻输出的字符,E表示对上一时刻输出端字符的嵌入矩阵,ht-1为上一时刻的隐藏状态,gru()表示常规GRU计算隐藏状态的过程;
S312、通过注意力机制计算当前时刻间接隐藏状态的注意力向量,表示为:
α=attention2D(attenSum,structureInfo,hht-1,Conv(V)),
其中,attention2D为注意力计算方法,attenSum,structureInfo为可更新的全局信息,其中attenSum为注意力整体图,structureInfo为字符的结构信息。
7.根据权利要求6所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S33具体包括:
S331、对前一时刻预测的字符通过Embedding的方式进行编码,得到编码后的字符特征;
S332、对步骤S311的隐藏状态hht和步骤S32的特征向量Ct进行Gru运算得到当前时刻的隐藏状态ht,其计算方式为:
ht=gru(Ct,hht)
S333、对步骤S331编码后的字符特征、S332得到的当前时刻的隐藏状态ht、S32的特征向量Ct进行求和。
S334、对步骤S333求和后的特征向量通过多层感知器,输出每一个字符的概率,选择其中概率最大的字符作为当前步骤的输出。
8.根据权利要求7所述的一种基于结构增强的手写体初等数学公式识别方法,其特征在于:所述步骤S34中更新全局信息的方式为:
S341、将当前时刻之前的所有注意力图相加作为下一时刻的注意力图背景区域图,得到更新之后的注意力整体图;
S342、使用字符结构信息时,对结构类型信息和位置信息分别使用onehot编码并将上一时刻获取的字符嵌入其中得到新的词向量,得到当前字符的结构信息;
S343、将步骤S342得到的结构信息通过广播的方式扩展成为新的特征图;
S344、将当前时刻获取的结构字符的注意力图以及步骤S341获取的注意力整体图扩展为与步骤S343中特征图相同的尺度,并将其与步骤S343得到的新的特征图合并,得到更新之后的全局信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111041823.5A CN113743315B (zh) | 2021-09-07 | 2021-09-07 | 一种基于结构增强的手写体初等数学公式识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111041823.5A CN113743315B (zh) | 2021-09-07 | 2021-09-07 | 一种基于结构增强的手写体初等数学公式识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113743315A true CN113743315A (zh) | 2021-12-03 |
CN113743315B CN113743315B (zh) | 2023-07-14 |
Family
ID=78736352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111041823.5A Active CN113743315B (zh) | 2021-09-07 | 2021-09-07 | 一种基于结构增强的手写体初等数学公式识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113743315B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115393868A (zh) * | 2022-08-18 | 2022-11-25 | 中化现代农业有限公司 | 文本检测方法、装置、电子设备和存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090304283A1 (en) * | 2008-06-06 | 2009-12-10 | Microsoft Corporation | Corrections for recognizers |
CN103235945A (zh) * | 2013-03-27 | 2013-08-07 | 重庆市科学技术研究院 | 一种基于Android系统的手写数学公式识别及生成MathML的方法 |
US20170337423A1 (en) * | 2015-08-26 | 2017-11-23 | Beijing Lejent Technology Co., Ltd | Method for Structural Analysis and Recongnigiton of Handwritten Mathematical Formula in Natural Scene Image |
CN109977861A (zh) * | 2019-03-25 | 2019-07-05 | 中国科学技术大学 | 离线手写体数学公式识别方法 |
CN110766012A (zh) * | 2019-09-20 | 2020-02-07 | 北京航空航天大学 | 一种基于深度学习的手写体数学表达式识别方法与装置 |
CN110765966A (zh) * | 2019-10-30 | 2020-02-07 | 哈尔滨工业大学 | 一种面向手写文字的一阶段自动识别与翻译方法 |
CN111126221A (zh) * | 2019-12-16 | 2020-05-08 | 华中师范大学 | 一种融合双向视觉注意力机制的数学公式识别方法及装置 |
CN111160343A (zh) * | 2019-12-31 | 2020-05-15 | 华南理工大学 | 一种基于Self-Attention的离线数学公式符号识别方法 |
CN111368773A (zh) * | 2020-03-12 | 2020-07-03 | 广东小天才科技有限公司 | 数学公式识别方法及装置、终端设备和可读存储介质 |
CN111738169A (zh) * | 2020-06-24 | 2020-10-02 | 北方工业大学 | 一种基于端对端网络模型的手写公式识别方法 |
CN111738105A (zh) * | 2020-06-04 | 2020-10-02 | 科大讯飞股份有限公司 | 公式识别方法、装置、电子设备和存储介质 |
CN111767889A (zh) * | 2020-07-08 | 2020-10-13 | 北京世纪好未来教育科技有限公司 | 公式识别方法、电子设备及计算机可读介质 |
CN112183544A (zh) * | 2020-09-29 | 2021-01-05 | 厦门大学 | 一种融合双通道的三层架构数学公式识别方法、系统和存储设备 |
CN112686134A (zh) * | 2020-12-29 | 2021-04-20 | 科大讯飞股份有限公司 | 手写识别方法、装置、电子设备和存储介质 |
CN112926571A (zh) * | 2021-04-06 | 2021-06-08 | 中教云智数字科技有限公司 | 一种基于深度学习的公式图片识别判题系统 |
CN113033538A (zh) * | 2021-03-25 | 2021-06-25 | 北京搜狗科技发展有限公司 | 一种公式识别方法及装置 |
-
2021
- 2021-09-07 CN CN202111041823.5A patent/CN113743315B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090304283A1 (en) * | 2008-06-06 | 2009-12-10 | Microsoft Corporation | Corrections for recognizers |
CN103235945A (zh) * | 2013-03-27 | 2013-08-07 | 重庆市科学技术研究院 | 一种基于Android系统的手写数学公式识别及生成MathML的方法 |
US20170337423A1 (en) * | 2015-08-26 | 2017-11-23 | Beijing Lejent Technology Co., Ltd | Method for Structural Analysis and Recongnigiton of Handwritten Mathematical Formula in Natural Scene Image |
CN109977861A (zh) * | 2019-03-25 | 2019-07-05 | 中国科学技术大学 | 离线手写体数学公式识别方法 |
CN110766012A (zh) * | 2019-09-20 | 2020-02-07 | 北京航空航天大学 | 一种基于深度学习的手写体数学表达式识别方法与装置 |
CN110765966A (zh) * | 2019-10-30 | 2020-02-07 | 哈尔滨工业大学 | 一种面向手写文字的一阶段自动识别与翻译方法 |
CN111126221A (zh) * | 2019-12-16 | 2020-05-08 | 华中师范大学 | 一种融合双向视觉注意力机制的数学公式识别方法及装置 |
CN111160343A (zh) * | 2019-12-31 | 2020-05-15 | 华南理工大学 | 一种基于Self-Attention的离线数学公式符号识别方法 |
CN111368773A (zh) * | 2020-03-12 | 2020-07-03 | 广东小天才科技有限公司 | 数学公式识别方法及装置、终端设备和可读存储介质 |
CN111738105A (zh) * | 2020-06-04 | 2020-10-02 | 科大讯飞股份有限公司 | 公式识别方法、装置、电子设备和存储介质 |
CN111738169A (zh) * | 2020-06-24 | 2020-10-02 | 北方工业大学 | 一种基于端对端网络模型的手写公式识别方法 |
CN111767889A (zh) * | 2020-07-08 | 2020-10-13 | 北京世纪好未来教育科技有限公司 | 公式识别方法、电子设备及计算机可读介质 |
CN112183544A (zh) * | 2020-09-29 | 2021-01-05 | 厦门大学 | 一种融合双通道的三层架构数学公式识别方法、系统和存储设备 |
CN112686134A (zh) * | 2020-12-29 | 2021-04-20 | 科大讯飞股份有限公司 | 手写识别方法、装置、电子设备和存储介质 |
CN113033538A (zh) * | 2021-03-25 | 2021-06-25 | 北京搜狗科技发展有限公司 | 一种公式识别方法及装置 |
CN112926571A (zh) * | 2021-04-06 | 2021-06-08 | 中教云智数字科技有限公司 | 一种基于深度学习的公式图片识别判题系统 |
Non-Patent Citations (6)
Title |
---|
MAHSHAD MAHDAVI等: "Visual Parsing with Query-Driven Global Graph Attention (QD-GGA): Preliminary Results for Handwritten Math Formula Recognition" * |
MAHSHAD MAHDAVI等: "Visual Parsing with Query-Driven Global Graph Attention (QD-GGA): Preliminary Results for Handwritten Math Formula Recognition", 《2020 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION WORKSHOPS (CVPRW)》, pages 2429 - 2438 * |
王德青等: "场景文字识别技术研究综述" * |
王德青等: "场景文字识别技术研究综述", 《计算机工程与应用》, pages 1 - 15 * |
聂俊等: "基于Latex的互联网数学公式搜索引擎" * |
聂俊等: "基于Latex的互联网数学公式搜索引擎", 《计算机应用》, pages 312 - 315 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115393868A (zh) * | 2022-08-18 | 2022-11-25 | 中化现代农业有限公司 | 文本检测方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113743315B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2691214C1 (ru) | Распознавание текста с использованием искусственного интеллекта | |
CN109344288B (zh) | 一种基于多模态特征结合多层注意力机制的结合视频描述方法 | |
CN109948691B (zh) | 基于深度残差网络及注意力的图像描述生成方法和装置 | |
CN111160343B (zh) | 一种基于Self-Attention的离线数学公式符号识别方法 | |
CN110414498B (zh) | 一种基于交叉注意力机制的自然场景文本识别方法 | |
CN113158862B (zh) | 一种基于多任务的轻量级实时人脸检测方法 | |
CN111984772B (zh) | 一种基于深度学习的医疗影像问答方法及系统 | |
RU2665273C2 (ru) | Обучаемые визуальные маркеры и способ их продуцирования | |
CN112733866A (zh) | 一种提高可控图像文本描述正确性的网络构建方法 | |
CN114140786B (zh) | 基于HRNet编码与双分支解码的场景文本识别方法 | |
CN113159023A (zh) | 基于显式监督注意力机制的场景文本识别方法 | |
Gallant et al. | Positional binding with distributed representations | |
CN113283336A (zh) | 一种文本识别方法与系统 | |
RU2768211C1 (ru) | Оптическое распознавание символов посредством комбинации моделей нейронных сетей | |
CN114283352A (zh) | 一种视频语义分割装置、训练方法以及视频语义分割方法 | |
CN113378949A (zh) | 一种基于胶囊网络和混合注意力的双重生成对抗学习方法 | |
CN113743315B (zh) | 一种基于结构增强的手写体初等数学公式识别方法 | |
CN113240033B (zh) | 一种基于场景图高阶语义结构的视觉关系检测方法及装置 | |
CN114581918A (zh) | 一种文本识别模型训练方法及装置 | |
CN110889276B (zh) | 复数融合特征提取指针式抽取三元组信息的方法、系统及计算机介质 | |
Zheng et al. | Learning high-level prior with convolutional neural networks for semantic segmentation | |
CN116630763A (zh) | 一种基于多尺度上下文感知的多聚焦图像融合方法 | |
US20230186600A1 (en) | Method of clustering using encoder-decoder model based on attention mechanism and storage medium for image recognition | |
CN116311493A (zh) | 一种基于编码解码架构的两阶段人-物交互检测方法 | |
CN113609355B (zh) | 一种基于动态注意力与图网络推理的视频问答系统、方法、计算机及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |