CN109086653A - 手写模型训练方法、手写字识别方法、装置、设备及介质 - Google Patents

手写模型训练方法、手写字识别方法、装置、设备及介质 Download PDF

Info

Publication number
CN109086653A
CN109086653A CN201810564050.0A CN201810564050A CN109086653A CN 109086653 A CN109086653 A CN 109086653A CN 201810564050 A CN201810564050 A CN 201810564050A CN 109086653 A CN109086653 A CN 109086653A
Authority
CN
China
Prior art keywords
chinese
word
identification model
text
sample
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
Application number
CN201810564050.0A
Other languages
English (en)
Other versions
CN109086653B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201810564050.0A priority Critical patent/CN109086653B/zh
Priority to PCT/CN2018/094247 priority patent/WO2019232854A1/zh
Publication of CN109086653A publication Critical patent/CN109086653A/zh
Application granted granted Critical
Publication of CN109086653B publication Critical patent/CN109086653B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/22Matching criteria, e.g. proximity measures
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

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

Abstract

本发明公开了一种手写模型训练方法、手写字识别方法、装置、设备及介质。该手写模型训练方法包括:获取规范中文字训练样本,将规范中文字训练样本按预设批次进行批分;初始化卷积神经网络;采用卷积神经网络训练批分后的规范中文字训练样本,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型;获取并采用非规范中文字训练样本,训练获取调整中文手写字识别模型;获取并采用待测试中文字样本得到出错字训练样本;基于批量梯度下降的后向传播算法,采用出错字训练样本更新中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。采用该手写模型训练方法,能够得到识别手写字识别率高的目标中文手写字识别模型。

Description

