CN111738169B - 一种基于端对端网络模型的手写公式识别方法 - Google Patents

一种基于端对端网络模型的手写公式识别方法 Download PDF

Info

Publication number
CN111738169B
CN111738169B CN202010590507.2A CN202010590507A CN111738169B CN 111738169 B CN111738169 B CN 111738169B CN 202010590507 A CN202010590507 A CN 202010590507A CN 111738169 B CN111738169 B CN 111738169B
Authority
CN
China
Prior art keywords
layer
decoder
handwriting
formula
output
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.)
Active
Application number
CN202010590507.2A
Other languages
English (en)
Other versions
CN111738169A (zh
Inventor
管延智
阳振峰
李强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
North China University of Technology
Original Assignee
North China University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by North China University of Technology filed Critical North China University of Technology
Priority to CN202010590507.2A priority Critical patent/CN111738169B/zh
Publication of CN111738169A publication Critical patent/CN111738169A/zh
Application granted granted Critical
Publication of CN111738169B publication Critical patent/CN111738169B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Multimedia (AREA)
  • Character Discrimination (AREA)

Abstract

本发明涉及手写公式识别领域,公开了一种基于端对端网络模型的手写公式识别方法,包括步骤:采集手写公式识别图片数据集,对手写公式识别图片数据集进行预处理;建立encoder‑decoder模型,encoder‑decoder模型包括特征提取层、encoder编码器和decoder解码器;利用预处理后的手写公式识别图片数据集对encoder‑decoder模型进行训练,获得训练完成后的encoder‑decoder模型;利用训练完成后的encoder‑decoder模型对待识别手写公式图片进行识别,获得待识别手写公式图片的识别结果。本发明利用不同感受野对手写公式图片进行大小特征提取,对不同的特征完成词向量编码以及与标签间的对接和解码操作,优化了网络超参数,避免了多次卷积后特征图分辨率较低导致部分文本缺失问题,能够更好的识别手写公式,识别准确率高。

Description

一种基于端对端网络模型的手写公式识别方法
技术领域
本发明涉及手写公式识别技术领域,具体地涉及一种基于端对端网络模型的手写公式识别方法。
背景技术
手写公式识别技术在自动阅卷、拍照搜题、试题数字化等教育领域具有广泛的应用需求。公式本身复杂的二维结构、繁多的符号、符号的相似性与含义的多样性导致目前手写公式识别准确率的效果并不理想。1994年Blostein[1]等人首次针对数学符号识别问题提出了符号分析和结构处理的研究方法,主要分为符号识别的早期处理、符号分割、符号空间关系确定、逻辑关系确定等步骤。近年来随着计算机计算能力的显著提升和大数据时代的到来,基于神经网络的公式识别算法受到了研究者的青睐。Faure[2]等人利用图像在X、Y轴上的投影,提出一种新型的数学符号分割方法,但是其在根号上的分割往往是不成功的,而且存在等号等符号的过度分割问题。在王奕松[3]的论文中,介绍了初等数学解题语句的识别难点,利用LSTM网络架构,构建了数学统计语言模型,通过改进基于坐标轴投影的符号分割方法,达到字符分割的目的。并且基于外接矩形、点分布模式的特征提取,对数学解题语言中的根式、分式等做出判别来完成符号识别。然而该方法数据集样本较少,识别准确率比较低。
[1]BLOSTEIN D.GRBAVEC A.Recognition of mathematical notation[C].WorldScientific Publishing Company,1996.
[2]FAURE C,WANG X.Automatic perception of the structure ofhandwritten mathematical expressions[C].ICDAR,2003.
[3]王奕松.基于LSTM模型的数学公式手写体识别技术的研究与实现[D].电子科技大学,2018.
发明内容
本发明提供一种基于端对端网络模型的手写公式识别方法,从而解决现有技术的上述问题。
一种基于端对端网络模型的手写公式识别方法,包括以下步骤:
S1)采集手写公式识别图片数据集,对手写公式识别图片数据集进行预处理;手写公式识别图片数据集包括原始数据集以及与原始数据集相对应的标签集;
S2)建立encoder-decoder模型,encoder-decoder模型包括encoder编码器和decoder解码器;encoder编码器,用于提取手写公式识别图片的主要特征和小特征、并对主要特征和小特征进行编码,从而提取手写公式识别图片中每个字符对应的输入词向量;decoder解码器,通过注意力机制对特征向量进行注意力概率权重计算、并获得手写公式识别图片的识别结果;
S3)利用预处理后的手写公式识别图片数据集对encoder-decoder模型进行训练,获得训练完成后的encoder-decoder模型;
S4)利用训练完成后的encoder-decoder模型对待识别手写公式图片进行识别,获得待识别手写公式图片的识别结果。
进一步的,步骤S1)中对手写公式识别图片数据集进行预处理,预处理包括将原始数据集转化为预设大小的灰度图以及对标签集进行embedding操作;
对标签集进行embedding操作,包括如下步骤:
S11)对标签集中出现的字符进行统计、并生成一个字符表;
S12)在标签集中的每一个标签的前面插入一个起始符;在标签集中的每一个标签的后面插入一个终止符;
S13)标签集中的每一个标签通过字符表被分割为字符向量
Figure BDA0002556130450000021
Figure BDA0002556130450000031
Figure BDA0002556130450000032
表示第n个标签通过字符表被分割成的第m个字符;获得标签集中的所有标签被分割成字符后的字符向量集;
S15)对标签集中的每一个标签的字符进行word embedding操作,获得进行wordembedding操作后的标签向量集。
进一步的,步骤S2)中,encoder编码器包括特征提取层,特征提取层包括预处理层、主要特征提取模块和小特征提取模块,预处理层包括一层卷积层、一层BN层、一层Relu层、一层最大池化层。
进一步的,主要特征提取模块包括依次相连的n个dense块,每一个dense块后连接有一个转换层;每一个dense块包括若干层第一神经网络,每一层第一神经网络包括一层BN层、一层Relu层、一层卷积层、一层BN层、一层Relu层以及一层卷积层;转换层包括一层BN层、一层Relu层、一层卷积层以及一层平均池化层;第i个转换层的Relu层的输出端与小特征提取模块并联连接,小特征提取模块包括一个大感受野的dense块,大感受野的dense块包括若干层第二神经网络,每一层第二神经网络包括一层BN层、一层Relu层、一层卷积层、一层BN层、一层Relu层以及一层卷积层。
本发明在encoder编码器中采用了dense块结构,能够进行特征重用,加强了特征提取,促进梯度传播,并减少了参数数量。在数学公式识别任务中,由于数学公式复杂的二维结构,符号间上下文关系异常紧密可能在多个字符之后,上下文依然存在着联系,例如:d=\sqrt{4^{2}-4}=2\sqrt{3}中的等号前后的根号存在着紧密联系,所以对图像识别出的特征不能够有遗失。dense块每层都从所有先前的层中获取其他输入并将特征图传递给后续层,通过dense块结构可以保证最大程度网络中各层之间直接连接,保证信息交流,保持了前馈性。
主要特征提取模块包括了依次相连的n个dense块,通过n个dense块提取了手写公式识别图片数据集的特征,但是考虑到pooling层缩小了像素图的大小,降低了分辨率。由于手写数学公式符号的比例差异很大,在低分辨率的feature map中会丢失,因此提取每层特征的细节在手写初等数学公式识别中尤为重要。在多层池化后,小的视觉信息很容易消失,从而导致特征提取不足的后果。为了解决这项问题,采用并联一种大感受野的dense块,达到提供辨别低分辨率特征,又不遗失高分辨率特征的目的。大感受野的dense块可以感受更大的视觉信息,更贴近现实情况。
进一步的,decoder解码器采用加入attention机制的BiGRU网络。
进一步的,步骤S3)中,利用预处理后的手写公式识别图片数据集对encoder-decoder模型进行训练,包括步骤:
S31)利用特征提取层提取手写公式识别图片的主要特征和小特征;获得主要特征图和小特征图,对主要特征图的元素和小特征图中的元素进行拼接、并进行wordembedding操作,获得手写公式识别图片中每个字符对应的输入词向量;获得由手写公式识别图片中所有字符的输入词向量构成的输入词向量矩阵;
S32)decoder解码器包括解码器输入层、BiGRU层和maxout输出层;将输入词向量矩阵作为解码器输入层、并输入至BiGRU层,计算BiGRU层输出的词向量;计算BiGRU层输出的词向量具体过程如下:
Figure BDA0002556130450000041
Figure BDA0002556130450000042
Figure BDA0002556130450000043
其中
Figure BDA0002556130450000044
表示t时刻正向GRU输出的隐藏状态,/>
Figure BDA0002556130450000045
为t时刻反向输出的隐藏状态,ht表示t时刻BiGRU输出的隐藏状态,ωt、υt分别为t时刻正向GRU输出的隐藏状态和上一时刻反向输出的隐藏状态/>
Figure BDA0002556130450000051
的权值矩阵,/>
Figure BDA0002556130450000052
为上一时刻正向输出的隐藏状态,bt为偏置,xtj表示与第j个字符对应的输入词向量;htj为BiGRU层与第j个字符对应的输出词向量;
S33)引入coverage机制、计算每个输入词向量应分配的注意力概率权重,BiGRU输出与第j个字符相对应的隐藏状态时第i个字符的输入词向量注意力概率权重
Figure BDA0002556130450000053
L为字符总数;中间过程向量/>
Figure BDA0002556130450000054
βT为注意力概率权值矩阵,ht-1为上一时刻BiGRU输出的隐藏状态,w1、w2分别为上一时刻BiGRU输出的隐藏状态的权值矩阵、中间特性向量权值矩阵;中间特征权值向量
Figure BDA0002556130450000055
vT表示中间特征权值向量的权值矩阵;wh表示与第i个字符对应的BiGRU输出的隐藏状态hi的权重系数;bw表示偏置项;xti表示与第j个字符对应的输入词向量;/>
Figure BDA0002556130450000059
为上下文向量,初始化时将上下文向量/>
Figure BDA0002556130450000056
设为0;
S34)获得当前时刻由attention机制分配的不同注意力概率权重与BiGRU层中各个字符对应的中间特征权值向量的乘积的累加和
Figure BDA0002556130450000057
S35)将由attention机制分配的不同注意力概率权重与BiGRU层各个字符对应的中间特征权值向量的乘积的累加和ct作为BiGRU层的当前输入,根据上一次BiGRU输出的隐藏状态ht-1重新更新计算BiGRU输出的隐藏状态ht=GRU(ht-1,ct),在maxout输出层采用maxout函数获得手写公式识别预测概率分布结果
Figure BDA0002556130450000058
其中w3、w4分别为待训练的上下文向量权重系数矩阵和待训练的隐藏状态权重系数矩阵。/>
输入的数据中(主要特征图的元素和小特征图中的元素进行拼接后的数据)的每个字符被编码成一个稠密的向量,即word embedding操作。
本发明采用了双向深层GRU单元的解码器网络(即BiGRU网络),双向GRU有助于捕获更复杂的语言语义,并且在每一层中的双向单元有助于从符号之间的正向和反向捕获上下文。在NLP应用中,解码器的初始隐藏状态和单元状态通常是编码器的输出,但是由于本发明采用的编码器是卷积神经网络CNN,不会产生这样的输出,因此解码器的信息性初始状态(即上下文向量cit)采用0初始化。由于本发明的编码器不具有存储功能,而且BiGRU的初始状态不足以压缩所有来自编码器的信息,因此本发明引入了注意力机制从而解决这个问题。通过编码器对手写公式图片进行特征提取后,利用decoder解码器并采用coverage机制建立上下文词向量,这种coverage机制可以解决序列到序列问题中预测序列经常有重复的现象。
进一步的,将步骤S15)中进行word embedding操作后的标签向量集作为decoder解码器的输出,将输入词向量矩阵作为decoder解码器的输入,对encoder-decoder模型进行训练,训练过程中采用交叉熵损失函数及优化器算法,损失函数为交叉熵损失函数,优化器为Adam优化算法。
进一步的,步骤S12)中,还包括在每个标签的前面插入一个起始符<start>,在每个标签的后面插入一个起始符<end>,在数学符号库中增加符号<unknown>;符号<unknown>;用于表示数据集中未出现的新字符。
本发明的有益效果是:本发明利用不同感受野对手写公式图片进行大小特征提取,对不同的特征完成词向量编码以及与标签间的对接和解码操作,decoder解码器,采用了BiGRU网络,并同时引入了注意力机制和coverage机制,优化了网络超参数,并对不同来源的数据图片做了统一化预处理,避免了多次卷积后特征图分辨率较低导致部分文本缺失问题,能够更好的识别手写公式,识别准确率高。本发明基于端对端网络架构,建立了encoder-decoder模型,在encoder编码器采用稠密连接块(Dense块)的结构,获取深度特征,并建立不同感受野来对手写公式图片进行大小特征提取,把握更多的全局信息。在decoder解码器采用双向GRU网络,每一层中使用的双向单元可以从符号之间的正向和反向捕获上下文,有助于捕获更复杂的语言语义。decoder解码器可以获取不同特征,缓解了多次卷积后特征图分辨率较低导致部分文本缺失问题,并且能够更好的把握提取特征之间的前后关系,从而更好的识别手写公式。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本实施例一提供的端对端网络模型的手写公式识别方法流程示意图。
图2是本实施例一提供的主要特征提取网络流程示意图。
图3是本实施例一提供的小特征提取网络流程示意图。
图4是本实施例一提供的GRU网络隐藏层连接示意图。
图5是本实施例一提供的手写公式识别方法部分数据流程示意图。
图6是本实施例一提供的迭代计算350个epoch后的损失函数loss变化曲线图。
图7是本实施例一提供的模型训练过程中训练集准确率曲线图。
图8是本实施例一提供的验证集迭代350次后的准确率曲线图。
图9是本实施例一提供的测试集部分识别结果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用来区别类似的对象,而不必用于描述特定的顺序或先后次序,应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本发明的实施例中对相同属性的对象在描述时所采用的区分方式。
实施例一,一种基于端对端网络模型的手写公式识别方法,如图1及图5所示,包括以下步骤:
S1)采集手写公式识别图片数据集,对手写公式识别图片数据集进行预处理;手写公式识别图片数据集包括原始数据集以及与原始数据集相对应的标签集。
步骤S1)中对手写公式识别图片数据集进行预处理,预处理包括将原始数据集转化为预设大小的灰度图以及对标签集进行embedding操作;
对标签集进行embedding操作,包括如下步骤:
S11)对标签集中出现的字符进行统计、并生成一个字符表;
S12)在标签集中的每一个标签的前面插入一个起始符<start>;在标签集中的每一个标签的后面插入一个终止符<end>;在字符表中增加了符号<unknown>,符号<unknown>用来表示数据集中未出现的新字符。
S13)标签集中的每一个标签通过字符表被分割为字符向量
Figure BDA0002556130450000081
Figure BDA0002556130450000082
Figure BDA0002556130450000083
表示第n个标签通过字符表被分割成的第m个字符;获得标签集中的所有标签被分割成字符后的字符向量集;
S15)对标签集中的每一个标签的字符进行word embedding操作,获得进行wordembedding操作后的标签向量集。
为实现手写初等数学公式的识别,还需要对标签中出现的字符建立数学符号库。为使得每一个数学公式的字符都有上下文,在本实施例中为每一个标签插入了一个起始符<start>和一个终止符<end>。由于使用的字符是有限的,在实际情况中,可能会增加数据集,在数据集中出现未记录在数学符号库中的字符,为增加识别模型的健壮性,在数学符号库中增加了一个<unknown>来代表为出现的新字符。
本实施例数据集来自谷歌CROHME标准公式识别数据集,采用了CROHME2016数据集,训练集数量为8836张公式图片,且所有标签均为LaTeX标记。在验证过程上,采用CROHME2014测试集作为验证集来评估模型框架的性能。并使用CROHME2016测试集来体现模型的泛化性能。具体实验数据集分布如表1所示。
表1实验数据集分布
Figure BDA0002556130450000091
表1
本实施例将手写公式识别图片数据集分成训练集、测试集和验证集,由于这些图片来源不统一,格式不规范,无法直接运用到深度学习网络的训练过程,为了使用这些数据,需要对数据进行处理。主要处理工作包括:1)删除部分超纲的图片与标签,例如高等数学出现的矩阵、多重积分等特殊符号;2)清除部分数据集的标签中出现的多余空格符、制表符等符号;3)统一不同符号代表的相同意义,例如“\\left”、“\left”;4)将数据集标签统一为latex编码,并将有些latex编码中带有的“$”符号删除;5)将数据集图片统一成大小相同的分辨率,即256×256大小的分辨率。
在一般深度学习图片识别任务中,为识别不同的特征,通常采用RGB三通道彩色图片作为输入,达到区别色彩的目的,而本发明在手写数学公式识别中,数据集图片主要由黑白两部分组成,黑色为手写字迹,白色为背景,而原始数据集中的图片的光照强度却对识别过程有着很大的影响,因此实验数据集图片均采用了彩色图转灰度图的预处理,降低了光照强度对识别结果的影响,同时也减少了模型训练过程的运算量,提高了训练速度。
S2)建立encoder-decoder模型,encoder-decoder模型包括encoder编码器和decoder解码器;encoder编码器,用于提取手写公式识别图片的主要特征和小特征、并对主要特征和小特征进行编码;decoder解码器,通过注意力机制对特征向量进行注意力概率权重计算、并获得手写公式识别图片的识别结果。decoder解码器采用加入attention机制的BiGRU网络。BiGRU网络的隐藏层的层数取256。如图4所示GRU网络的一个隐藏层。
encoder编码器包括特征提取层,特征提取层包括预处理层、主要特征提取模块和小特征提取模块,预处理层包括一层7×7卷积层、一层BN层、一层Relu层、一层最大池化层。
如图2所示,主要特征提取模块包括依次相连的3个dense块,每一个dense块后连接有一个转换层;每一个dense块包括16层第一神经网络,每一层第一神经网络包括一层BN层、一层Relu层、一层1×1卷积层、一层BN层、一层Relu层以及一层3×3卷积层;转换层包括一层BN层、一层Relu层、一层1×1卷积层以及一层2×2平均池化层;如图3所示,第2个转换层的Relu层的输出端与小特征提取模块并联连接,小特征提取模块包括一个大感受野的dense块,大感受野的dense块包括8层第二神经网络,每一层第二神经网络包括一层BN层、一层Relu层、一层1×1卷积层、一层BN层、一层Relu层以及一层3×3卷积层。主要特征提取模块的每个dense块的增长率为24;小特征提取模块的大感受野的dense块的增长率为24。
本实施例在特征提取层利用CNN(Convolutional Neural Networks)网络进行特征提取,可以强化特征抓取和促进梯度传播,在不同感受野、分辨率上解决识别数学符号,解决了池化层带来的分辨率低下问题。感受野指的是神经网络中神经元“看到的”输入区域,在卷积神经网络中,特征图上某个元素的计算受输入图像上某个区域的影响,这个区域即该元素的感受野。本发明通过采用并联大感受野的dense块,达到提供辨别低分辨率特征,又不遗失高分辨率特征的目的。大感受野的dense块可以感受更大的视觉信息,更贴近现实情况。另外,为使网络达到紧凑,减少不必要的计算量,本实施例仅在第2个dense块分支连接一个大感受野的dense块,用来提取小感受野中的特征。
步骤S3)中,利用预处理后的手写公式识别图片数据集对encoder-decoder模型进行训练,包括步骤:
S31)利用特征提取层提取手写公式识别图片的主要特征和小特征;获得主要特征图和小特征图,对主要特征图的元素和小特征图中的元素进行拼接、并进行wordembedding操作,获得手写公式识别图片中每个字符对应的输入词向量;获得由手写公式识别图片中所有字符的输入词向量构成的输入词向量矩阵;
S32)decoder解码器包括解码器输入层、BiGRU层和maxout输出层;将输入词向量矩阵作为解码器输入层、并输入至BiGRU层,计算BiGRU层输出的词向量;计算BiGRU层输出的词向量具体过程如下:
Figure BDA0002556130450000111
Figure BDA0002556130450000121
Figure BDA0002556130450000122
其中
Figure BDA0002556130450000123
表示t时刻正向GRU输出的隐藏状态,/>
Figure BDA0002556130450000124
为t时刻反向输出的隐藏状态,ht表示t时刻BiGRU输出的隐藏状态,ωt、υt分别为t时刻正向GRU输出的隐藏状态和上一时刻反向输出的隐藏状态/>
Figure BDA0002556130450000125
的权值矩阵,/>
Figure BDA0002556130450000126
为上一时刻正向输出的隐藏状态,bt为偏置,xtj表示与第j个字符对应的输入词向量;htj为BiGRU层与第j个字符对应的输出词向量;
S33)引入coverage机制、计算每个输入词向量应分配的注意力概率权重,BiGRU输出与第j个字符相对应的隐藏状态时第i个字符的输入词向量注意力概率权重
Figure BDA0002556130450000127
L为字符总数;中间过程向量/>
Figure BDA0002556130450000128
βT为注意力概率权值矩阵,ht-1为上一时刻BiGRU输出的隐藏状态,w1、w2分别为上一时刻BiGRU输出的隐藏状态的权值矩阵、中间特性向量权值矩阵;中间特征权值向量
Figure BDA0002556130450000129
vT表示中间特征权值向量的权值矩阵;wh表示与第i个字符对应的BiGRU输出的隐藏状态hi的权重系数;bw表示偏置项;xti表示与第j个字符对应的输入词向量;/>
Figure BDA00025561304500001210
为上下文向量,初始化时将上下文向量/>
Figure BDA00025561304500001211
设为0;
S34)获得当前时刻由attention机制分配的不同注意力概率权重与BiGRU层中各个字符对应的中间特征权值向量的乘积的累加和
Figure BDA00025561304500001212
S35)将由attention机制分配的不同注意力概率权重与BiGRU层各个字符对应的中间特征权值向量的乘积的累加和ct作为BiGRU层的当前输入,根据上一次BiGRU输出的隐藏状态ht-1重新更新计算BiGRU输出的隐藏状态ht=GRU(ht-1,ct),在maxout输出层采用maxout函数获得手写公式识别预测概率分布结果
Figure BDA0002556130450000131
其中w3、w4分别为待训练的上下文向量权重系数矩阵和待训练的隐藏状态权重系数矩阵。
输入的数据中(主要特征图的元素和小特征图中的元素进行拼接后的数据)的每个字符被编码成一个稠密的向量,即word embedding操作。
本发明采用了双向深层GRU单元的解码器网络(即BiGRU网络),双向GRU有助于捕获更复杂的语言语义,并且在每一层中的双向单元有助于从符号之间的正向和反向捕获上下文。在NLP应用中,解码器的初始隐藏状态和单元状态通常是编码器的输出,但是由于本发明采用的编码器是卷积神经网络CNN,不会产生这样的输出,因此解码器的信息性初始状态(即上下文向量
Figure BDA0002556130450000132
)采用0初始化。由于本发明的编码器不具有存储功能,而且BiGRU的初始状态不足以压缩所有来自编码器的信息,因此本发明引入了注意力机制从而解决这个问题。通过编码器对手写公式图片进行特征提取后,利用decoder解码器并采用coverage机制建立上下文词向量,这种coverage机制可以解决序列到序列问题中预测序列经常有重复的现象。
将步骤S15)中进行word embedding操作后的标签向量集作为decoder解码器的输出,将输入词向量矩阵作为decoder解码器的输入,对encoder-decoder模型进行训练,训练过程中采用交叉熵损失函数及优化器算法,损失函数为交叉熵损失函数,优化器为Adam优化算法。上下文向量
Figure BDA0002556130450000133
是作为encoder编码器和decoder解码器最直接的联系,当输入词向量较长时,在编码解码时会造成数据特征丢失严重和细节信息缺失问题,所以本发明采用了注意力机制,在解码阶段,对encoder编码器中的隐状态进行不同权重的加权处理。
本实施例引入了coverage机制,目的是为了解决encoder-decoder模型生成词向量中经常有重复片段的问题。在步骤S32)至步骤S36)中,采用梯度下降法和Adam优化器对整个过程中的各个权重及参数进行不断优化。本实施例还包括对encoder-decoder模型中主要的网络的超参数进行设置,包括:主要特征提取模块中每一个dense块的网络层数为16层,增长率k取24;小特征提取模块的网络层数为8层,增长率k取24;dropout设置为0.2;范围搜索长度为10。为使得计算机性能得到最大利用,batch_size大小为10,学习率即梯度下降步长为2e-2,学习率衰减因子为0.5,最大梯度裁剪为5,损失函数采用交叉熵损失函数,优化器算法为Adam算法。
S4)利用训练完成后的encoder-decoder模型对待识别手写公式图片进行识别,获得待识别手写公式图片的识别结果。
图6为迭代计算350个epoch后利用tensorboardX库进行可视化后得到的损失函数loss变化曲线图。模型训练过程前期,loss曲线变化较快,在300多个epoch后,loss值趋于收敛状态,并在350多个epoch时达到局部极值。由此可以得出本模型对样本数据集的拟合状态较好,并没有出现梯度消失或者梯度爆炸等现象,损失函数达到了很好的收敛效果。
另一方面,模型训练过程中训练集准确率如图7所示,可以看出,准确率曲线逐渐收敛于95%。对于验证集,迭代350次后的准确率曲线如图8所示,可以看出验证集的准确率在逐步上升,期间虽有波动,但逐渐收敛于89%,说明参数设置有效提高了网络的稳健性,避免了训练过程中的过拟合现象,表明模型对验证数据也有比较好的表达能力。
针对在CROHME2016谷歌识别大赛中表现比较好的Wiris、Tokyo等算法,本发明在CROHME2016test同一测试集上与这些算法的准确率做了对比,结果如表2所示,可以看出本发明提出的模型在手写公式识别任务上有更好的准确率,能够很好的解决手写初等公式的识别问题。
针对在CROHME2016谷歌识别大赛中表现比较好的Wiris、Tokyo等算法,本发明在同一测试集上与现有几种算法(包括Wiris、Tokyo、Sao Paolo、Nantes)的准确率做了对比,结果如表2所示,与现有几种算法相比,可以看出本发明提出的模型在手写公式识别任务上达到了深层特征提取的目的,有着较好的准确率,准确率为51.00%,说明本发明具有较好的泛化能力,能够自动获取图片中的特征,自动调节网路参数,达到模型的优化,有效避免了过拟合问题,提高了预测的稳健性,能够很好的解决手写数学公式的识别问题。
表2本发明与其他算法的准确率对比图
Figure BDA0002556130450000151
表2
另外,图9为本发明在测试集上的部分识别结果,a、b、c和d分别为测试集中的四个手写公式图片,a-1、b-1、c-1和d-1分别为与手写公式图片a、手写公式图片b、手写公式图片c和手写公式图片d相对应的识别结果,可见本发明能够对输入的手写初等数学公式图像进行良好的识别,对于小分辨率文本不会出现特征丢失遗漏的现象,在输入数学公式较长的情况下也能很好的完成识别任务。本发明采用的双向GRU网络有助于捕获公式结构复杂的语言语义,每一层中的双向单元从符号和词向量的正向和反向捕获上下文,在输入数学公式较长的情况下也能很好的完成识别任务。本实施例还利用集束搜索(Beam Search)算法,从而生成一个最大概率的字符向量序列作为结果集,提高了手写公式的识别准确率。
本发明的有益效果是:本发明利用不同感受野对手写公式图片进行大小特征提取,对不同的特征完成词向量编码以及与标签间的对接和解码操作,优化了网络超参数,并对不同来源的数据图片做了统一化预处理。避免了多次卷积后特征图分辨率较低导致部分文本缺失问题,能够更好的识别手写公式,识别准确率高。
上述实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述实施例方法所述的全部或部分步骤。所述计算机设备,例如:个人计算机、服务器、网络设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,例如:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (7)

