CN105512692B - 基于blstm的联机手写数学公式符号识别方法 - Google Patents
基于blstm的联机手写数学公式符号识别方法 Download PDFInfo
- Publication number
- CN105512692B CN105512692B CN201510860618.XA CN201510860618A CN105512692B CN 105512692 B CN105512692 B CN 105512692B CN 201510860618 A CN201510860618 A CN 201510860618A CN 105512692 B CN105512692 B CN 105512692B
- Authority
- CN
- China
- Prior art keywords
- label
- sequence
- probability
- formula
- mathematical formulae
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000013528 artificial neural network Methods 0.000 claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 13
- 230000000306 recurrent effect Effects 0.000 claims abstract description 9
- 230000006403 short-term memory Effects 0.000 claims abstract description 6
- 238000004458 analytical method Methods 0.000 claims abstract description 3
- 235000013350 formula milk Nutrition 0.000 claims description 51
- 238000004422 calculation algorithm Methods 0.000 claims description 28
- 210000002569 neuron Anatomy 0.000 claims description 19
- 238000012952 Resampling Methods 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 15
- 238000000605 extraction Methods 0.000 claims description 14
- 238000012549 training Methods 0.000 claims description 14
- 238000005070 sampling Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 10
- 238000007476 Maximum Likelihood Methods 0.000 claims description 9
- 210000004027 cell Anatomy 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 8
- 230000014509 gene expression Effects 0.000 claims description 7
- 239000004816 latex Substances 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 238000010606 normalization Methods 0.000 claims description 5
- 238000011017 operating method Methods 0.000 claims description 5
- 210000005036 nerve Anatomy 0.000 claims description 4
- 230000001537 neural effect Effects 0.000 claims description 4
- 238000003062 neural network model Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000017105 transposition Effects 0.000 claims description 3
- 238000003780 insertion Methods 0.000 claims description 2
- 230000037431 insertion Effects 0.000 claims description 2
- 239000004744 fabric Substances 0.000 claims 1
- 230000007704 transition Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 4
- 230000000694 effects Effects 0.000 abstract description 2
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- LKJPSUCKSLORMF-UHFFFAOYSA-N Monolinuron Chemical group CON(C)C(=O)NC1=CC=C(Cl)C=C1 LKJPSUCKSLORMF-UHFFFAOYSA-N 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/24—Character recognition characterised by the processing or recognition method
- G06V30/242—Division of the character sequences into groups prior to recognition; Selection of dictionaries
- G06V30/244—Division of the character sequences into groups prior to recognition; Selection of dictionaries using graphical properties, e.g. alphabet type or font
- G06V30/2445—Alphabet recognition, e.g. Latin, Kanji or Katakana
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/196—Recognition using electronic means using sequential comparisons of the image signals with a plurality of references
- G06V30/1983—Syntactic or structural pattern recognition, e.g. symbolic string recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
Abstract
本发明提供基于BLSTM的联机手写数学公式符号识别方法,对联机手写输入的数学公式,用隐性分割模型对数学公式符号进行处理及识别,然后进行公式分析。本发明基于双向长短时记忆递归神经网络模型设计联机手写数学公式符号识别过程,并使用时域连接模型标注输出的无分割公式序列。对多部件构成的复杂符号,根据ASCII码表转化成单字符标签,减少识别标签的不确定性,统一标签类型。本发明联机手写数学公式符号识别方法识别效果良好,不需对公式进行切分处理,减少了一般公式识别方法中的工作量。多部件复杂符号整体识别的方法有效,比单独识别的准确率有显著提高。
Description
技术领域
本发明属于模式识别与人工智能技术领域,特别是涉及一种联机手写数学公式符号识别方法。
背景技术
移动终端的大量普及,使直接通过手写输入数据的方法,成为人类与计算机进行互动的最自然的方式。数学公式是二维文档,需同时传递一维空间中的符号信息,和符号与符号间的空间信息。符号与空间位置不同表达不同含义。因此,手写数学公式识别是手写识别领域中最具挑战性的重要部分。
目前数学公式输入主要依靠特殊的公式描述语言或公式编辑器。相比直接由手写输入的人机交互方法来说更加复杂和困难,不符合高速运转的现代生活节奏。20世纪60年代,有学者开始着手对数学公式识别进行研究,但受技术限制,数学公式识别发展缓慢。近些年,计算机技术高速发展,需要处理的公式、方程等信息越来越多,数学公式识别又重新引起科学界关注。全世界大学的研究者如德国工业大学、法国南特大学、美国麻省理工学院、加拿大皇后大学、捷克理工大学、日本东京大学等,纷纷加入联机手写数学公式识别研究中。联机手写数学公式识别竞赛(Competition on Recognition of OnlineHandwritten Mathematical Expressions,CROHME)于2011年开始举办,为全世界参赛者提供了用以研究的数据集,目的就是促进手写公式识别突破当前技术瓶颈。
目前比较流行的方法是使用模式识别的手段对数学公式中的符号进行识别及分类。例如,“汉王e粉笔”可在一般计算机上使用并识别略为繁复的数学表达式;数学公式可视编辑器Infty Editor是一款可处理复杂公式且输入简便的软件;法国Vision Object公司出品的一款基移动终端的手写数学计算器MyScript,简单直观,界面友好,可将手写公式转化为文本并提供计算结果,但对于一些特殊符号的识别不太好,且预设可以计算的功能因此设置了一些语法规定,可识别的数学公式自由度不高。
发明内容
本发明的目的在于利用计算机处理方法,提供一种联机手写数学公式识别方法,不需进行复杂的数学公式显性切分,而采用双向长短时记忆递归神经网络-时域连接分类器(BLSTM-CTC)混合模型进行隐性简单切分,减少一般公式识别方法中的工作量,提高手写数学公式的识别精度。
本发明采用的技术方案如下。
基于BLSTM的联机手写数学公式符号识别方法,对联机手写输入的数学公式,用隐性分割模型对数学公式符号进行处理及识别,然后进行公式分析;
具体包括如下步骤:
1)联机手写数学公式预处理切分:预处理模块完成笔迹归一化,再进行重采样及时间序列上的特征提取,具体使用隐性分割模型,通过重采样得到时间序列上的简单分割,每个采样点为分割片断,不需要在预处理时对公式进行精确切分;
2)标签置换:使用整体识别方法,对多部件特殊符号进行整体标注,利用ASCII码表中的空位,将多部件特殊符号转换为单字符表达标签;
3)用双向长短时记忆递归神经网络-时域连接分类器(BLSTM-CTC)组合模型进行数学公式字符识别:通过双向长短时记忆神经网络(BLSTM)实现数学公式序列字符在一维空间上的识别,并通过时域连接分类器(CTC)连接技术,对无分割公式序列进行标签,使时间序列上的采样点标签可以匹配到真值序列标签,从而将字符级别的识别结果通过时域连接模型上升到序列级别。
进一步地,步骤(1)中笔迹归一化具体操作如下:使用笔划数目简单估计数学公式宽度,针对整条公式做大致范围内的归一化处理,克服书写公式大小不统一的问题。
进一步地,步骤(1)中时间序列上的特征提取具体操作如下:在时序空间上对每个时间点上的重采样点提取如下几个特征:采样点x轴坐标,采样点y轴坐标,书写方向(cosθ,sinθ),笔迹曲率(cosα,sinα),以及是否为笔迹起落点;每个笔划开始点和结尾点的书写方向与曲率和相邻点一致;其中θ是当前采样点前后点连线与x轴正方向的夹角,α是采样点前后两点的书写方向的夹角,sin和cos分别是正弦函数和余弦函数。
进一步地,步骤(2)具体操作如下:使用整体识别方法,对多部件特殊符号进行整体标注,利用一种专门用于表达数字墨水的数据格式InkML文件中LaTex(公式描述语言)标签,将所有数学公式中的符号根据ASCII码转置为单字符,具体做法如下:标签符号本身在ASCII码表中存在的则不改变,根据ASCII码将所有多字符标签转化为易于标记及识别的单字符标签;
另外,每当两点之间标签变化时,便在两者之间插入一个空白单元作为标签转换标志,因此除不同符号的91个标签之外,由于加入了空白单元,使用的标签共有92个。
进一步地,步骤(3)中BLSTM模型结构及优化规则定义如下:使用BLSTM拓扑结构,神经网络模型中每个记忆模块含有一个记忆单元,隐藏层神经元在每个方向上的数目为100个,联机手写数学公式每个笔划重采样得到20个采样点,每个采样点取7个特征;对应神经网络输入层有7个神经元,输出层大小为92,其中91个基本标签及一个“空格”标签;BLSTM训练的正向与反向传播算法中,正向传播算法中输入序列在两个隐藏层中被排列成相反方向;输出层直到两个隐藏层全部将输入序列处理完毕后才会更新;反向传播算法中输出层的在整个时期以相反的方向在两个隐藏层传递反馈信息。
进一步地,步骤(3)中BLSTM模型的正向传播算法操作步骤如下:
第一步,计算向后递归的由时间1到T隐藏LSTM神经元的状态值,保存所有时间点的神经元输出at;
第二步,计算向前递归的由时间T到1隐藏LSTM神经元的状态值,保存所有时间点的神经元输出
第三步,对每个时间点的两层隐藏神经的叠加。
进一步地,BLSTM-CTC神经网络模型进行数学公式字符识别特征在于所述步骤(3)中BLSTM模型的反向传播算法操作步骤如下:
第一步,在输出层中进行反向传播,存储每一个时刻损失函数的偏导δt;
第二步,使用δt在向前递归的隐藏层中由T到1做反向传播;
第三步,使用δt在向后递归的隐藏层中由1到T做反向传播。
进一步地,所述步骤(3)中时域连接模型CTC模型结构及优化规则定义如下:
用CTC直接标记无分割序列,将BLSTM网络输出作为基于标签序列所有可能性的概率分布,通过条件限制给定的输入序列;通过给定的这个分布,目标方程可以直接获得正确标签的最大可能性;
CTC网络输出层的神经元数目比标签数量L多一个,一开始|L|个单元的激活函数为特定时间上观察到的相关标签的概率,多余单元的激活函数为观察到“空格”或无标签的概率,这些输出用输入序列定义了所有可能标签序列的校准路径概率,标签序列的所有概率值即可在不同校准路径概率求和时找到;
对于一个长度为T的输入序列x,定义一个拥有m个输入、n个输出的递归神经网络,并将其权重向量定义为连续的映射Nw:(Rm)T→(Rn)T,式中Rm,Rn分别是m维示输入和n维输出矢量,(Rm)T,(Rn)T是输入输出的转置矢量;令y=Nw(x)为网络输出序列,为单元k在时刻t的输出激活;也可看作标签k在时刻t上的概率,它通过长度为T的序列在L'T集合上定义了一个分布:
其中L'=L∪{空格},π为L'T中元素组成的路径,则πt为时刻t的π路径标签;
假设不同时间点的神经网络输出之间相互条件独立,给出网络内部状态,定义一个多对一的映射B:L'T→L≤T,L≤T为可能的标签集,然后,将所有的“空格”标签及重复标签从路径中移除,当神经网络识别标签从“空格”变到非“空格”标签或从一个标签转至另一标签时,上述方法对应输出一个新标签;最后通过B定义给定的标签l∈L≤T的条件概率为所有与之对应的路径的概率之和式中为B-1为B的逆映射;
分类器的输出应为输入序列最有可能的标签序列找到标签序列的过程称作解码过程,采用前缀搜索解码法,通过修改前向后向算法来实现,高效计算出所有前缀标签连续扩展得到的标签序列的概率;
假设现有长度为r的序列q,用q1:p和qr-p+1:r分别定义最开始及最后的p个符号,定义前向变量αt(s)为在时刻t标签序列l1:s可能性总和:
αt(s)可从αt-1(s)和αt-1(s-1)递归计算出来,式中NT为路径集合;
在输出的标签路径中允许“空格”标签存在,于是得到扩展的标签序列集合l’,在开头结尾以及每对标签中间插入,l’的长度为2|l|+1,计算l’的前缀概率使所有的标签变化都介于空格标签及非空格标签之间,允许所有的前缀都以“空格”或是序列的第一个符号l(l1)开始,
给出前向矢量αt(s)的初始化规则:其
递归方程为:
序列标签l在时刻T的概率为标签集合l’中所有不包含“空格”标签的概率总和:
p(l|x)=αT(|l'|)+αT(|l'|-1),
类似的后向矢量βt(s)则定义为在时刻t上序列ls:|l|的概率总和,其初始化及递归方程为:
初始化βt(s):递归方程为:
其中:及
上面的递归会导致计算机的向下溢出,需要对前向后向变量进行调节,定义前向变量:
定义后向变量:
为求解最大似然误差,需要将目标标签的概率取自然对数,通过调节,可以得到如下的公式:
最大似然训练的目的为同时最大化所有训练集中正确分类的对数概率,即最小化下述函数:
为通过梯度下降法训练网络,对网络的输出进行微分:
对于标签l,给定s及t时,前向后向矢量的目标为对应于标签序列l在t时刻通过s标签时所有路径的概率总和:
重写得到:
得到所有标签s及时刻t的概率总和:
网络输出的标签相互之间条件独立,通过在时刻t得到经过标签k的所有路径,得到p(l|x)关于的偏导,如公式所示,在单独的标签序列l中,相同的标签有可能重复几次,定义标签k出现的位置集合为lab(l,k)={s:ls'=k},也有可能为空;
最终,通过softmax层反向传播梯度,
进一步得到:
式中
所述步骤(1)是联机手写数学公式预处理切分与特征提取,目的是完成笔迹归一化,重采样及时间序列上的特征提取步骤。用样本平滑处理消除大部分噪声。重采样将每一笔划限制在同样数目的采样点上,消除由于输入快慢造成采样点间距及数目的不同,避免由于被采集者书写太快或太慢造成的采样点冗余或不足的问题。归一化处理消除数学公式尺寸不同对识别带来的影响,字符预处理切分对手写数学公式简单均匀切片。
本发明中每个笔划的重采样点数目为20个,这些拥有独立符号标记的点构成整个联机手写数学公式的序列。重采样之后进行数学公式的整体归一化处理,即对整条公式做大致范围内的归一化处理。通过对训练样本数据的统计,发现公式的长度和笔划数目正相关,因此本发明使用笔划数目简单估计数学公式宽度。经过重采样与粗略归一化后,需要对数据进行特征提取。本发明在时序空间上对每个时间点上的重采样点提取了如7维特征:采样点x轴坐标,采样点y轴坐标,书写方向(cosθ,sinθ),笔迹曲率(cosα,sinα),以及是否为笔迹起落点。每个笔划的开始点和结尾点的书写方向与曲率和相邻点一致。书写方向由当前采样点前后点连线与x轴正方向的夹角求得,笔迹曲率信息由当前采样点前后两点的书写方向的夹角求得。
所述步骤(2)是标签置换,其目的是对多部件特殊符号进行整体标注,利用ASCII码表中的空位,将其转换为单字符表达标签,以提高多部件组合的特殊符号识别正确率。步骤(2)具体操作如下:使用整体识别方法,对多部件特殊符号进行整体标注,利用InkML(一种专门用于表达数字墨水的数据格式)文件中LaTex(一种公式描述语言)的标签,将所有数学公式中的符号根据ASCII(美国标准信息交换代码)码转置为单字符。
本发明的基本原理是:利用双向长短时记忆递归神经网络模型BLSTM和时域路连接模型CTC实现联机手写数学公式符号识别,该发明包括联机手写数学公式预处理切分与特征提取、标签置换和神经网络模块字符识别。
本发明与已有的方法相比,具有如下的优点和有益效果:
(1)、用BLSTM-CTC模型对联机手写数学公式符号进行隐性分割,简化识别过程;
(2)、根据样本笔划数目进行公式样本归一化,消除数学公式尺寸不同对识别带来的影响
(3)、采用多部件复杂符号整体识别方法,减少识别标签的不确定性;
(4)、构造ASCII码映射表,将复杂数学符号转化为单字符标签,并与LaTex公式表达对应,统一标签类型,具有很强的可操作性及可逆性。
附图说明
图1是本发明的字符识别模块神经网络训练流程图;
图2是本发明中特征提取步骤中书写方向特征示意图;
图3是本发明中特征提取步骤中笔迹曲率(cosα,sinα)特征示意图;
图4是本发明中隐性分割公式识别流程图及与显式分割方法的比较图。
具体实施方式
下面结合附图对本发明做进一步的说明,实施本发明所用的数学公式识别设备可以采用手写板书写数学公式,用计算机进行公式识别,用纯平型显示器显示用户图形界面,可采用C语言编制各类处理程序,便能较好地实施本发明。
利用数学公式的LaTex标签,将所有数学公式中的符号根据ASCII码转换为单字符,具体做法如下:
标签符号本身在ASCII码表中存在的则不改变,如“0”到“9”、“a”到“z”及“A”到“Z”等数字、字母及单字符标签符号;其他包括“\sin”、“\pi”等特殊表达式符号,则如表1所示映射到ASCII码表中。这样即可根据ASCII码将所有多字符标签转化为易于标记及识别的单字符标签。例如,真值公式符号为“To=\sqrt2H-g”可转化为“To=^2H-g”。
另外,每当两点之间标签变化时,便在两者之间插入一个空白单元作为标签转换标志,因此除不同符号的91个标签之外,由于加入了空白单元,本发明使用的标签共有92个。
表1特殊符号LaTeX表示与ASCII码的映射表
所述步骤(3)是基于神经网络模型的数学公式符号识别,用BLSTM-CTC组合模型对数学公式序列进行识别。首先,构建双向长短时记忆神经网络模型(BLSTM),对联机手写公式的序列符号进行识别,输出每个时间点的标注信息。再通过CTC连接技术,对无显式精准字符分割的公式序列进行标注,使时间序列上的采样点标签匹配到真值序列标签。
根据数学公式表达结构特征,定义BLSTM拓扑结构。每个记忆模块含有一个记忆单元,隐藏层单元数目为100。隐藏层数目为2,采用双向延伸,分别向前递归和向后递归。向前递归隐藏层的输出不与向后递归隐藏层的输入连接,而向后递归隐藏层的输出不与向前递归隐藏层的输入连接。它们是两层分别与输入层、输出层连接的独立隐藏层。输入层分别连接到隐藏层和输出层,而隐藏层输出时延后全连接到隐藏层和输出层。联机手写数学公式每个重采样点提取7维特征,对应神经网络输入层有7个神经元。输出层有92个神经元,对应91个基本标签及一个“空格”标签。
两层隐藏层没有直接相连,各层权值分开训练,但需要在训练过程中将向前和向后信息保存。BLSTM训练的正向与反向传播算法如表2所示。正向传播算法中输入序列在两个隐藏层中被排列成相反方向。输出层直到两个隐藏层全部将输入序列处理完毕后才会更新。反向传播算法中输出层在整个时期以相反的方向在两个隐藏层传递反馈信息。
BLSTM模型的正向传播算法操作步骤如下:
第一步,计算向后递归的由时间1到T隐藏LSTM神经元的状态值,保存所有时间点的神经元输出at;
第二步,计算向前递归的由时间T到1隐藏LSTM神经元的状态值,保存所有时间点的神经元输出
第三步,对每个时间点的两层隐藏神经的叠加。
BLSTM模型的反向传播算法操作步骤如下:
第一步,在输出层中进行反向传播,存储每一个时刻损失函数的偏导δt;
第二步,使用δt在向前递归的隐藏层中由T到1做反向传播;
第三步,使用δt在向后递归的隐藏层中由1到T做反向传播。
表2BLSTM正向反向传播算法表
反向传播算法:
表中t是循环变量,T是迭代次数,for表达编程语言中的for循环。
用时域连接模型CTC直接标记无分割序列,将BLSTM网络输出作为基于标签序列所有可能性的概率分布,通过条件限制给定的输入序列。通过给定的这个分布,目标方程可以直接获得正确标签的最大可能性。
CTC网络输出层的神经元数目比标签数量L多一个。一开始|L|个单元的激活函数为特定时间上观察到的相关标签的概率。多余单元的激活函数为观察到“空格”或无标签的概率。这些输出用输入序列定义了所有可能标签序列的校准路径概率。标签序列的所有概率值即可在不同校准路径概率求和时找到。
对于一个长度为T的输入序列x,定义一个拥有m个输入、n个输出的递归神经网络,并将其权重向量定义为连续的映射Nw:(Rm)T→(Rn)T。令y=Nw(x)为网络输出序列,为单元k在时刻t的输出激活。也可被看做标签k在时刻t上的概率,它通过长度为T的序列在L'T的集合上定义了一个分布:
其中L'=L∪{空格},π为L'T中元素组成的路径,则πt为时刻t的π路径标签。
假设不同时间点的神经网络输出之间相互条件独立,给出网络内部状态。定义一个多对一的映射B:L'T→L≤T,L≤T为可能的标签集。然后,将所有的“空格”标签及重复标签从路径中移除。当神经网络识别标签从“空格”变到非“空格”标签或从一个标签转至另一标签时,上述方法对应输出一个新标签。最后通过B定义给定的标签l∈L≤T的条件概率为所有与之对应的路径的概率之和式中为B-1为B的逆映射。
分类器的输出应为输入序列最有可能的标签序列找到标签序列的过程也称作解码过程,采用前缀搜索解码法,通过修改前向后向算法来实现,高效计算出所有前缀标签连续扩展得到的标签序列的概率。
假设现有长度为r的序列q,用q1:p和qr-p+1:r分别定义最开始及最后的p个符号。定义前向变量αt(s)为在时刻t标签序列l1:s可能性总和:
αt(s)可从αt-1(s)和αt-1(s-1)递归计算出来。
在输出的标签路径中可以允许“空格”标签存在,于是得到扩展的标签序列集合l’,在开头结尾以及每对标签中间插入。l’的长度为2|l|+1。计算l’的前缀概率使所有的标签变化都介于空格标签及非空格标签之间。允许所有的前缀都以“空格”或是序列的第一个符号l(l1)开始。
给出前向矢量αt(s)的初始化规则:其
递归方程为:
序列标签l在时刻T的概率为标签集合l’中所有不包含“空格”标签的概率总和:
p(l|x)=αT(|l'|)+αT(|l'|-1)
类似的后向矢量βt(s)则定义为在时刻t上序列ls:|l|的概率总和,其初始化及递归方程为:
初始化βt(s):递归方程为:
其中:及
在实际中,上面的递归会导致计算机的向下溢出,为避免这种情况,需要对前向后向变量进行调节。定义前向变量:
定义后向变量:
为求解最大似然误差,需要将目标标签的概率取自然对数。通过调节,可以得到如下的公式:
最大似然训练的目的为同时最大化所有训练集中正确分类的对数概率,即最小化下述函数:
为通过梯度下降法训练网络,对网络的输出进行微分:
对于标签l,给定s及t时,前向后向矢量的目标为对应于标签序列l在t时刻通过s标签时所有路径的概率总和:
重写得到:
则所有标签s及时刻t的概率总和:
网络输出的标签相互之间条件独立,通过在时刻t得到经过标签k的所有路径,得到p(l|x)关于的偏导,如公式所示。在单独的标签序列l中,相同的标签有可能重复几次,定义标签k出现的位置集合为lab(l,k)={s:ls'=k},也有可能为空。最终,通过softmax层反向传播梯度。
网络输出的微分为:
式中,
本实例的基于双向长短时记忆递归神经网络模型的联机手写数学公式符号识流程图如附图1所示,数学公式通过手写板书进行手写输入采样,然后经过预处理切分及特征提取,对多部件复杂符号进行标签置换,转化为单字符标签。最后利用BLSTM-CTC组合模型对输入的手写数学公式进行隐性分割和识别。
本发明中特征提取步骤中书写方向特征如附图2所示,书写方向由当前采样点前后点连线与x轴正方向的夹角求得。图中采样点的坐标位置为(x(n),y(n)),其方向角为θ(n),则方向特征用θ(n)的正弦sin和余弦cos值表示,计算如下:
式中,
Δx(n)=x(n-1)-x(n+1)
Δy(n)=y(n-1)-y(n+1)
本发明中特征提取步骤中笔迹曲率(cosα,sinα)特征如附图3所示,笔迹曲率信息可由当前采样点前后两点的书写方向的夹角求得。图中采样点的坐标位置为(x(n),y(n)),当前采样点前后两点书写方向的夹角为α(n),则曲率特征用α(n)的正弦sin和余弦cos值表示,计算如下:
cosα(n)=cosθ(n-1)×cosθ(n+1)+sinθ(n-1)×sinθ(n+1)
sinα(n)=cosθ(n-1)×sinθ(n+1)+sinθ(n-1)×cosθ(n+1)
式中,
Δx(n)=x(n-1)-x(n+1)
Δy(n)=y(n-1)-y(n+1)
本发明中公式隐性分割识别流程图及与显式分割方法的比较如附图4所示。隐性分割只对序列样本进行简单切分,将样本从左至右等量分开。本发明的联机手写数学公式,记录笔划及采样点信息。采样点通过时间顺序排列,通过时间点进行简易分割。对时间点提取7维特征,通过长短时记忆神经网络的识别输出数学公式的字符序列,进而使用时域连接分类技术(CTC)得到整个样本的精确分割。相比之下,显性分割模型识别流程需要对公式的各个符号部件进行精确分割,通过特征提取和分类器识别出每一个切片对应的字符,进而得到一串字符序列,完成识别工作。分割技术的精确度会直接影响到后续识别效果及公式重构。
Claims (6)
1.基于BLSTM的联机手写数学公式符号识别方法,其特征在于对联机手写输入的数学公式,用隐性分割模型对数学公式符号进行处理及识别,然后进行公式分析;
具体包括如下步骤:
1)联机手写数学公式预处理切分:预处理模块完成笔迹归一化,再进行重采样及时间序列上的特征提取,具体使用隐性分割模型,通过重采样得到时间序列上的简单分割,每个采样点为分割片断,不需要在预处理时对公式进行精确切分;其中时间序列上的特征提取具体操作如下:在时序空间上对每个时间点上的重采样点提取如下几个特征:采样点x轴坐标,采样点y轴坐标,书写方向(cosθ,sinθ),笔迹曲率(cosα,sinα),以及是否为笔迹起落点;每个笔划开始点和结尾点的书写方向与曲率和相邻点一致;其中θ是当前采样点前后点连线与x轴正方向的夹角,α是采样点前后两点的书写方向的夹角,sin和cos分别是正弦函数和余弦函数;
2)标签置换:使用整体识别方法,对多部件特殊符号进行整体标注,利用ASCII码表中的空位,将多部件特殊符号转换为单字符表达标签;具体操作如下:使用整体识别方法,对多部件特殊符号进行整体标注,利用一种专门用于表达数字墨水的数据格式InkML文件中LaTex(公式描述语言)标签,将所有数学公式中的符号根据ASCII码转置为单字符,具体做法如下:标签符号本身在ASCII码表中存在的则不改变,根据ASCII码将所有多字符标签转化为易于标记及识别的单字符标签;
另外,每当两点之间标签变化时,便在两者之间插入一个空白单元作为标签转换标志,因此除不同符号的91个标签之外,由于加入了空白单元,使用的标签共有92个;
3)用双向长短时记忆递归神经网络-时域连接分类器(BLSTM-CTC)组合模型进行数学公式字符识别:通过双向长短时记忆神经网络(BLSTM)实现数学公式序列字符在一维空间上的识别,并通过时域连接分类器(CTC)连接技术,对无分割公式序列进行标签,使时间序列上的采样点标签可以匹配到真值序列标签,从而将字符级别的识别结果通过时域连接模型上升到序列级别。
2.根据权利要求1所述的联机手写数学公式符号识别方法,其特征在于所述步骤(1)中笔迹归一化具体操作如下:使用笔划数目简单估计数学公式宽度,针对整条公式做大致范围内的归一化处理,克服书写公式大小不统一的问题。
3.根据权利要求1所述的联机手写数学公式符号识别方法,其特征在于所述步骤(3)中BLSTM模型结构及优化规则定义如下:使用BLSTM拓扑结构,神经网络模型中每个记忆模块含有一个记忆单元,隐藏层神经元在每个方向上的数目为100个,联机手写数学公式每个笔划重采样得到20个采样点,每个采样点取7个特征;对应神经网络输入层有7个神经元,输出层大小为92,其中91个基本标签及一个“空格”标签;BLSTM训练的正向与反向传播算法中,正向传播算法中输入序列在两个隐藏层中被排列成相反方向;输出层直到两个隐藏层全部将输入序列处理完毕后才会更新;反向传播算法中输出层的在整个时期以相反的方向在两个隐藏层传递反馈信息。
4.根据权利要求3所述的联机手写数学公式符号识别方法,其特征在于所述步骤(3)中BLSTM模型的正向传播算法操作步骤如下:
第一步,计算向后递归的由时间1到T隐藏LSTM神经元的状态值,保存所有时间点的神经元输出at;
第二步,计算向前递归的由时间T到1隐藏LSTM神经元的状态值,保存所有时间点的神经元输出
第三步,对每个时间点的两层隐藏神经的叠加。
5.根据权利要求4所述的联机手写数学公式符号识别方法,其特征在于BLSTM-CTC神经网络模型进行数学公式字符识别特征在于所述步骤(3)中BLSTM模型的反向传播算法操作步骤如下:
第一步,在输出层中进行反向传播,存储每一个时刻损失函数的偏导δt;
第二步,使用δt在向前递归的隐藏层中由T到1做反向传播;
第三步,使用δt在向后递归的隐藏层中由1到T做反向传播。
6.根据权利要求1所述的联机手写数学公式符号识别方法,其特征在于所述步骤(3)中时域连接模型CTC模型结构及优化规则定义如下:
用CTC直接标记无分割序列,将BLSTM网络输出作为基于标签序列所有可能性的概率分布,通过条件限制给定的输入序列;通过给定的这个分布,目标方程可以直接获得正确标签的最大可能性;
CTC网络输出层的神经元数目比标签数量L多一个,一开始|L|个单元的激活函数为特定时间上观察到的相关标签的概率,多余单元的激活函数为观察到“空格”或无标签的概率,这些输出用输入序列定义了所有可能标签序列的校准路径概率,标签序列的所有概率值即可在不同校准路径概率求和时找到;
对于一个长度为T的输入序列x,定义一个拥有m个输入、n个输出的递归神经网络,并将其权重向量定义为连续的映射Nw:(Rm)T→(Rn)T,式中Rm,Rn分别是m维示输入和n维输出矢量,(Rm)T,(Rn)T是输入输出的转置矢量;令y=Nw(x)为网络输出序列,为单元k在时刻t的输出激活;也可看作标签k在时刻t上的概率,它通过长度为T的序列在L'T集合上定义了一个分布:
其中L'=L∪{空格},π为L'T中元素组成的路径,则πt为时刻t的π路径标签;
假设不同时间点的神经网络输出之间相互条件独立,给出网络内部状态,定义一个多对一的映射B:L'T→L≤T,L≤T为可能的标签集,然后,将所有的“空格”标签及重复标签从路径中移除,当神经网络识别标签从“空格”变到非“空格”标签或从一个标签转至另一标签时,上述方法对应输出一个新标签;最后通过B定义给定的标签l∈L≤T的条件概率为所有与之对应的路径的概率之和式中为B-1为B的逆映射;
分类器的输出应为输入序列最有可能的标签序列找到标签序列的过程称作解码过程,采用前缀搜索解码法,通过修改前向后向算法来实现,高效计算出所有前缀标签连续扩展得到的标签序列的概率;
假设现有长度为r的序列q,用q1:p和qr-p+1:r分别定义最开始及最后的p个符号,定义前向变量αt(s)为在时刻t标签序列l1:s可能性总和:
αt(s)可从αt-1(s)和αt-1(s-1)递归计算出来,式中NT为路径集合;
在输出的标签路径中允许“空格”标签存在,于是得到扩展的标签序列集合l’,在开头结尾以及每对标签中间插入,l’的长度为2|l|+1,计算l’的前缀概率使所有的标签变化都介于空格标签及非空格标签之间,允许所有的前缀都以“空格”或是序列的第一个符号l(l1)开始,
给出前向矢量αt(s)的初始化规则:α1(s)=0,其递归方程为:
序列标签l在时刻T的概率为标签集合l’中所有不包含“空格”标签的概率总和:
p(l|x)=αT(|l'|)+αT(|l'|-1),
类似的后向矢量βt(s)则定义为在时刻t上序列ls:|l|的概率总和,其初始化及递归方程为:
初始化βt(s):βT(s)=0,递归方程为:
其中:βT(s)=0,及
上面的递归会导致计算机的向下溢出,需要对前向后向变量进行调节,定义前向变量:
定义后向变量:
为求解最大似然误差,需要将目标标签的概率取自然对数,通过调节,可以得到如下的公式:
最大似然训练的目的为同时最大化所有训练集中正确分类的对数概率,即最小化下述函数:
为通过梯度下降法训练网络,对网络的输出进行微分:
对于标签l,给定s及t时,前向后向矢量的目标为对应于标签序列l在t时刻通过s标签时所有路径的概率总和:
重写得到:
得到所有标签s及时刻t的概率总和:
网络输出的标签相互之间条件独立,通过在时刻t得到经过标签k的所有路径,得到p(l|x)关于的偏导,如公式所示,在单独的标签序列l中,相同的标签有可能重复几次,定义标签k出现的位置集合为lab(l,k)={s:ls'=k},也有可能为空;
最终,通过softmax层反向传播梯度,进一步得到:
式中
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510860618.XA CN105512692B (zh) | 2015-11-30 | 2015-11-30 | 基于blstm的联机手写数学公式符号识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510860618.XA CN105512692B (zh) | 2015-11-30 | 2015-11-30 | 基于blstm的联机手写数学公式符号识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105512692A CN105512692A (zh) | 2016-04-20 |
CN105512692B true CN105512692B (zh) | 2019-04-09 |
Family
ID=55720658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510860618.XA Expired - Fee Related CN105512692B (zh) | 2015-11-30 | 2015-11-30 | 基于blstm的联机手写数学公式符号识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105512692B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115618154A (zh) * | 2022-12-19 | 2023-01-17 | 华南理工大学 | 一种表格的标记语言标签与单元格锚框鲁棒对齐方法 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106570456B (zh) * | 2016-10-13 | 2019-08-09 | 华南理工大学 | 基于全卷积递归网络的手写汉字文本识别方法 |
CN106650686A (zh) * | 2016-12-30 | 2017-05-10 | 南开大学 | 一种基于隐马尔科夫模型的联机手写化学符号识别方法 |
CN107291690B (zh) * | 2017-05-26 | 2020-10-27 | 北京搜狗科技发展有限公司 | 标点添加方法和装置、用于标点添加的装置 |
CN107463928A (zh) * | 2017-07-28 | 2017-12-12 | 顺丰科技有限公司 | 基于ocr和双向lstm的文字序列纠错算法、系统及其设备 |
CN107729865A (zh) * | 2017-10-31 | 2018-02-23 | 中国科学技术大学 | 一种手写体数学公式离线识别方法及系统 |
CN108364036A (zh) * | 2017-12-28 | 2018-08-03 | 顺丰科技有限公司 | 一种建模方法、识别方法、装置、存储介质及设备 |
CN109977737A (zh) * | 2017-12-28 | 2019-07-05 | 新岸线(北京)科技集团有限公司 | 一种基于循环神经网络的字符识别鲁棒性方法 |
CN108509881A (zh) * | 2018-03-22 | 2018-09-07 | 五邑大学 | 一种无切分的脱机手写汉字文本识别方法 |
CN110147785B (zh) * | 2018-03-29 | 2023-01-10 | 腾讯科技(深圳)有限公司 | 图像识别方法、相关装置和设备 |
CN108806723B (zh) * | 2018-05-21 | 2021-08-17 | 深圳市沃特沃德股份有限公司 | 婴儿语音识别方法及装置 |
CN108985297A (zh) * | 2018-06-04 | 2018-12-11 | 平安科技(深圳)有限公司 | 手写模型训练、手写图像识别方法、装置、设备及介质 |
CN109034279B (zh) * | 2018-06-04 | 2023-04-25 | 平安科技(深圳)有限公司 | 手写模型训练方法、手写字识别方法、装置、设备及介质 |
CN109034280B (zh) * | 2018-06-04 | 2023-04-25 | 平安科技(深圳)有限公司 | 手写模型训练方法、手写字识别方法、装置、设备及介质 |
CN109002756A (zh) * | 2018-06-04 | 2018-12-14 | 平安科技(深圳)有限公司 | 手写汉字图像识别方法、装置、计算机设备及存储介质 |
CN109214107B (zh) * | 2018-09-26 | 2020-05-05 | 大连海事大学 | 一种船舶航行行为在线预测方法 |
CN111310525A (zh) * | 2018-12-12 | 2020-06-19 | 中财颐和科技发展(北京)有限公司 | 一种数学公式符号识别方法 |
CN109919150A (zh) * | 2019-01-23 | 2019-06-21 | 浙江理工大学 | 一种3d压印字符无分割序列识别方法及系统 |
CN111583321A (zh) * | 2019-02-19 | 2020-08-25 | 富士通株式会社 | 图像处理装置、方法及介质 |
CN110287952B (zh) * | 2019-07-01 | 2021-07-20 | 中科软科技股份有限公司 | 一种维语图片字符的识别方法及系统 |
CN110660019A (zh) * | 2019-09-29 | 2020-01-07 | 华北电力大学 | 一种基于bpl的小数据集简笔画生成方法 |
CN110929634B (zh) * | 2019-11-19 | 2023-04-18 | 广东工业大学 | 基于双向Tree-GRU的联机手写数学公式识别方法 |
CN111046751B (zh) * | 2019-11-22 | 2024-02-13 | 华中师范大学 | 公式识别方法和装置 |
CN112132050B (zh) * | 2020-09-24 | 2024-03-29 | 北京计算机技术及应用研究所 | 联机手写汉字识别算法及可视化关键笔画评估方法 |
CN113204984A (zh) * | 2020-10-10 | 2021-08-03 | 河南中医药大学 | 一种少量标注数据下的中医手写处方识别方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5644652A (en) * | 1993-11-23 | 1997-07-01 | International Business Machines Corporation | System and method for automatic handwriting recognition with a writer-independent chirographic label alphabet |
CN101329731A (zh) * | 2008-06-06 | 2008-12-24 | 南开大学 | 图像中数学公式的自动识别方法 |
US8280168B2 (en) * | 2001-10-15 | 2012-10-02 | Silverbrook Research Pty Ltd | Handwritten character recognition system |
CN104966097A (zh) * | 2015-06-12 | 2015-10-07 | 成都数联铭品科技有限公司 | 一种基于深度学习的复杂文字识别方法 |
-
2015
- 2015-11-30 CN CN201510860618.XA patent/CN105512692B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5644652A (en) * | 1993-11-23 | 1997-07-01 | International Business Machines Corporation | System and method for automatic handwriting recognition with a writer-independent chirographic label alphabet |
US8280168B2 (en) * | 2001-10-15 | 2012-10-02 | Silverbrook Research Pty Ltd | Handwritten character recognition system |
CN101329731A (zh) * | 2008-06-06 | 2008-12-24 | 南开大学 | 图像中数学公式的自动识别方法 |
CN104966097A (zh) * | 2015-06-12 | 2015-10-07 | 成都数联铭品科技有限公司 | 一种基于深度学习的复杂文字识别方法 |
Non-Patent Citations (1)
Title |
---|
基于双向长短时记忆递归神经网络的联机手写数字公式字符识别;商俊蓓;《中国优秀硕士学位论文全文数据库 信息科技辑》;20151215(第12期);I138-674 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115618154A (zh) * | 2022-12-19 | 2023-01-17 | 华南理工大学 | 一种表格的标记语言标签与单元格锚框鲁棒对齐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105512692A (zh) | 2016-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105512692B (zh) | 基于blstm的联机手写数学公式符号识别方法 | |
El Abed et al. | On-line Arabic handwriting recognition competition: ADAB database and participating systems | |
CN105893968B (zh) | 基于深度学习的文本无关的端到端的笔迹识别方法 | |
El Abed et al. | ICDAR 2009-Arabic handwriting recognition competition | |
Bin Ahmed et al. | UCOM offline dataset-an Urdu handwritten dataset generation | |
CN104834941A (zh) | 基于计算机输入下的稀疏自编码的脱机手写体识别方法 | |
Otte et al. | Local feature based online mode detection with recurrent neural networks | |
Shashikiran et al. | Comparison of HMM and SDTW for Tamil handwritten character recognition | |
CN105117740A (zh) | 字体识别方法及装置 | |
Saba et al. | Online versus offline Arabic script classification | |
Addis et al. | Printed ethiopic script recognition by using lstm networks | |
Nguyen et al. | Global context for improving recognition of online handwritten mathematical expressions | |
Khatun et al. | A systematic review on the chronological development of bangla sign language recognition systems | |
Kunwar et al. | Online handwritten Kannada word recognizer with unrestricted vocabulary | |
Balreira et al. | Handwriting synthesis from public fonts | |
CN101901348A (zh) | 一种基于归一化的手写识别方法和识别装置 | |
Gao et al. | Handwritten text recognition with convolutional prototype network and most aligned frame based CTC training | |
Naeem et al. | Impact of ligature coverage on training practical urdu ocr systems | |
Faradji et al. | Online farsi handwritten words recognition using a combination of 3 cascaded RBF neural networks | |
Alam et al. | Multi-label classification of common bengali handwritten graphemes: Dataset and challenge | |
Khan et al. | An analysis of off-line and on-line approaches in Urdu character recognition | |
Yang et al. | A study of on-line handwritten chemical expressions recognition | |
Sen et al. | An approach to stroke-based online handwritten Bangla character recognition | |
Mackowiak et al. | Semi-automatic determination of allograph duration and position in on-line handwriting words based on the expected number of strokes | |
Shamsan et al. | Off line Arabic handwritten character using neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190409 |