手写模型训练方法、手写字识别方法、装置、设备及介质
技术领域
本发明涉及中文字识别领域,尤其涉及一种手写模型训练方法、手写字识别方法、装置、设备及介质。
背景技术
传统手写字识别方法大多包括二值化处理、字符分割、特征提取和支持向量机等步骤进行识别,采用传统手写字识别方法在识别较为潦草的非规范字(手写中文字)时,识别的精确度不高,使得其识别效果不理想。传统手写字识别方法很大程度上只能识别规范字,对实际生活中各种各样的手写字进行识别时,准确率较低。
发明内容
本发明实施例提供一种手写模型训练方法、装置、设备及介质,以解决当前手写字识别准确率不高的问题。
一种手写模型训练方法,包括:
获取规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分;
初始化卷积神经网络;
将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型;
获取非规范中文字训练样本,并将所述非规范中文字训练样本按预设批次进行批分;
将批分后的非规范中文字训练样本输入到所述规范中文字识别模型中进行训练,采用后向传播算法更新所述规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型;
获取待测试中文字样本,采用所述调整中文手写字识别模型识别所述待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本;
将所述出错字训练样本输入到所述调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
一种手写模型训练装置,包括:
规范中文字训练样本获取模块,用于获取规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分;
初始化模块,用于初始化卷积神经网络;
规范中文字识别模型获取模块,用于将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型;
非规范中文字训练样本获取模块,用于获取非规范中文字训练样本,并将所述非规范中文字训练样本按预设批次进行批分;
调整中文手写字识别模型获取模块,用于将批分后的非规范中文字训练样本输入到所述规范中文字识别模型中进行训练,采用后向传播算法更新所述规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型;
出错字训练样本获取模块,用于获取待测试中文字样本,采用所述调整中文手写字识别模型识别所述待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本;
目标中文手写字识别模型获取模块,用于将所述出错字训练样本输入到所述调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
本发明实施例还提供一种手写字识别方法、装置、设备及介质,以解决当前手写字识别准确率不高的问题。
一种手写字识别方法,包括:
获取待识别中文字,采用目标中文手写字识别模型识别所述待识别中文字,获取所述待识别中文字在所述目标中文手写字识别模型中的输出值;所述目标中文手写字识别模型是采用所述手写模型训练方法获取到的;
根据所述输出值和预设的中文语义词库获取目标概率输出值,基于所述目标概率输出值获取所述待识别中文字的识别结果。
本发明实施例提供一种手写字识别装置,包括:
输出值获取模块,用于获取待识别中文字,采用目标中文手写字识别模型识别所述待识别中文字,获取所述待识别中文字在所述目标中文手写字识别模型中的输出值;所述目标中文手写字识别模型是采用所述手写模型训练方法获取到的;
识别结果获取模块,用于根据所述输出值和预设的中文语义词库获取目标概率输出值,基于所述目标概率输出值获取所述待识别中文字的识别结果。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述手写模型训练方法的步骤。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述手写字识别方法的步骤。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述手写模型训练方法的步骤。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述手写字识别方法的步骤。
本发明实施例所提供的手写模型训练方法、装置、设备及介质中,获取规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分,并初始化卷积神经网络。采用批分后的规范中文字训练样本训练并获取规范中文字识别模型,该规范中文字识别模型具备识别规范中文手写字能力。然后通过批分后的非规范中文字训练样本对规范中文字识别模型进行调整性的更新,使得更新后获取的调整中文手写字识别模型在具备识别标准规范字能力的前提下,通过训练更新的方式学习手写中文字的深层特征,让调整中文手写字识别模型能够较好地识别手写中文字。接着采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不相符的出错字,并将所有出错字作为出错字训练样本输入到调整中文手写字识别模型中进行训练更新,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。采用出错字训练样本能够进一步优化识别准确率,可以进一步地降低训练模型时产生的过分学习和过度削弱的影响。规范中文字识别模型和调整中文手写字识别模型在训练时采用的是基于小批量梯度(以训练规范中文字识别模型为例,即:将规范中文字训练样本按预设批次进行批分,并采用批分后的规范中文字训练样本训练规范中文字识别模型)的后向传播算法,在训练样本数量多的情况下有较好的训练效率和训练效果,并且还能保证误差相对于单个训练样本来说在一定范围内具有全局特征,更容易找到误差函数的极小值。目标中文手写字识别模型在训练时采用的是基于批量梯度下降的后向传播算法,能够保证对模型中参数的充分更新,全面地根据产生的误差进行参数更新,提高所获取的模型的识别准确率。
本发明实施例所提供的手写字识别方法、装置、设备及介质中,将待识别中文字输入到目标中文手写字识别模型中进行识别,并结合预设的中文语义词库获取识别结果。采用该目标中文手写字识别模型对中文手写字进行识别时,可以得到精确的识别结果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中手写模型训练方法的一应用环境图;
图2是本发明一实施例中手写模型训练方法的一流程图;
图3是图2中步骤S10的一具体流程图;
图4是图2中步骤S30的一具体流程图;
图5是图2中步骤S60的一具体流程图;
图6是本发明一实施例中手写模型训练装置的一示意图;
图7是本发明一实施例中手写字识别方法的一流程图;
图8是本发明一实施例中手写字识别装置的一示意图;
图9是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出本发明实施例提供的手写模型训练方法的应用环境。该手写模型训练方法的应用环境包括服务端和客户端,其中,服务端和客户端之间通过网络进行连接,客户端是可与用户进行人机交互的设备,包括但不限于电脑、智能手机和平板等设备,服务端具体可以用独立的服务器或者多个服务器组成的服务器集群实现。本发明实施例提供的手写模型训练方法应用于服务端。
如图2所示,图2示出本发明实施例中手写模型训练方法的一流程图,该手写模型训练方法包括如下步骤:
S10:获取规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分。
其中,规范中文字训练样本是指根据标准规范字(如属于楷体、宋体或隶书等字体的字,一般字体选择楷体或者宋体)所获取的训练样本。
本实施例中,获取规范中文字训练样本,并按预设批次将规范中文字训练样本进行批分,如将规范中文字训练样本按预设的5批次进行批分,得到5批用于训练的规范中文字训练样本的子样本。该规范中文字训练样本是由属于楷体、宋体或隶书等中文字体的标准规范字获取而来,本实施例中以宋体为例进行说明。可以理解地,这里的标准规范字是指属于目前中文字体中主流字体的字,如计算机设备的输入法中的默认字体宋体的字,常用于临摹的主流字体楷体的字等;而像日常生活中比较少使用的中文字体的字如草书的字、幼圆的字,则不列入该标准规范字的范围。
S20:初始化卷积神经网络。
在一实施例中,初始化卷积神经网络,包括:令卷积神经网络初始化的权值满足公式其中,nl表示在第l层输入的训练样本的样本个数,S()表示方差运算,Wl表示第l层的权值,表示任意,l表示卷积神经网络中的第l层。
其中,卷积神经网络(Convolutional Neural Network,简称CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,能够进行图像处理和识别。卷积神经网络与一般的深度神经网络(Deep Neural Networks,简称DNN)的主要区别在于卷积神经网络包括卷积层和池化层,这为卷积神经网络能够对带有文字的图像进行处理和识别提供重要的技术支持。
卷积神经网络中包括各层之间各个神经元连接的权值和偏置,这些权值和偏置决定卷积神经网络的识别效果。
本实施例中,初始化卷积神经网络,该初始化操作即设置卷积神经网络中权值和偏置的初始值。具体地,设Cl的卷积神经网络中第l层的卷积,由卷积神经网络的性质可知Cl=Wlxl+bl,其中,Wl表示第l层的权值,xl表示第l层输入的用于初始化的训练样本,bl表示第l层的偏置。则Cl的方差可求得为S(Cl)=nlS(Wlxl),其中,S()表示方差运算,nl表示在第l层输入的训练样本的样本个数。在卷积神经网络进行训练时,权值的均值过大可能导致梯度过大,而无法有效找到误差函数的极小值,因此此处将权值W设为满足均值0的情况,则上述Cl的方差表达式可进一步写为S(Cl)=nlS(Wl)E((xl)2),其中,E()表示数学期望运算。
特别地,卷积神经网络中卷积层采用的激活函数为ReLU(Rectified LinearUnit,中文名称为线性整流函数),又称修正线性单元,是一种人工神经网络中常用的激活函数,通常指代以斜坡函数及其变种为代表的非线性函数。由激活函数ReLU能够得到xl=ReLU(Cl-1)和将这两个式子代入到上述Cl的方差表达式S(Cl)=nlS(Wl)E((xl)2),得到在卷积神经网络训练时应尽量保持方差一致,才不会导致方差在训练过程中变得越来越大或越来越小,导致梯度收敛得过快或过慢,从而出现无法有效找到误差函数的极小值或训练的速度过慢的问题。因此,为了使方差保持一致,由上式可知,权值应满足 表示任意,则根据该式可以相应地设置卷积神经网络的权值。偏置在初始设置时可以设置为较小的值,如设置在区间[-0.3,0.3]之间。
合理地初始化卷积神经网络可以使网络在初期有较灵活的调整能力,可以在训练过程中对网络进行有效的调整,能够快速有效地找到误差函数的极小值,有利于卷积神经网络的更新和调整,使得基于卷积神经网络进行模型训练获取的模型在进行中文手写字识别时具备精确的识别效果。
S30:将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型。
其中,将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置的过程采用的是小批量梯度下降的方法。小批量梯度下降(Mini-batch Gradient Descent,简称MBGD)是在更新网络参数时,将训练过程中产生的误差按预设批次批分累加,得到若干批次对应的累加误差,并采用该若干批次对应的累加误差进行参数更新的处理方法。后向传播算法(Back Propagation,简称BP算法)是神经网络学习中一种训练与学习方法,用来调整神经网络中各个节点之间的权值和偏置。采用后向传播算法对神经网络中的权值和偏置进行调整时需要求出误差函数的极小值,而在本实施例中,误差函数的极小值具体采用小批量梯度下降的方法求出。
本实施例中,将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法(小批量梯度)更新卷积神经网络的权值和偏置,获取规范中文字识别模型。该规范中文字识别模型在训练过程中学习了规范中文字训练样本的深层特征,使得该模型能够对标准规范字进行精确的识别,具备对标准规范字的识别能力。需要说明的是,无论规范中文字训练样本采用的是楷体、宋体或隶书等其他中文字体对应的标准规范字,由于这些标准规范字在字体识别的层面上差别并不大,因此该规范中文字识别模型可以对楷体、宋体或隶书等字体对应的标准规范字进行精确的识别,得到较准确的识别结果。
S40:获取非规范中文字训练样本,并将非规范中文字训练样本按预设批次进行批分。
其中,非规范中文字训练样本是指根据手写中文字所获取的训练样本,该手写中文字具体可以是按照楷体、宋体或隶书等字体对应的标准规范字的字体形态通过手写方式得到的字。可以理解地,该非规范中文字训练样本与规范中文字训练样本的区别在于非规范中文字训练样本是由手写中文字所获取的,既然是手写的,当然就包含各种各样不同的字体形态。
本实施例中,服务端获取非规范中文字训练样本,该非规范中文字训练样本包含有手写中文字的特征。获取非规范中文字训练样本之后,按预设批次将非规范中文字训练样本进行批分,如将非规范中文字训练样本按预设的5批次进行批分,得到5批用于训练的非规范中文字训练样本的子样本。
S50:将批分后的非规范中文字训练样本输入到规范中文字识别模型中进行训练,采用后向传播算法更新规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型。
本实施例中,将批分后的非规范中文字训练样本输入到规范中文字识别模型中进行训练并调整,采用后向传播算法更新规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型。可以理解地,规范中文字识别模型具备识别标准规范中文字的能力,但是在对手写中文字进行识别时并没有较高的识别精确度。因此本实施例采用批分后的非规范中文字训练样本进行训练,让规范中文手写字识别模型在已有识别标准规范字的基础上,对模型中的参数(权值和偏置)进行调整,获取调整中文手写字识别模型。该调整中文手写字识别模型在原本识别标准规范字的基础上学习手写中文字的深层特征,使得该调整中文手写字识别模型结合了标准规范字和手写中文字的深层特征,能够同时对标准规范字和手写中文字进行有效的识别,得到准确率较高的识别结果。
卷积神经网络在进行字识别时,是根据字的像素分布进行判断的,在实际生活中的手写中文字与标准规范存在差别,但是这种差别相比与其他不对应标准规范字的差别小很多的,例如,手写中文字的“我”和标准规范字的“我”在像素分布上存在差别,但是这种差别相比于手写中文字“你”和标准规范字“我”之间的差别明显小很多。可以这样认为,即使手写中文字与相对应的标准规范字之间存在一定的差别,但是这种差别与不相对应的标准规范字的差别小得多,因此,可以通过最相似(即差别最小)的原则确定识别结果。调整中文手写字识别模型是由卷积神经网络训练而来的,该模型结合标准规范字和手写中文字的深层特征,能够根据该深层特征对手写中文字进行有效的识别。
对于步骤S30和S50,采用后向传播算法(小批量梯度)进行误差反传更新可以提高网络训练的效率和效果,并且还能保证误差相对于单个训练样本来说在一定范围内具有全局特征,更容易找到误差函数的极小值,以更有效地训练网络。
需要说明的是,本实施例的步骤S30和步骤S40-S50的顺序是不可调换的,先执行步骤S30再执行步骤S40-S50。先采用规范中文训练样本训练卷积神经网络可以使获取的规范中文字识别模型拥有较好的识别能力,使其对标准规范字有精确的识别结果。在拥有良好的识别能力的基础上再进行步骤S40-S50的微调,使得训练获取的调整中文手写字识别模型能够根据学习到的手写中文字的深层特征对手写中文字进行有效的识别,使其对手写中文字识别有较精确的识别结果。若先执行步骤S40-S50或只执行步骤S40-S50,由于手写中文字有各种各样的形态,直接采用手写中文字训练学习到的特征并不能较好地反映手写中文字的特征,会使一开始模型就学“坏”,导致后来再怎么进行调整也难以使得对手写中文字识别有精确的识别结果。虽然每个人的手写中文字都不一样,但是极大部分都是与标准规范字相似(如手写中文字模仿标准规范字)。因此,一开始根据标准规范字进行模型训练更符合客观情况,要比直接对手写中文字进行模型训练的效果更好,可以在“好”的模型下进行相应的调整,获取手写中文字识别率高的调整中文手写字识别模型。
S60:获取待测试中文字样本,采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有出错字作为出错字训练样本。
其中,待测试中文字样本是指根据标准规范字和手写中文字所获取的用于测试的训练样本,该步骤采用的标准规范字和步骤S30中用于训练的标准规范字是相同的(因为如楷体、宋体等字体所对应的每个字都是唯一确定的);采用的手写中文字与和步骤S40-S50中用于训练的手写中文字可以是不同的(不同人手写的中文字是不完全相同的,手写中文字的每个字可以对应多种字体形态,为了与步骤S40-S50用于训练的非规范中文字训练样本区分开来,避免模型训练过拟合的情况,一般该步骤采用与步骤S40-S50不同的手写中文字)。
本实施例中,将训练好的调整中文手写字识别模型用来识别待测试中文字样本,该待测试中文字样本包括标准规范字和其预先设置好的标签值(即真实结果),以及手写中文字和其预先设置好的标签值。训练时标准规范字和手写中文字可以是采用混合的方式输入到调整中文手写字识别模型。在采用调整中文手写字识别模型对待测试中文字样本进行识别时,将获取到相应的识别结果,把识别结果与标签值(真实结果)不相符的所有出错字作为出错字训练样本。该出错字训练样本反映调整中文字手写识别模型仍然存在识别精度不足的问题,以便后续根据该出错字训练样本进一步更新、优化调整中文手写字识别模型。
由于调整中文手写字识别模型的识别精度实际上受到规范中文字训练样本和非规范中文字训练样本的共同影响,在先采用规范中文字训练样本更新网络参数(权值和偏置),再采用非规范中文字训练样本更新网络参数(权值和偏置)的前提下,会导致获取到的调整中文手写字识别模型过度学习非规范中文字训练样本的特征,使得获取的调整中文手写字识别模型对非规范中文字训练样本(包括手写中文字)拥有非常高的识别精度,但却过度学习该非规范中文字样本的特征,影响除该非规范中文字训练样本以外的手写中文字的识别精度,因此,步骤S60采用待测试中文字样本对调整中文手写字识别模型进行识别,能够很大程度上消除训练时采用的非规范中文字训练样本的过度学习。即通过调整中文手写字识别模型识别待测试中文字样本,以找出由于过度学习而产生的误差,该误差具体可以通过出错字反映出来,因此能够根据该出错字进一步地更新、优化调整中文手写字识别模型的网络参数。
S70:将出错字训练样本输入到调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
本实施例中,将出错字训练样本输入到调整中文手写字识别模型中进行训练,该出错字训练样本反映了在训练调整中文手写字识别模型时,由于过度学习非规范中文字训练样本的特征,导致调整中文手写字识别模型在识别非规范中文字训练样本以外的手写中文字时出现的识别不精确的问题。并且,由于先采用规范中文字训练样本再采用非规范中文字训练样本训练模型的原因,会过度削弱原先学习的标准规范字的特征,这会影响模型初始搭建的对标准规范字进行识别的“框架”。利用出错字训练样本可以很好地解决过度学习和过度削弱的问题,可以根据出错字训练样本反映的识别精确度上的问题,在很大程度上消除原本训练过程中产生的过度学习和过度削弱带来的不利影响。具体地,采用出错字训练样本进行训练时采用的是基于批量梯度下降的后向传播算法,根据该算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型,该目标中文手写字识别模型是指最终训练出来的可用于识别中文手写字的模型。在更新网络参数时,出错字训练样本的样本容量较少(出错字较少),采用基于批量梯度下降的后向传播算法能够将所有出错字训练样本在卷积神经网络训练时产生的误差都进行反传更新,保证产生的所有误差都能对网络进行调整和更新,能够全面地训练卷积神经网络,提高目标中文手写字识别模型的识别准确率。
需要说明的是,本实施例中,步骤S30和S50采用的是基于小批量梯度的后向传播算法;步骤S70采用的是基于批量梯度下降的后向传播算法。
步骤S30中,采用后向传播算法(基于小批量梯度)更新卷积神经网络的权值和偏置的过程具体包括如下步骤:
获取规范中文字训练样本中每一训练样本(每一个字)对应的二值化像素值特征矩阵,把所有二值化像素值特征矩阵按预设批次分成若干批二值化像素值特征矩阵,然后将若干批二值化像素值特征矩阵输入到卷积神经网络中,得到每一二值化像素值特征矩阵对应的前向输出,按预设批次分别累加误差,得到各个批次对应的累加误差,采用各个批次对应的累加误差进行基于梯度下降的反向传播,更新卷积神经网络的网络参数。重复上述计算对应批次的累加误差和采用对应批次的累加误差更新网络参数的过程,直到误差小于停止迭代阈值ε1时,结束该循环,得到更新好的网络参数,即得到规范中文字识别模型。
步骤S50采用基于小批量梯度的后向传播算法更新卷积神经网络的权值和偏置的过程与步骤S30的过程相似,在此不再赘述。
步骤S70中,采用基于批量梯度下降的后向传播算法更新卷积神经网络的权值和偏置的过程具体包括如下步骤:
获取出错字训练样本中的一个训练样本对应的二值化像素值特征矩阵,把该二值化像素值特征矩阵输入到调整中文手写字识别模型(本质上还是一个卷积神经网络)中得到前向输出,计算该前向输出与真实结果之间的误差,获取并依次输入剩余的训练样本对应的二值化像素值特征矩阵到调整中文手写字识别模型中,计算相应的前向输出与真实结果之间误差,并累加误差得到调整中文手写字识别模型对于出错字训练样本的总误差,采用总误差进行基于梯度下降的反向传播,更新网络的权值和偏置,重复上述计算总误差和采用总误差更新网络的权值和偏置的过程,直到误差小于停止迭代阈值ε2时,结束该循环,得到更新好的权值和偏置,即得到目标中文手写字识别模型。
可以理解地,对于步骤S30和S50,由于进行模型训练所采用的训练样本的数量较为庞大,若采用基于批量梯度下降的后向传播算法将影响网络训练的效率和效果,甚至无法正常进行模型训练,难以有效地进行训练。采用基于小批量梯度的后向传播算法进行误差反传更新可以提高网络训练的效率和效果,并且还能保证误差相对于单个训练样本来说在一定范围内具有全局特征,更容易找到误差函数的极小值,以更有效地训练网络。
对于步骤S70,出错字训练样本的样本容量较少(出错字较少),采用基于批量梯度下降的后向传播算法能够将所有出错字训练样本在卷积神经网络训练时产生的误差都进行反传更新,保证产生的所有误差都能对网络进行调整和更新,能够全面地训练卷积神经网络。基于批量梯度下降的后向传播算法相比较于基于小批量梯度的后向传播算法,前者的梯度是标准的,能够全面地训练卷积神经网络;而后者每次从预设批次的累加误差中抽取一个批次对应的累加误差来更新网络的参数,尽管在一定范围内具有全局特征,但在训练的准确性上仍不如前者。采用基于批量梯度下降的后向传播算法能够提高模型训练的准确性,使得训练获取的目标中文手写字识别模型拥有精确的识别能力。
步骤S10-S70中,采用批分后的规范中文字训练样本训练并获取规范中文字识别模型,再通过批分后的非规范中文字对规范中文字识别模型进行调整性的更新,使得更新后获取的调整中文手写字识别模型在具备识别标准规范字能力的前提下,通过训练更新的方式学习手写中文字的深层特征,使得调整中文手写字识别模型能够较好地识别手写中文字。然后采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不相符的出错字,并将所有出错字作为出错字训练样本输入到调整中文手写字识别模型中进行训练更新,获取目标中文手写字识别模型。采用出错字训练样本可以在很大程度上消除原本训练过程中产生的过度学习和过度削弱带来的不利影响,能够进一步优化识别准确率。训练规范中文字识别模型和调整中文手写字识别模型采用了基于小批量梯度的后向传播算法,能够在训练样本数量多的情况下仍然有较好的训练效率和训练效果,并且还能保证误差相对于单个训练样本来说在一定范围内具有全局特征,更容易找到误差函数的极小值。训练目标中文手写字识别模型采用了基于批量梯度下降的后向传播算法,采用批量梯度下降能够保证对模型中参数的充分更新,对训练样本在训练过程中产生的误差都进行反向传播更新,全面地根据产生的误差进行参数更新,提高所获取的模型的识别准确率。
在一实施例中,如图3所示,步骤S10中,获取规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分,具体包括如下步骤:
S11:获取待处理中文字训练样本中每个中文字的像素值特征矩阵,将像素值特征矩阵中每个像素值进行归一化处理,获取每个中文字的归一化像素值特征矩阵,其中,归一化处理的公式为MaxValue为每个中文字的像素值特征矩阵中像素值的最大值,MinValue为每个中文字的像素值特征矩阵中像素值的最小值,x为归一化前的像素值,y为归一化后的像素值。
其中,待处理中文字训练样本是指初始获取的,未经处理的训练样本。
本实施例中,获取待处理中文字训练样本中每个中文字的像素值特征矩阵,每个中文字的像素值特征矩阵代表着对应字的特征,在这里用像素值代表字的特征,由于字是基于二维表示的(一般一个字用一张m×n的图像表示),故像素值可以采用矩阵表示,即形成像素值特征矩阵。计算机设备能够识别像素值特征矩阵的形式,读取像素值特征矩阵中的数值。服务端获取像素值特征矩阵后,采用归一化处理的公式对特征矩阵中的每个中文字的像素值进行归一化处理,获取每个中文字的归一化像素值特征。本实施例中,采用归一化处理方式能够将每个中文字的像素值特征矩阵都压缩在同一个范围区间内,能够加快与该像素值特征矩阵相关的计算,有助于提高训练规范中文字识别模型的训练效率。
S12:将每个中文字的归一化像素值特征矩阵中的像素值划分为两类像素值,基于两类像素值建立每个中文字的二值化像素值特征矩阵,将每个中文字的二值化像素特征矩阵组合作为规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分。
本实施例中,将每个中文字的归一化像素值特征矩阵中的像素值划分为两类像素值,该两类像素值是指像素值中只包含像素值A或者像素值B。具体地,可以将归一化像素特征矩阵中大于或等于0.5的像素值取为1,将小于0.5的像素值取为0,建立相应的每个中文字的二值化像素值特征矩阵,每个中文字的二值化像素特征矩阵中的原始只包含0或1。在建立每个中文字的二值化像素值特征矩阵后,将二值化像素值特征矩阵对应的中文字组合作为规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分。在一张包含字的图像中,包含字像素的部分和空白像素的部分。字上的像素值一般颜色会比较深,二值化像素值特征矩阵中的“1”代表字像素的部分,而“0”则代表图像中空白像素的部分。可以理解地,通过建立二值化像素值特征矩阵可以进一步简化对字的特征表示,仅采用0和1的矩阵就可以将每个中文字表示并区别开来,能够提高计算机处理关于中文字的特征矩阵的速度,进一步提高训练规范中文字识别模型的训练效率。
步骤S11-S12对待处理中文字训练样本进行归一化处理并进行二类值的划分,获取每个中文字的二值化像素值特征矩阵,并将每个中文字的二值化像素特征矩阵对应的字作为规范中文字训练样本,能够显著缩短训练规范中文字识别模型的时长。
在一实施例中,如图4所示,步骤S30中,将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型,具体包括如下步骤:
S31:将批分后的规范中文字训练样本输入到卷积神经网络中,获取批分后的规范中文字训练样本在卷积神经网络中的前向输出。
其中,卷积神经网络是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,能够进行图像处理和识别。卷积神经网络通常包括至少两个非线性可训练的卷积层,至少两个非线性的池化层和至少一个全连接层,即包括至少五个隐含层,此外还包括输入层和输出层。
本实施例中,将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,批分后的规范中文字训练样本在卷积神经网络经过各层处理后(具体为权值和偏置对规范中文字训练样本的响应处理),会在卷积神经网络的每一层都得到处理后相应的输出值。由于卷积神经网络包含的层数较多,且各层的功能不同,因此各层的输出是不同的。
具体地,若第l层是卷积层,则卷积层的输出可以表示为al=σ(zl)=σ(al-1*Wl+bl),其中,al表示第l层的输出,zl表示未采用激活函数处理前的输出,al-1表示l-1层的输出(即上一层的输出),σ表示激活函数(对于卷积层采用的激活函数σ为ReLU,相比其他激活函数的效果会更好),*表示卷积运算,Wl表示第l层的权值,bl表示第l层的偏置。若第l层是池化层,则池化层的输出可以表示为al=pool(al-1),其中pool是指下采样计算,该下采样计算可以选择最大池化的方法,最大池化实际上就是在n*n的样本中取最大值,作为采样后的样本值。除了最大池化之外,常用的还有平均池化,即取在n*n的样本中取各样本的平均值作为采样后的样本值。若第l层是全连接层,则计算该全连接层的输出与传统深度神经网络计算输出的方式相同,用公式表示为al=σ(zl)=σ(Wlal-1+bl),参数的含义与上述提及的解释相同,在此不再进行赘述。特别地,对于输出层L,激活函数σ采用的是softmax函数,计算输出层L输出的公式为aL=softmax(zl)=softmax(WLaL-1+bL)。根据上述卷积神经网络每一层的计算公式,可以求出卷积神经网络中每一层的输出,并最终得到输出层的输出aL,该输出即前向输出。可以理解地,步骤S111中得到的前向输出,能够反映规范中文字训练样本在卷积神经网络中的输出情况,可以根据该输出情况与客观事实(真实结果)进行比较,以根据两者之间的误差对卷积神经网络进行调整。
S32:根据前向输出和真实结果构建误差函数,误差函数的表达式为其中,n表示训练样本总数,xi表示第i个训练样本的前向输出,yi表示与xi相对应的第i个训练样本的真实结果。
其中,真实结果即客观事实,例如输入的字为楷体的“太”,则前向输出的结果可能是“大”等其他结果,而真实结果就是原本输入的“太”,可以将真实结果理解为训练样本的标签值,用于计算与前向输出的误差。
本实施例中,由于卷积神经网络对规范中文字训练样本进行处理后得到的前向输出与真实结果是存在误差的,那么可以根据该误差构建对应的误差函数,以便利用该误差函数训练卷积神经网络,更新权值和偏置,以使更新后的权值和偏置在处理输入的训练样本是能够得到与真实结果相同或更相似的前向输出。具体地,可以根据实际情况构建合适的误差函数,本实施例构建的误差函数为能够较好地反映前向输出和真实结果之间的误差。
S33:根据误差函数,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型,其中,在卷积神经网络的全连接层,更新权值的公式为在卷积神经网络的卷积层,更新权值的公式为Wl'表示更新后的权值,Wl表示更新前的权值,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,ai,l-1表示输入的第i个中文字样本在第l-1层的输出,T表示矩阵转置运算,*表示卷积运算,rot180表示将矩阵翻转180度的运算;在卷积神经网络的全连接层,更新偏置的公式为在卷积神经网络的卷积层,更新偏置的公式为bl'表示更新后的偏置,bl表示更新前的偏置,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,(u,v)是指进行卷积运算时获取的卷积特征图中每一个卷积特征图中的小块位置。
本实施例中,在构建合适的误差函数后,采用后向传播算法(基于小批量梯度)更新网络参数,并将更新后的卷积神经网络作为规范中文字识别模型。具体地,在后向传播过程中由于卷积神经网络各层有较大差异,因此应根据每一层的实际情况进行后向传播,对网络参数进行更新。在反向传播过程中,首先对更新后输出层的权值和偏置进行计算,采用误差函数分别对权值W和偏置b进行求偏导的运算,能够得到公共的因子,即输出层的灵敏度δL(L表示输出层),由该灵敏度δL能够依次求出第l层的灵敏度δl,根据δl求得神经网络中第l层的梯度,再利用梯度更新卷积神经网络的权值和偏置。具体地,若当前为全连接层,则其中,Wl+1表示l+1层的权值,T表示矩阵转置运算,δl+1表示l+1层的灵敏度,表示两个矩阵对应元素相乘的运算(Hadamard积),σ表示激活函数,zl表示在计算前向传播过程中未采用激活函数处理前的输出。若当前为卷积层,则其中,*表示卷积运算,rot180表示将矩阵翻转180度的运算,公式中其余参数的含义参见上文度参数含义进行解释的内容,在此不再赘述。若当前为池化层,则upsample表示上采样运算。根据上述卷积神经网络各个层求相应的灵敏度δl,根据灵敏度δl更新层l的权值和偏置。池化层没有权值和偏置,因此只需要更新全连接层和卷积层的权值和偏置即可。
具体地,步骤S33中,若当前是全连接层,则更新权值的公式表示为其中,Wl'表示更新后的权值,Wl表示更新前的权值,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,ai ,l-1表示输入的第i个中文字样本在第l-1层的输出,T表示矩阵转置运算,即l层权值W的梯度;更新偏置的公式表示为bl'表示更新后的偏置,bl表示更新前的偏置α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度。若当前是卷积层,则更新权值的公式为更新偏置的公式为其中,(u,v)是指进行卷积运算时获取的卷积特征图中每一个卷积特征图中的小块(组成卷积特征图的元素)位置。通过采用小批量梯度下降的后向传播算法,对卷积神经网络中各层的权值和偏置进行相应的更新获取规范中文字识别模型。
步骤S31-S33能够根据规范中文字训练样本在卷积神经网络得到的前向输出构建误差函数并根据该误差函数反传更新权值和偏置,能够获取规范中文字识别模型,该模型学习了规范中文字训练样本的深层特征,能够精确地识别标准规范字。
在一实施例中,如图5所示,步骤S60中,采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有出错字作为出错字训练样本,具体包括如下步骤:
S61:将待测试中文字样本输入到调整中文手写字识别模型,获取待测试中文字样本中每一个字在调整中文手写字识别模型中的输出值。
本实施例中,采用调整中文手写字识别模型对待测试中文字样本进行识别,待测试中文字样本中包含若干中文字。在中文字库中,常用的中文字大概有三千多个,在调整中文手写字识别模型的输出层应设置中文字库中每一个字与输入的待测试中文字样本相似程度的概率值,该概率值为待测试中文字样本中每一个字在调整中文手写字识别模型中的输出值,具体可以是通过softmax函数实现。简单地说,当输入“我”字时,在调整中文手写字识别模型中将会获取其与中文字库中每一个字对应的输出值(用概率表示),如与中文字库中“我”对应的输出值为99.5%,其余字的输出值加起来为0.5%。通过设置待测试中文字样本,在经过调整中文手写字识别模型识别后的与中文字库中每一个字对应的输出值,可以根据该输出值得到合理的识别结果。
S62:选取每一个字对应的输出值中的最大输出值,根据最大输出值获取每一个字的识别结果。
本实施例中,选择每一个字对应的所有输出值中的最大输出值,根据该最大输出值即可获取该字的识别结果。可以理解地,输出值直接反映了输入的待测试中文字样本中的字与中文字库中每一个字的相似程度,而最大输出值则表明待测试字样本最接近中文字库中的某个字,则可以根据该最大输出值对应的字即为该字的识别结果,如输入“我”字最后输出的识别结果为“我”。
S63:根据识别结果,获取识别结果与真实结果不符的出错字,把所有出错字作为出错字训练样本。
本实施例中,将得到的识别结果与真实结果(客观事实)作比较,将比较识别结果与真实结果不符的出错字作为出错字训练样本。可以理解地,该识别结果只是待测试中文字训练样本在调整中文手写字识别模型识别出来的结果,与真实结果相比有可能是不相同的,反映了该模型在识别的精确度上仍有不足,而这些不足可以通过出错字训练样本进行优化,以达到更精确的识别效果。
步骤S61-S63根据待测试中文字样本中每一个字在调整中文手写字识别模型中的输出值,从输出值中选择能够反映字间相似程度的最大输出值;再通过最大输出值得到识别结果,并根据识别结果得到出错字训练样本,为后续利用出错字训练样本进一步优化识别精确度提供了重要的技术前提。
本实施例所提供的手写模型训练方法中,获取规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分;初始化卷积神经网络,根据式初始化卷积神经网络的权值,用较小的值如区间[-0.3,0.3]初始化偏置,采用该初始化的方式能够快速有效地找到误差函数的极小值,有利于卷积神经网络的更新和调整。对待处理中文字训练样本进行归一化处理并进行二类值的划分,获取二值化像素值特征矩阵,并将特征矩阵对应的字作为规范中文字训练样本,能够显著缩短训练规范中文字识别模型的时长。根据批分后的规范中文字训练样本在卷积神经网络得到的前向输出构建误差函数并根据该误差函数反传更新权值和偏置,能够获取规范中文字识别模型,该模型学习了规范中文字训练样本的深层特征,能够精确地识别标准规范字。接着通过批分后的非规范中文字对规范中文字识别模型进行调整性的更新,使得更新后获取的调整中文手写字识别模型在具备识别规范中文手写字能力的前提下,通过训练更新的方式学习非规范中文字的深层特征,让调整中文手写字识别模型能够较好地识别非规范中文手写字。接着,根据待测试中文字样本中每一个字在调整中文手写字识别模型中的输出值,从输出值中选择能够反映字间相似程度的最大输出值,利用最大输出值得到识别结果,并根据识别结果得到出错字训练样本,并将所有出错字作为出错字训练样本输入到调整中文手写字识别模型中进行训练更新,获取目标中文手写字识别模型。采用出错字训练样本可以在很大程度上消除原本训练过程中产生的过度学习和过度削弱带来的不利影响,能够进一步优化识别准确率。此外,本实施例所提供的手写模型训练方法中,规范中文字识别模型和调整中文手写字识别模型在训练时采用的是基于小批量梯度(即把训练样本如规范中文字训练样本或者非规范中文字训练样本按预设批次进行批分,并根据批分后的训练样本进行网络更新)的后向传播算法,在训练样本数量多的情况下仍然有较好的训练效率和训练效果。目标中文手写字识别模型在训练时采用的是基于批量梯度下降的后向传播算法,能够保证对模型中参数的充分更新,对训练样本在训练过程中产生的误差都进行反向传播更新,全面地根据产生的误差进行参数更新,提高所获取的模型的识别准确率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图6示出与实施例中手写模型训练方法一一对应的手写模型训练装置的原理框图。如图6所示,该手写模型训练装置包括规范中文字训练样本获取模块10、初始化模块20、规范中文字识别模型获取模块30、非规范中文字训练样本获取模块40、调整中文手写字识别模型获取模块50、出错字训练样本获取模块60和目标中文手写字识别模型获取模块70。其中,规范中文字训练样本获取模块10、初始化模块20、规范中文字识别模型获取模块30、非规范中文字训练样本获取模块40、调整中文手写字识别模型获取模块50、出错字训练样本获取模块60和目标中文手写字识别模型获取模块70的实现功能与实施例中手写模型训练方法对应的步骤一一对应,为避免赘述,本实施例不一一详述。
规范中文字训练样本获取模块10,用于获取规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分。
初始化模块20,用于初始化卷积神经网络。
规范中文字识别模型获取模块30,用于将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型。
非规范中文字训练样本获取模块40,用于获取非规范中文字训练样本,并将非规范中文字训练样本按预设批次进行批分。
调整中文手写字识别模型获取模块50,用于将批分后的非规范中文字训练样本输入到规范中文字识别模型中进行训练,采用后向传播算法更新规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型。
出错字训练样本获取模块60,用于获取待测试中文字样本,采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有出错字作为出错字训练样本。
目标中文手写字识别模型获取模块70,用于将出错字训练样本输入到调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
优选地,规范中文字训练样本获取模块10包括归一化像素值特征矩阵获取单元11和规范中文字训练样本获取单元12。
归一化像素值特征矩阵获取单元11,用于获取待处理中文字训练样本中每个中文字的像素值特征矩阵,将像素值特征矩阵中每个像素值进行归一化处理,获取每个中文字的归一化像素值特征矩阵,其中,归一化处理的公式为MaxValue为每个中文字的像素值特征矩阵中像素值的最大值,MinValue为每个中文字的像素值特征矩阵中像素值的最小值,x为归一化前的像素值,y为归一化后的像素值。
规范中文字训练样本获取单元12,用于将每个中文字的归一化像素值特征矩阵中的像素值划分为两类像素值,基于两类像素值建立每个中文字的二值化像素值特征矩阵,将每个中文字的二值化像素特征矩阵组合作为规范中文字训练样本,并将规范中文字训练样本按预设批次进行批分。
优选地,初始化模块20,用于初始化卷积神经网络,其中,卷积神经网络初始化的权值满足公式nl表示在第l层输入的训练样本的样本个数,S()表示方差运算,Wl表示第l层的权值,表示任意,l表示卷积神经网络中的第l层。
优选地,规范中文字识别模型获取模块30包括前向输出获取单元31、误差函数构建单元32和规范中文字识别模型获取单元33。
前向输出获取单元31,用于将规范中文字训练样本输入到卷积神经网络中,获取规范中文字训练样本在卷积神经网络中的前向输出。
误差函数构建单元32,用于根据前向输出和真实结果构建误差函数,误差函数的表达式为其中,n表示训练样本总数,xi表示第i个训练样本的前向输出,yi表示与xi相对应的第i个训练样本的真实结果。
规范中文字识别模型获取单元33,用于根据误差函数,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型,其中,在卷积神经网络的全连接层,更新权值的公式为在卷积神经网络的卷积层,更新权值的公式为Wl'表示更新后的权值,Wl表示更新前的权值,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,ai,l-1表示输入的第i个中文字样本在第l-1层的输出,T表示矩阵转置运算,*表示卷积运算,rot180表示将矩阵翻转180度的运算;在卷积神经网络的全连接层,更新偏置的公式为在卷积神经网络的卷积层,更新偏置的公式为bl'表示更新后的偏置,bl表示更新前的偏置,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,(u,v)是指进行卷积运算时获取的卷积特征图中每一个卷积特征图中的小块位置。
优选地,出错字训练样本获取模块60包括模型输出值获取单元61、模型识别结果获取单元62和出错字训练样本获取单元63。
模型输出值获取单元61,用于将待测试中文字样本输入到调整中文手写字识别模型,获取待测试中文字样本中每一个字在调整中文手写字识别模型中的输出值。
模型识别结果获取单元62,用于选取每一个字对应的输出值中的最大输出值,根据最大输出值获取每一个字的识别结果。
出错字训练样本获取单元63,用于根据识别结果,获取识别结果与真实结果不符的出错字,把所有出错字作为出错字训练样本。
图7示出本实施例中手写字识别方法的一流程图。该手写字识别方法可应用在银行、投资和保险等机构配置的计算机设备,用于对手写中文字进行识别,达到人工智能目的。如图7所示,该手写字识别方法包括如下步骤:
S80:获取待识别中文字,采用目标中文手写字识别模型识别待识别中文字,获取待识别中文字在目标中文手写字识别模型中的输出值,目标中文手写字识别模型是采用上述手写模型训练方法获取到的。
其中,待识别中文字是指要进行识别的中文字。
本实施例中,获取待识别中文字将待识别中文字输入到目标中文手写字识别模型中进行识别,获取待识别中文字在目标中文手写字识别模型中的输出值,一个待识别中文字对应有三千多个(具体数量以中文字库为准)输出值,可以基于该输出值确定该待识别中文字的识别结果。具体地,待识别中文字具体是采用计算机能够直接识别的二值化像素值特征矩阵表示。
S90:根据输出值和预设的中文语义词库获取目标概率输出值,基于目标概率输出值获取待识别中文字的识别结果。
其中,预设的中文语义词库是指预先设置好的基于词频的描述中文词语间语义关系的词库。例如,在该中文语义词库中对于“X阳”这两个字的词,“太阳”出现的概率为30.5%,“大阳”出现的概率为0.5%,剩余的如“骄阳”等“X阳”的两个字的词出现的概率之和为69%。目标概率输出值是结合输出值和预设的中文语义词库,得到的用于获取待识别中文字的识别结果的概率值。
具体地,采用输出值和预设的中文语义词库获取目标概率输出值包括如下步骤:(1)选取待识别中文字中每一个字对应的输出值中最大值作为第一概率值,根据第一概率值获取待识别中文字初步的识别结果。(2)根据该初步的识别结果和中文语义词库获取待识别字的向左语义概率值和向右语义概率值。可以理解地,对于一文本,该文本中的字是有先后顺序的,如“红X阳”,则对于“X”字而言,有向左向右两个方向词语“红X”和“X阳”对应的概率值,即向左语义概率值和向右语义概率值。(3)分别设置待识别中文字中每一个字对应的输出值的权值、向左语义概率值的权值和向右语义概率值的权值。具体地,可以赋予待识别中文字中每一个字对应的输出值0.4的权值,赋予向左语义概率值0.3的权值,赋予0.3向右语义概率值的权值。(4)根据上述设置的各个权值分别乘以各自对应的概率值得到各个加权运算后的概率值,将各个加权运算后的概率值相加得到目标概率输出值(目标概率输出值有多个,具体个数可以按中文字库为准),并选取目标概率输出值中最大值对应的字作为待识别中文字的识别结果。实际上,可以先选取输出值中,数值最大的前5个概率值,该前5个概率值代表最有可能的5个字(识别结果),只对这5字结合中文语义词库算出目标概率输出值,则目标概率输出值就只有5个,可以大大提高识别的效率。通过结合输出值和预设的中文语义词库,可以得到精确的识别结果。可以理解地,对于单个字(非文本)的识别,则可以根据输出值中最大值直接得到相应的识别结果即可,而不必加入基于中文语义的识别。
步骤S80-S90,采用目标中文手写字识别模型识别待识别中文字,结合输出值和预设的中文语义词库获取待识别中文字的识别结果。采用该目标中文手写字识别模型本身拥有较高的识别精确度,再结合中文语义词库进一步提高中文手写的识别准确率。
本发明实施例所提供的手写字识别方法中,将待识别中文字输入到目标中文手写字识别模型中进行识别,并结合预设的中文语义词库获取识别结果。采用该目标中文手写字识别模型对中文手写字进行识别时,可以得到精确的识别结果。
图8示出与实施例中手写字识别方法一一对应的手写字识别装置的原理框图。如图8所示,该手写字识别装置包括输出值获取模块80和识别结果获取模块90。其中,输出值获取模块80和识别结果获取模块90的实现功能与实施例中手写字识别方法对应的步骤一一对应,为避免赘述,本实施例不一一详述。
手写字识别装置包括输出值获取模块80,用于获取待识别中文字,采用目标中文手写字识别模型识别待识别中文字,获取待识别中文字在目标中文手写字识别模型中的输出值;目标中文手写字识别模型是采用手写模型训练方法获取到的。
识别结果获取模块90,用于根据输出值和预设的中文语义词库获取目标概率输出值,基于目标概率输出值获取待识别中文字的识别结果。
本实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现实施例中手写模型训练方法,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现实施例中手写模型训练装置的各模块/单元的功能,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现实施例中手写字识别方法中各步骤的功能,为避免重复,此处不一一赘述。或者,该计算机程序被处理器执行时实现实施例中手写字识别装置中各模块/单元的功能,为避免重复,此处不一一赘述。
图9是本发明一实施例提供的计算机设备的示意图。如图9所示,该实施例的计算机设备100包括:处理器101、存储器102以及存储在存储器102中并可在处理器101上运行的计算机程序103,该计算机程序103被处理器101执行时实现实施例中的手写模型训练方法,为避免重复,此处不一一赘述。或者,该计算机程序被处理器101执行时实现实施例中手写模型训练装置中各模型/单元的功能,为避免重复,此处不一一赘述。或者,该计算机程序被处理器101执行时实现实施例中手写字识别方法中各步骤的功能,为避免重复,此处不一一赘述。或者,该计算机程序被处理器101执行时实现实施例中手写字识别装置中各模块/单元的功能。为避免重复,此处不一一赘述。
计算机设备100可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可包括,但不仅限于,处理器101、存储器102。本领域技术人员可以理解,图9仅仅是计算机设备100的示例,并不构成对计算机设备100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器101可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器102可以是计算机设备100的内部存储单元,例如计算机设备100的硬盘或内存。存储器102也可以是计算机设备100的外部存储设备,例如计算机设备100上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器102还可以既包括计算机设备100的内部存储单元也包括外部存储设备。存储器102用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器102还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种手写模型训练方法,其特征在于,包括:
获取规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分;
初始化卷积神经网络;
将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型;
获取非规范中文字训练样本,并将所述非规范中文字训练样本按预设批次进行批分;
将批分后的非规范中文字训练样本输入到所述规范中文字识别模型中进行训练,采用后向传播算法更新所述规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型;
获取待测试中文字样本,采用所述调整中文手写字识别模型识别所述待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本;
将所述出错字训练样本输入到所述调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
2.根据权利要求1所述的手写模型训练方法,其特征在于,所述获取规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分,包括:
获取待处理中文字训练样本中每个中文字的像素值特征矩阵,将所述像素值特征矩阵中每个像素值进行归一化处理,获取每个中文字的归一化像素值特征矩阵,其中,归一化处理的公式为MaxValue为每个中文字的像素值特征矩阵中像素值的最大值,MinValue为每个中文字的像素值特征矩阵中像素值的最小值,x为归一化前的像素值,y为归一化后的像素值;
将每个中文字的归一化像素值特征矩阵中的像素值划分为两类像素值,基于所述两类像素值建立每个中文字的二值化像素值特征矩阵,将每个中文字的二值化像素特征矩阵组合作为规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分。
3.根据权利要求1所述的手写模型训练方法,其特征在于,所述将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型,包括:
将批分后的规范中文字训练样本输入到卷积神经网络中,获取批分后的规范中文字训练样本在所述卷积神经网络中的前向输出;
根据所述前向输出和真实结果构建误差函数,所述误差函数的表达式为
其中,n表示训练样本总数,xi表示第i个训练样本的前向输出,yi表示与xi相对应的第i个训练样本的真实结果;
根据所述误差函数,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型,其中,在所述卷积神经网络的全连接层,更新权值的公式为在所述卷积神经网络的卷积层,更新权值的公式为Wl'表示更新后的权值,Wl表示更新前的权值,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,ai,l-1表示输入的第i个中文字样本在第l-1层的输出,T表示矩阵转置运算,*表示卷积运算,rot180表示将矩阵翻转180度的运算;在所述卷积神经网络的全连接层,更新偏置的公式为在所述卷积神经网络的卷积层,更新偏置的公式为bl'表示更新后的偏置,bl表示更新前的偏置,α表示学习率,m表示规范中文字训练样本,i表示输入的第i个中文字样本,δi,l表示输入的第i个中文字样本在第l层的灵敏度,(u,v)是指进行卷积运算时获取的卷积特征图中每一个卷积特征图中的小块位置。
4.根据权利要求1所述的手写模型训练方法,其特征在于,所述采用调整中文手写字识别模型识别待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本,包括:
将待测试中文字样本输入到调整中文手写字识别模型,获取所述待测试中文字样本中每一个字在所述调整中文手写字识别模型中的输出值;
选取每一个所述字对应的输出值中的最大输出值,根据所述最大输出值获取每一个所述字的识别结果;
根据识别结果,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本。
5.根据权利要求1所述的手写模型训练方法,其特征在于,所述初始化卷积神经网络,包括:
令所述卷积神经网络初始化的权值满足公式其中,nl表示在第l层输入的训练样本的样本个数,S()表示方差运算,Wl表示第l层的权值,表示任意,l表示卷积神经网络中的第l层。
6.一种手写字识别方法,其特征在于,包括:
获取待识别中文字,采用目标中文手写字识别模型识别所述待识别中文字,获取所述待识别中文字在所述目标中文手写字识别模型中的输出值;所述目标中文手写字识别模型是采用权利要求1-5任一项所述手写模型训练方法获取到的;
根据所述输出值和预设的中文语义词库获取目标概率输出值,基于所述目标概率输出值获取所述待识别中文字的识别结果。
7.一种手写模型训练装置,其特征在于,包括:
规范中文字训练样本获取模块,用于获取规范中文字训练样本,并将所述规范中文字训练样本按预设批次进行批分;
初始化模块,用于初始化卷积神经网络;
规范中文字识别模型获取模块,用于将批分后的规范中文字训练样本输入到卷积神经网络中进行训练,采用后向传播算法更新卷积神经网络的权值和偏置,获取规范中文字识别模型;
非规范中文字训练样本获取模块,用于获取非规范中文字训练样本,并将所述非规范中文字训练样本按预设批次进行批分;
调整中文手写字识别模型获取模块,用于将批分后的非规范中文字训练样本输入到所述规范中文字识别模型中进行训练,采用后向传播算法更新所述规范中文字识别模型的权值和偏置,获取调整中文手写字识别模型;
出错字训练样本获取模块,用于获取待测试中文字样本,采用所述调整中文手写字识别模型识别所述待测试中文字样本,获取识别结果与真实结果不符的出错字,把所有所述出错字作为出错字训练样本;
目标中文手写字识别模型获取模块,用于将所述出错字训练样本输入到所述调整中文手写字识别模型中进行训练,采用基于批量梯度下降的后向传播算法更新调整中文手写字识别模型的权值和偏置,获取目标中文手写字识别模型。
8.一种手写字识别装置,其特征在于,包括:
输出值获取模块,用于获取待识别中文字,采用目标中文手写字识别模型识别所述待识别中文字,获取所述待识别中文字在所述目标中文手写字识别模型中的输出值;所述目标中文手写字识别模型是采用权利要求1-5任一项所述手写模型训练方法获取到的;
识别结果获取模块,用于根据所述输出值和预设的中文语义词库获取目标概率输出值,基于所述目标概率输出值获取所述待识别中文字的识别结果。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述手写模型训练方法的步骤;或者,所述处理器执行所述计算机程序时实现如权利要求6所述手写字识别方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述手写模型训练方法的步骤;或者,所述处理器执行所述计算机程序时实现如权利要求6所述手写字识别方法的步骤。
CN201810564050.0A 2018-06-04 2018-06-04 手写模型训练方法、手写字识别方法、装置、设备及介质 Active CN109086653B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810564050.0A CN109086653B (zh) 2018-06-04 2018-06-04 手写模型训练方法、手写字识别方法、装置、设备及介质
PCT/CN2018/094247 WO2019232854A1 (zh) 2018-06-04 2018-07-03 手写模型训练方法、手写字识别方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810564050.0A CN109086653B (zh) 2018-06-04 2018-06-04 手写模型训练方法、手写字识别方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN109086653A true CN109086653A (zh) 2018-12-25
CN109086653B CN109086653B (zh) 2023-04-18

Family

ID=64839324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810564050.0A Active CN109086653B (zh) 2018-06-04 2018-06-04 手写模型训练方法、手写字识别方法、装置、设备及介质

Country Status (2)

Country Link
CN (1) CN109086653B (zh)
WO (1) WO2019232854A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110929623A (zh) * 2019-11-15 2020-03-27 北京达佳互联信息技术有限公司 多媒体文件的识别方法、装置、服务器和存储介质
CN111382297A (zh) * 2018-12-29 2020-07-07 杭州海康存储科技有限公司 一种用户侧用户数据的上报方法及装置
CN112784845A (zh) * 2021-01-12 2021-05-11 安徽淘云科技有限公司 手写文字检测方法以及电子设备、存储装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111340077B (zh) * 2020-02-18 2024-04-12 平安科技(深圳)有限公司 基于注意力机制的视差图获取方法和装置
CN111723662B (zh) * 2020-05-18 2023-07-11 南京师范大学 一种基于卷积神经网络的人体姿态识别方法
CN112163400A (zh) * 2020-06-29 2021-01-01 维沃移动通信有限公司 信息处理方法及装置
CN112308058B (zh) * 2020-10-25 2023-10-24 北京信息科技大学 一种手写字符的识别方法
CN112507863B (zh) * 2020-12-04 2023-04-07 西安电子科技大学 基于量子Grover算法的手写文字图片分类方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101785030A (zh) * 2007-08-10 2010-07-21 微软公司 基于隐式马尔可夫模型的手写笔迹/书法生成
US20150317336A1 (en) * 2014-04-30 2015-11-05 Hewlett-Packard Development Company, L.P. Data reconstruction
CN107316054A (zh) * 2017-05-26 2017-11-03 昆山遥矽微电子科技有限公司 基于卷积神经网络和支持向量机的非标准字符识别方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100239168A1 (en) * 2009-03-20 2010-09-23 Microsoft Corporation Semi-tied covariance modelling for handwriting recognition
CN106022273A (zh) * 2016-05-24 2016-10-12 华东理工大学 基于动态样本选择策略的bp神经网络手写体识别系统
CN107844740A (zh) * 2017-09-05 2018-03-27 中国地质调查局西安地质调查中心 一种脱机手写、印刷汉字识别方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101785030A (zh) * 2007-08-10 2010-07-21 微软公司 基于隐式马尔可夫模型的手写笔迹/书法生成
US20150317336A1 (en) * 2014-04-30 2015-11-05 Hewlett-Packard Development Company, L.P. Data reconstruction
CN107316054A (zh) * 2017-05-26 2017-11-03 昆山遥矽微电子科技有限公司 基于卷积神经网络和支持向量机的非标准字符识别方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382297A (zh) * 2018-12-29 2020-07-07 杭州海康存储科技有限公司 一种用户侧用户数据的上报方法及装置
CN111382297B (zh) * 2018-12-29 2024-05-17 杭州海康存储科技有限公司 一种用户侧用户数据的上报方法及装置
CN110929623A (zh) * 2019-11-15 2020-03-27 北京达佳互联信息技术有限公司 多媒体文件的识别方法、装置、服务器和存储介质
CN112784845A (zh) * 2021-01-12 2021-05-11 安徽淘云科技有限公司 手写文字检测方法以及电子设备、存储装置

Also Published As

Publication number Publication date
WO2019232854A1 (zh) 2019-12-12
CN109086653B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
CN108764195A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN109086653A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
US20230037908A1 (en) Machine learning model training method and device, and expression image classification method and device
CN107437096B (zh) 基于参数高效的深度残差网络模型的图像分类方法
CN110414498B (zh) 一种基于交叉注意力机制的自然场景文本识别方法
US5245696A (en) Evolution and learning in neural networks: the number and distribution of learning trials affect the rate of evolution
CN109344884A (zh) 媒体信息分类方法、训练图片分类模型的方法及装置
WO2020159890A1 (en) Method for few-shot unsupervised image-to-image translation
CN104463101A (zh) 用于文字性试题的答案识别方法及系统
CN109086654A (zh) 手写模型训练方法、文本识别方法、装置、设备及介质
CN108805222A (zh) 一种基于arm平台的深度学习数字手写体识别方法
CN107704859A (zh) 一种基于深度学习训练框架的文字识别方法
CN109034280A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN106980830A (zh) 一种基于深度卷积网络自亲缘关系识别方法与装置
Qi et al. Personalized sketch-based image retrieval by convolutional neural network and deep transfer learning
CN109325513A (zh) 一种基于海量单类单幅图像的图像分类网络训练方法
CN109447096A (zh) 一种基于机器学习的扫视路径预测方法和装置
CN108985442A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN109034279A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN108073883A (zh) 大规模人群属性识别方法及装置
CN117521672A (zh) 一种基于扩散模型的长文本生成连续图片的方法
CN108985151A (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
James et al. Deep learning
CN110188621A (zh) 一种基于ssf-il-cnn的三维人脸表情识别方法
CN109240549A (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