1.一种基于端对端网络模型的手写公式识别方法,其特征在于,包括以下步骤:
S1)采集手写公式识别图片数据集,对所述手写公式识别图片数据集进行预处理;所述手写公式识别图片数据集包括原始数据集以及与所述原始数据集相对应的标签集;
S2)建立encoder-decoder模型,所述encoder-decoder模型包括encoder编码器和decoder解码器;所述encoder编码器,用于提取手写公式识别图片的主要特征和小特征、并对主要特征和小特征进行编码,从而提取手写公式识别图片中每个字符对应的输入词向量;所述decoder解码器,通过注意力机制对特征向量进行注意力概率权重计算、并获得手写公式识别图片的识别结果;
S3)利用预处理后的手写公式识别图片数据集对所述encoder-decoder模型进行训练,获得训练完成后的encoder-decoder模型;
S4)利用训练完成后的encoder-decoder模型对待识别手写公式图片进行识别,获得待识别手写公式图片的识别结果;
步骤S3)中,利用预处理后的手写公式识别图片数据集对所述encoder-decoder模型进行训练,包括步骤:
S31)利用特征提取层提取手写公式识别图片的主要特征和小特征;获得主要特征图和小特征图,对主要特征图的元素和小特征图中的元素进行拼接、并进行word embedding操作,获得手写公式识别图片中每个字符对应的输入词向量;获得由手写公式识别图片中所有字符的输入词向量构成的输入词向量矩阵;
S32)decoder解码器包括解码器输入层、BiGRU层和maxout输出层;将输入词向量矩阵作为解码器输入层、并输入至BiGRU层,计算BiGRU层输出的词向量;计算BiGRU层输出的词向量具体过程如下:
Figure FDA0004183058700000021
Figure FDA0004183058700000022
Figure FDA0004183058700000023
其中
Figure FDA0004183058700000024
表示t时刻正向GRU输出的隐藏状态,/>
Figure FDA0004183058700000025
为t时刻反向输出的隐藏状态,ht表示t时刻BiGRU输出的隐藏状态,ωt、υt分别为t时刻正向GRU输出的隐藏状态和上一时刻反向输出的隐藏状态/>
Figure FDA0004183058700000026
的权值矩阵,/>
Figure FDA0004183058700000027
为上一时刻正向输出的隐藏状态,bt为偏置,xtj表示与第j个字符对应的输入词向量;htj为BiGRU层与第j个字符对应的输出词向量;
S33)引入coverage机制、计算每个输入词向量应分配的注意力概率权重,BiGRU输出与第j个字符相对应的隐藏状态时第i个字符的输入词向量注意力概率权重
Figure FDA0004183058700000028
L为字符总数;中间过程向量/>
Figure FDA0004183058700000029
βT为注意力概率权值矩阵,ht-1为上一时刻BiGRU输出的隐藏状态,w1、w2分别为上一时刻BiGRU输出的隐藏状态的权值矩阵、中间特性向量权值矩阵;中间特征权值向量
Figure FDA00041830587000000210
vT表示中间特征权值向量的权值矩阵;wh表示与第i个字符对应的BiGRU输出的隐藏状态hi的权重系数;bw表示偏置项;xti表示与第j个字符对应的输入词向量;/>
Figure FDA00041830587000000211
为上下文向量,初始化时将上下文向量/>
Figure FDA00041830587000000212
设为0;
S34)获得当前时刻由attention机制分配的不同注意力概率权重与所述BiGRU层中各个字符对应的中间特征权值向量的乘积的累加和
Figure FDA00041830587000000213
S35)将由attention机制分配的不同注意力概率权重与BiGRU层各个字符对应的中间特征权值向量的乘积的累加和ct作为BiGRU层的当前输入,根据上一次BiGRU输出的隐藏状态ht-1重新更新计算BiGRU输出的隐藏状态ht=GRU(ht-1,ct),在maxout输出层采用maxout函数获得手写公式识别预测概率分布结果
Figure FDA0004183058700000031
其中w3、w4分别为待训练的上下文向量权重系数矩阵和待训练的隐藏状态权重系数矩阵。
2.根据权利要求1所述的基于端对端网络模型的手写公式识别方法,其特征在于,步骤S1)中对所述手写公式识别图片数据集进行预处理,所述预处理包括将所述原始数据集转化为预设大小的灰度图以及对标签集进行embedding操作;
对标签集进行embedding操作,包括如下步骤:
S11)对标签集中出现的字符进行统计、并生成一个字符表;
S12)在标签集中的每一个标签的前面插入一个起始符;在标签集中的每一个标签的后面插入一个终止符;
S13)标签集中的每一个标签通过字符表被分割为字符向量
Figure FDA0004183058700000032
Figure FDA0004183058700000033
表示第n个标签通过字符表被分割成的第m个字符;获得标签集中的所有标签被分割成字符后的字符向量集;
S15)对标签集中的每一个标签的字符进行word embedding操作,获得进行wordembedding操作后的标签向量集。
3.根据权利要求1或2所述的基于端对端网络模型的手写公式识别方法,其特征在于,步骤S2)中,所述encoder编码器包括特征提取层,所述特征提取层包括预处理层、主要特征提取模块和小特征提取模块,所述预处理层包括一层卷积层、一层BN层、一层Relu层、一层最大池化层。
4.根据权利要求3所述的基于端对端网络模型的手写公式识别方法,其特征在于,所述主要特征提取模块包括依次相连的n个dense块,每一个dense块后连接有一个转换层;每一个dense块包括若干层第一神经网络,每一层第一神经网络包括一层BN层、一层Relu层、一层卷积层、一层BN层、一层Relu层以及一层卷积层;所述转换层包括一层BN层、一层Relu层、一层卷积层以及一层平均池化层;第i个转换层的Relu层的输出端与小特征提取模块并联连接,所述小特征提取模块包括一个大感受野的dense块,所述大感受野的dense块包括若干层第二神经网络,每一层第二神经网络包括一层BN层、一层Relu层、一层卷积层、一层BN层、一层Relu层以及一层卷积层。
5.根据权利要求4所述的基于端对端网络模型的手写公式识别方法,其特征在于,所述decoder解码器采用加入attention机制的BiGRU网络。
6.根据权利要求2所述的基于端对端网络模型的手写公式识别方法,其特征在于,将步骤S15)中进行word embedding操作后的标签向量集作为decoder解码器的输出,将输入词向量矩阵作为decoder解码器的输入,对encoder-decoder模型进行训练,训练过程中采用交叉熵损失函数及优化器算法,所述损失函数为交叉熵损失函数,所述优化器为Adam优化算法。
7.根据权利要求2所述的基于端对端网络模型的手写公式识别方法,其特征在于,步骤S12)中,还包括在每个标签的前面插入一个起始符<start>,在每个标签的后面插入一个起始符<end>,在数学符号库中增加符号<unknown>;所述符号<unknown>;用于表示数据集中未出现的新字符。
CN202010590507.2A 2020-06-24 2020-06-24 一种基于端对端网络模型的手写公式识别方法 Active CN111738169B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010590507.2A CN111738169B (zh) 2020-06-24 2020-06-24 一种基于端对端网络模型的手写公式识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010590507.2A CN111738169B (zh) 2020-06-24 2020-06-24 一种基于端对端网络模型的手写公式识别方法

Publications (2)

Publication Number Publication Date
CN111738169A CN111738169A (zh) 2020-10-02
CN111738169B true CN111738169B (zh) 2023-05-23

Family

ID=72652006

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010590507.2A Active CN111738169B (zh) 2020-06-24 2020-06-24 一种基于端对端网络模型的手写公式识别方法

Country Status (1)

Country Link
CN (1) CN111738169B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112712075B (zh) * 2020-12-30 2023-12-01 科大讯飞股份有限公司 算式检测方法、电子设备和存储装置
CN113065432A (zh) * 2021-03-23 2021-07-02 内蒙古工业大学 一种基于数据增强和ECA-Net的手写体蒙古文识别方法
CN113705322B (zh) * 2021-06-11 2024-05-24 北京易达图灵科技有限公司 基于门限图神经网络的手写汉字识别方法和装置
CN113705664B (zh) * 2021-08-26 2023-10-24 南通大学 一种模型及训练方法、表面肌电信号手势识别方法
CN113743315B (zh) * 2021-09-07 2023-07-14 电子科技大学 一种基于结构增强的手写体初等数学公式识别方法
CN116630979B (zh) * 2023-04-10 2024-04-30 雄安创新研究院 一种ocr识别方法、系统、存储介质和边缘设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837793A (zh) * 2019-11-04 2020-02-25 骆研 一种智能识别手写数学公式批阅系统
CN110866529A (zh) * 2019-10-29 2020-03-06 腾讯科技(深圳)有限公司 字符识别方法、装置、电子设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107423290A (zh) * 2017-04-19 2017-12-01 厦门大学 一种基于层次结构的神经网络机器翻译模型
JP6911785B2 (ja) * 2018-02-02 2021-07-28 日本電信電話株式会社 判定装置、判定方法及び判定プログラム
US11034019B2 (en) * 2018-04-19 2021-06-15 Brown University Sequence-to-sequence language grounding of non-Markovian task specifications
CN108898142B (zh) * 2018-06-15 2022-03-18 宁波云江互联网科技有限公司 一种手写公式的识别方法及计算设备
CN109657239B (zh) * 2018-12-12 2020-04-21 电子科技大学 基于注意力机制和语言模型学习的中文命名实体识别方法
CN109977861B (zh) * 2019-03-25 2023-06-20 中国科学技术大学 离线手写体数学公式识别方法
CN110084239B (zh) * 2019-04-10 2022-09-06 中国科学技术大学 降低离线手写数学公式识别时网络训练过拟合的方法
CN110705399A (zh) * 2019-09-19 2020-01-17 安徽七天教育科技有限公司 一种数学公式自动识别的方法
CN110929634B (zh) * 2019-11-19 2023-04-18 广东工业大学 基于双向Tree-GRU的联机手写数学公式识别方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866529A (zh) * 2019-10-29 2020-03-06 腾讯科技(深圳)有限公司 字符识别方法、装置、电子设备及存储介质
CN110837793A (zh) * 2019-11-04 2020-02-25 骆研 一种智能识别手写数学公式批阅系统

Also Published As

Publication number Publication date
CN111738169A (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
CN111738169B (zh) 一种基于端对端网络模型的手写公式识别方法
CN110738090B (zh) 使用神经网络进行端到端手写文本识别的系统和方法
RU2691214C1 (ru) Распознавание текста с использованием искусственного интеллекта
CN111160343B (zh) 一种基于Self-Attention的离线数学公式符号识别方法
CN111985239B (zh) 实体识别方法、装置、电子设备及存储介质
CN111985369A (zh) 基于跨模态注意力卷积神经网络的课程领域多模态文档分类方法
CN111444340A (zh) 文本分类和推荐方法、装置、设备及存储介质
US11288324B2 (en) Chart question answering
CN113254654B (zh) 模型训练、文本识别方法、装置、设备和介质
CN113836992B (zh) 识别标签的方法、训练标签识别模型的方法、装置及设备
CN113283336A (zh) 一种文本识别方法与系统
CN112836702B (zh) 一种基于多尺度特征提取的文本识别方法
US11568140B2 (en) Optical character recognition using a combination of neural network models
CN111858984A (zh) 一种基于注意力机制哈希检索的图像匹配方法
CN116486419A (zh) 一种基于孪生卷积神经网络的书法字识别方法
CN111026845B (zh) 一种获取多层次上下文语义的文本分类方法
CN116189162A (zh) 一种船牌检测与识别方法、装置、电子设备和储存介质
CN113642602B (zh) 一种基于全局与局部标签关系的多标签图像分类方法
CN116226357B (zh) 一种输入中包含错误信息场景下的文档检索方法
Hemanth et al. CNN-RNN BASED HANDWRITTEN TEXT RECOGNITION.
CN115424275A (zh) 一种基于深度学习技术的渔船船牌号识别方法及系统
CN115862015A (zh) 文字识别系统的训练方法及装置、文字识别方法及装置
CN113362088A (zh) 一种基于crnn的电信行业智能客服图像识别的方法及其系统
Malhotra et al. End-to-End Historical Handwritten Ethiopic Text Recognition using Deep Learning
CN118094246A (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