CN112508004A - 一种文字识别方法、装置、电子设备及存储介质 - Google Patents

一种文字识别方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112508004A
CN112508004A CN202011511494.1A CN202011511494A CN112508004A CN 112508004 A CN112508004 A CN 112508004A CN 202011511494 A CN202011511494 A CN 202011511494A CN 112508004 A CN112508004 A CN 112508004A
Authority
CN
China
Prior art keywords
test
meta
training sample
training
character
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.)
Pending
Application number
CN202011511494.1A
Other languages
English (en)
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202011511494.1A priority Critical patent/CN112508004A/zh
Publication of CN112508004A publication Critical patent/CN112508004A/zh
Priority to US17/545,765 priority patent/US20220101642A1/en
Priority to EP21213455.5A priority patent/EP4016477A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • 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/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/12Detection or correction of errors, e.g. by rescanning the pattern
    • G06V30/133Evaluation of quality of the acquired characters
    • 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/19Recognition using electronic means
    • G06V30/19007Matching; Proximity measures
    • G06V30/19093Proximity measures, i.e. similarity or distance measures
    • 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/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/1916Validation; Performance evaluation

Landscapes

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

Abstract

本申请公开了一种文字识别方法、装置、电子设备及存储装置,涉及人工智能领域,具体为计算机视觉和深度学习技术。该方案为:获取测试任务对应的测试样本文字图片和对应的测试样本文字;根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;获取所述测试任务对应的测试文字图片;将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。本申请基于元学习方法,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,避免了少量训练样本导致的过拟合现象,确保了文字识别结果的准确率,提高了文字识别过程中的可靠性和效率。

Description

一种文字识别方法、装置、电子设备及存储介质
技术领域
本申请的实施例总体上涉及图像处理技术领域,并且更具体地涉及人工智能领域,具体为计算机视觉和深度学习技术。
背景技术
近年来,随着OCR(Optical Character Recognition,光学字符识别)领域相关技术的兴起,文字识别也逐渐成为了重要的研究方向之一。其中,文档文字识别最常见的应用场景主要包括:通用纸质文档识别、财务报销类发票识别,以及其他任意常见的OCR场景。在文字识别过程中,通常依赖大量数据作为文字识别的基础。
然而,现有技术中的文字识别方法,由于数据规模极小,势必会因极易产生过拟合(Overfitting)现象导致文字识别结果准确率极低。因此,如何提高文字识别结果的准确率,已成为了重要的研究方向之一。
发明内容
本申请提供了一种文字识别方法、装置、电子设备及存储介质。
根据第一方面,提供了一种文字识别方法,包括:
获取测试任务对应的测试样本文字图片和对应的测试样本文字;
根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;
获取所述测试任务对应的测试文字图片;
将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。
根据第二方面,提供了一种文字识别装置,包括:
第一获取模块,用于获取测试任务对应的测试样本文字图片和对应的测试样本文字;
微调模块,用于根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;
第二获取模块,用于获取所述测试任务对应的测试文字图片;
生成模块,用于将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。
根据第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请第一方面所述的文字识别方法。
根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请第一方面所述的文字识别方法。
根据第五方面,提供了一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现本申请第一方面所述的文字识别方法的步骤。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是一种Fine-tune更新方式的示意图;
图2是根据本申请第一实施例的示意图;
图3是一种不同垂类的测试任务的样本的示意图;
图4是一种数据集构成方式的示意图;
图5是一种CRNN识别过程的示意图;
图6是一种CTC损失函数计算过程的示意图;
图7是根据本申请第二实施例的示意图;
图8是根据本申请第三实施例的示意图;
图9是根据本申请第四实施例的示意图;
图10是一种元训练过程的示意图;
图11是一种进行更新的过程的示意图;
图12是一种元测试过程的示意图;
图13是一种测试结果的示意图;
图14是一种元学习的整体过程的示意图;
图15是用来实现本申请实施例的文字识别方法的文字识别装置的框图;
图16是用来实现本申请实施例的文字识别方法的文字识别装置的框图;
图17是用来实现本申请实施例的文字识别的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
以下对本申请的方案涉及的技术领域进行简要说明:
图像处理(Image Processing),指的是用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。图像处理一般指数字图像处理。数字图像是指用工业相机、摄像机、扫描仪等设备经过拍摄得到的一个大的二维数组,该数组的元素称为像素,其值称为灰度值。图像处理技术一般包括图像压缩,增强和复原,匹配、描述和识别3个部分。
AI(Artificial Intelligence,人工智能),是研究使计算机来模拟人生的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术,也有软件层面的技术。人工智能硬件技术一般包括计算机视觉技术、语音识别技术、自然语言处理技术以及及其学习/深度学习、大数据处理技术、知识图谱技术等几大方面。
DL(Deep Learning,深度学习),是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
计算机视觉(Computer Vision),是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。这里所指的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。
需要说明的是,现有技术中,通常采用基于在未知的数据集上进行微调(fine-tune)的方法来提升模型识别的准确率。
对于低频垂类的场景,只有极少量数据的情况下,对于模型识别来说是一个重大的挑战,主要表现在模型的泛化能力不够好。因此,通常使用fine-tune的方法在该垂类场景下得到一个新的模型提高其泛化性能。
其中,Fine-tune的更新方式如图1所示,用公式则可以表示为如下公式:
Figure BDA0002846533420000041
然而,fine-tune通常仅在大量的数据的样本上表现良好,在小样本下fine-tune提升能力有限,且需要进行人工调整参数,手动选择loss(损失)最小的一代作为最后产出的模型。这样一来,若将模型应用到其他场景任务上,fine-tune之后的模型精度会有所下降。因此fine-tune通常的做法是在新的垂类场景上重新训练模型fine-tune。如果将微调的训练方式运用到多个任务上,那么通常来说,即在每个任务上求得最优解,将最后得到更新的模型参数作为最优解,用公式则可以表示为如下公式:
Figure BDA0002846533420000042
然而,上述微调方式存在适用场景局限性大、识别准确率低、模型训练效率低等问题。
由此,本申请提出的文字识别方法,采用基于元学习(meta-learning)的文字识别方法,能够在少量样本训练下,获得较高的识别准确率,且提高泛化性能。
下面参考附图描述本申请实施例的文字识别方法、装置、电子设备及存储介质。
图2是根据本申请第一实施例的示意图。其中,需要说明的是,本申请实施例的文字识别方法的执行主体为文字识别装置,文字识别装置具体可以为硬件设备,或者硬件设备中的软件等。其中,硬件设备例如终端设备、服务器等。如图2所示,本实施例提出的文字识别方法,包括如下步骤:
S201、获取测试任务对应的测试样本文字图片和对应的测试样本文字。
其中,测试任务,可以为试图进行文字识别的任一任务。
需要说明的是,本申请中,在试图进行文字识别时,可以通过多种方式获取测试任务。可选地,可以从数据集中选取任一测试任务。其中,数据集,指的是按照一定规则构建的、基于测试任务的多任务数据集,不同数据集可以包括不同垂类的测试任务。
举例而言,如图3所示,数据集包括1~10,共10个不同垂类的测试任务,此种情况下,可以获取1~10中的任一测试任务,进行文字识别。
需要说明的是,本申请中,测试任务对应的测试样本文字图片和对应的测试样本文字,可以构成数据集中的测试集(Query Set)。
本申请实施例中,在获取到测试任务后,可以获取测试任务对应的测试样本文字图片和对应的测试样本文字。
需要说明的是,本申请中对于获取测试样本文字图片和对应的测试样本文字的具体方式不作限定,可以根据实际情况进行选取。例如,可以根据测试任务,获取对应的测试样本图片。进一步地,对该测试样本图片进行灰度、模糊、透视、拉伸等变换得到文字图片,即测试样本文字图片;可以基于OCR处理,获取对应的测试样本文字。
S202、根据测试样本文字图片和测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型。
本申请实施例中,可以根据测试集,即测试样本文字图片和测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型。
需要说明的是,本申请中对于预先训练好的元学习模型不作限定,可以根据测试样本文字图片和测试样本文字对预先训练好的任意结构的元学习模型进行微调,以得到测试任务模型。
S203、获取测试任务对应的测试文字图片。
本申请实施例中,在得到微调后的测试任务模型后,可以获取测试任务对应的测试文字图片,即言可以将测试任务模型在测试集上进行预测。
S204、将测试文字图片输入至测试任务模型,生成测试文字图片对应的测试文字。
本申请实施例中,在得到微调后的测试任务模型后,可以将测试文字图片输入至测试任务模型,即言可以根据获取到的测试任务对应的测试文字图片和测试任务模型进行预测,生成测试文字图片对应的测试文字。
根据本申请实施例的文字识别方法,可以通过获取测试任务对应的测试样本文字图片和对应的测试样本文字,并根据测试样本文字图片和测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型,进而获取测试任务对应的测试文字图片,并将测试文字图片输入至测试任务模型,生成测试文字图片对应的测试文字,以实现文字的识别。由此,本申请基于元学习方法,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,避免了少量训练样本导致的过拟合现象,确保了文字识别结果的准确率,提高了文字识别过程中的可靠性和效率。
需要说明的是,本申请中,数据集包括测试集和训练集(Support Set)。举例而言,数据集的一种可能的构成方式如图4所示。根据训练集进行元训练,可以得到一个通用的元学习模型,进一步地,可以根据测试集进行元测试,对元学习模型进行微调,即可以极大提升模型的识别准确率。
下面分别针对元训练和元测试过程进行解释说明。
针对元训练过程,本申请实施例中,元学习模型可以为CRNN(ConvolutionalRecurrent Neural Network,卷积递归神经网络模型)。
需要说明的是,目前,CRNN的模型结构已经是OCR识别过程中广泛使用的一种模型。基于此,本申请主要采用该框架进行测试,当然,也可以尝试更多其他的框架。
其中,CRNN包括:卷积层、RNN(Recurrent Neural Network,循环神经网络)层和翻译层,识别过程如图5所示,CRNN通过卷积层将图片进行卷积操作,从而得到特征图,将特征图经过RNN层,通常使用GRU(Gated Recurrent Unit,循环门单元)或LSTM(Long Short-Term Memory,长短期记忆网络)对序列进行识别,最后使用CTC损失函数做梯度回传。
其中,CTC(Connectionist temporal classification,时序分类)损失函数是训练模型中关键的一个因素。CTC损失函数的计算过程如图6所示。
需要说明的是,本申请中,元学习模型是预先训练得到的。其中,在本申请的实施例中,如图7所示,可通过以下方式预先建立元学习模型:
S701、获取训练任务对应的第一训练样本文字图片和对应的第一训练样本文字。
其中,第一训练样本文字图片和对应的第一训练样本文字,可以构成数据集中的训练集,可以预先收集,以便后续进行模型的训练。
其中,第一训练样本文字图片和对应的第一训练样本文字的数量可以预先设定。
S702、根据第一训练样本文字图片和第一训练样本文字对待训练的元学习模型进行训练,得到训练任务模型。
本申请实施例中,可以根据第一训练样本文字图片和第一训练样本文字对待训练的元学习模型进行多次训练,以得到训练任务模型。
S703、获取训练任务对应的第二训练样本文字图片和对应的第二训练样本文字。
其中,第二训练样本文字图片和对应的第二训练样本文字,可以构成数据集中的训练集,可以预先收集,以便后续进行模型的训练。
其中,第二训练样本文字图片和对应的第二训练样本文字的数量可以预先设定。
S704、根据第二训练样本文字图片、第二训练样本文字和训练任务模型对待训练的元学习模型进行更新,得到训练好的元学习模型。
作为一种可能的实现方式,如图8所示,在上述实施例的基础上,上述步骤S704的具体过程,包括以下步骤:
S801、将第二训练样本文字图片输入至训练任务模型,生成第二训练样本文字图片对应的预测训练样本文字。
本申请实施例中,将第二训练样本文字图片输入至训练任务模型,生成第二训练样本文字图片对应的预测训练样本文字,即预测值。
S802、根据预测训练样本文字和第二训练样本文字对待训练的元学习模型进行更新,得到训练好的元学习模型。
作为一种可能的实现方式,如图9所示,在上述实施例的基础上,上述步骤S802的具体过程,具体包括以下步骤:
S901、计算预测训练样本文字和第二训练样本文字之间的损失函数值。
其中,预测训练样本文字,即真是值。
其中,损失函数值为时序分类损失函数值。
本申请实施例中,可以计算预测训练样本文字和第二训练样本文字之间的损失函数值,即计算预测值和真实值之间的CTC损失函数值。
S902、根据损失函数值计算梯度值。
S903、根据梯度值对待训练的元学习模型进行更新,得到训练好的元学习模型。
本申请实施例中,在获取到梯度值后,可以将保存的梯度值回传至待训练的元学习模型,以根据梯度值对待训练的元学习模型进行更新,例如通过梯度下降对待训练的元学习模型进行更新,以得到训练好的元学习模型。
举例而言,如图10所示,前述元训练的过程主要包括以下步骤:针对一个初始化的元学习模型,即待训练的元学习模型,在训练集上进行多次训练,得到训练任务模型,即基于该任务的模型。进一步地,可以将该训练任务模型在测试集上进行预测,并将预测值和真实值之间的CTC损失函数值求出,进而计算得到梯度值,并将得到的梯度值保存下来,回传至待训练的元学习模型,使得该待训练的元学习模型可以通过梯度下降更新模型。
其中,进行更新的过程,如图11所示。
在训练集(每个元测试任务上为4800)上对待训练的元学习模型的参数进行更新,该过程通过公式可以表示为以下公式:
Figure BDA0002846533420000081
在测试集(每个元测试任务上为200)上用得到的模型的更新做前向处理,计算梯度值,并将所有的梯度值进行累加,使用SGD(Stochastic Gradient Descent)更新模型的参数。该过程通过公式可以表示为以下公式:
Figure BDA0002846533420000082
针对元训练过程,进一步地,元测试过程如图12所示。
可选地,在训练集上进行微调,可以得到基于该测试任务的测试模型,然后将该模型拿到测试集上进行预测,即可得到最后的结果。该过程通过公式可以表示为以下公式:
Figure BDA0002846533420000083
需要说明的是,本申请中,在每次新增任务垂类时,现有的模型无需重新训练,可以直接应用模型进行识别。
根据本申请实施例的文字识别方法,可以通过包括元训练和元测试的元学习方式,实现文字的识别,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,避免了少量训练样本导致的过拟合现象,确保了文字识别结果的准确率,提高了文字识别过程中的可靠性和效率。同时,本申请提出的方法与模型结构无关,基于本申请提出的方法能够训练任意结构的模型,具有适应性高的特点。
需要说明的是,在实际应用中,基于Fine-tune方式与本申请提出的元学习方式,对不同垂类的任务进行测试,并将测试结果进行比较,可以得到如图13所示的结果。
图13中展示了六组实验对比效果。
其中,第一组实验通过使用在1千万数据集上训练出来的预训练模型在三个测试垂类的测试集上得到的识别准确率;第二组实验为在1千万数据集上训练出来的预训练模型在三个测试垂类的训练集上进行fine-tune之后,在测试集上得到的识别准确率;第三组实验为将1千万数据集上训练出来的预训练模型在训练垂类上得到微调之后的模型,将模型在三个测试垂类的测试集上得到的识别准确率;第四组实验为将1千万数据集上训练出来的预训练模型在训练垂类上得到微调之后的模型,在三个测试垂类的训练集上进行fine-tune之后,在测试集上得到的识别准确率;第五组实验是通过元学习的方法在训练垂类上得到的模型,在三个测试垂类的测试集上得到的识别准确率;第六组实验是通过元学习的方法在训练垂类上得到的模型,在三个测试垂类的训练集上得到的模型,在测试集上得到的识别准确率。
从上述对比结果可以看出,MAML处理的过程中,试图在元任务上找到一个奇点,以在元测试的结果上进行快速适应,从而能够得到在少量样本的情况下在测试集上取得比较好的结果。Fine-tune处理的过程中,试图依据现有任务得到找到最优解,在少量样本的情况下,精度势必会受到一定的影响。
需要说明的是,本申请提出的文字是区别方法,可以运用于多种场景中。
针对发票识别应用场景,如图14所示,可以基于计算机视觉和深度学习技术,基于训练集合测试集,进行包括元训练和元测试的元学习,能够实现真正意义上的小样本下的OCR识别能力提升。
需要说明的是,若试图新增出租车票、机打发票、新车发票等任务垂类时,现有的模型无需重新训练,可以直接应用模型进行识别。
由此,根据本申请提出的文字识别方法,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,使得CRNN模型的识别能力能够提升5%~10%,且不受限于图片数据、模型结构等因素,为之后的训练识别模型进一步提供了可能性,具有适应性高的特点。
与上述几种实施例提供的文字识别方法相对应,本申请的一个实施例还提供一种文字识别装置,由于本申请实施例提供的文字识别装置与上述几种实施例提供的文字识别方法相对应,因此在文字识别方法的实施方式也适用于本实施例提供的文字识别装置,在本实施例中不再详细描述。
图15是根据本申请一个实施例的文字识别装置的结构示意图。
如图15所示,该文字识别装置1500,包括:第一获取模块1510、微调模块1520、第二获取模块1530和生成模块1540。其中:
第一获取模块1510,用于获取测试任务对应的测试样本文字图片和对应的测试样本文字;
微调模块1520,用于根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;
第二获取模块1530,用于获取所述测试任务对应的测试文字图片;
生成模块1540,用于将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。
图16是根据本申请另一个实施例的文字识别装置的结构示意图。
如图16所示,该文字识别装置1600,包括:第一获取模块1610、微调模块1620、第二获取模块1630和生成模块1640,还包括:第三获取模块1650、训练模块1660、第四获取模块1670和更新模块1680。其中,
第三获取模块1650,用于获取训练任务对应的第一训练样本文字图片和对应的第一训练样本文字;
训练模块1660,用于根据所述第一训练样本文字图片和所述第一训练样本文字对待训练的元学习模型进行训练,得到训练任务模型;
第四获取模块1670,用于获取所述训练任务对应的第二训练样本文字图片和对应的第二训练样本文字;
更新模块1680,用于根据所述第二训练样本文字图片、所述第二训练样本文字和所述训练任务模型对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
其中,更新模块1680,包括:
生成子模块1681,用于将所述第二训练样本文字图片输入至所述训练任务模型,生成所述第二训练样本文字图片对应的预测训练样本文字;
更新子模块1682,用于根据所述预测训练样本文字和所述第二训练样本文字对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
其中,更新子模块1682,包括:
第一计算单元16821,用于计算所述预测训练样本文字和所述第二训练样本文字之间的损失函数值;
第二计算单元16822,用于根据所述损失函数值计算梯度值;
更新单元16823,用于根据所述梯度值对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
根据本申请的一个实施例,损失函数值为时序分类损失函数值。
根据本申请的一个实施例,元学习模型为卷积递归神经网络模型。
需要说明的是,第一获取模块1610、微调模块1620、第二获取模块1630和生成模块1640与第一获取模块1510、微调模块1520、第二获取模块1530和生成模块1540具有相同功能和结构。
根据本申请实施例的文字识别方法,可以通过获取测试任务对应的测试样本文字图片和对应的测试样本文字,并根据测试样本文字图片和测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型,进而获取测试任务对应的测试文字图片,并将测试文字图片输入至测试任务模型,生成测试文字图片对应的测试文字,以实现文字的识别。由此,本申请基于元学习方法,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,避免了少量训练样本导致的过拟合现象,确保了文字识别结果的准确率,提高了文字识别过程中的可靠性和效率。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图17所示,是根据本申请实施例的文字识别的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图17所示,该电子设备包括:一个或多个处理器1710、存储器1720,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图17中以一个处理器1710为例。
存储器1720即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的文字识别方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的文字识别方法。
存储器1720作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的文字识别方法对应的程序指令/模块(例如,附图15所示的第一获取模块1510、微调模块1520、第二获取模块1530和生成模块1540)。处理器1710通过运行存储在存储器1720中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的文字识别方法。
存储器1720可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据定位电子设备的使用所创建的数据等。此外,存储器1720可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1720可选包括相对于处理器1710远程设置的存储器,这些远程存储器可以通过网络连接至定位电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
文字识别的电子设备还可以包括:输入装置1730和输出装置1740。处理器1710、存储器1720、输入装置1730和输出装置1740可以通过总线或者其他方式连接,图17中以通过总线连接为例。
输入装置1730可接收输入的数字或字符信息,以及产生与定位电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1740可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网以及区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务端可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(“Virtual Private Server”,或简称“VPS”)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合区块链的服务器。
根据本申请实施例的文字识别方法,可以通过获取测试任务对应的测试样本文字图片和对应的测试样本文字,并根据测试样本文字图片和测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型,进而获取测试任务对应的测试文字图片,并将测试文字图片输入至测试任务模型,生成测试文字图片对应的测试文字,以实现文字的识别。由此,本申请基于元学习方法,降低了文字识别过程中涉及到的测试任务模型对训练样本规模的依赖程度,避免了少量训练样本导致的过拟合现象,确保了文字识别结果的准确率,提高了文字识别过程中的可靠性和效率。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (15)

1.一种文字识别方法,包括:
获取测试任务对应的测试样本文字图片和对应的测试样本文字;
根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;
获取所述测试任务对应的测试文字图片;
将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。
2.根据权利要求1所述的文字识别方法,还包括:
获取训练任务对应的第一训练样本文字图片和对应的第一训练样本文字;
根据所述第一训练样本文字图片和所述第一训练样本文字对待训练的元学习模型进行训练,得到训练任务模型;
获取所述训练任务对应的第二训练样本文字图片和对应的第二训练样本文字;
根据所述第二训练样本文字图片、所述第二训练样本文字和所述训练任务模型对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
3.根据权利要求2所述的文字识别方法,其中,所述根据所述第二训练样本文字图片、所述第二训练样本文字和所述训练任务模型对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型,包括:
将所述第二训练样本文字图片输入至所述训练任务模型,生成所述第二训练样本文字图片对应的预测训练样本文字;
根据所述预测训练样本文字和所述第二训练样本文字对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
4.根据权利要求3所述的文字识别方法,其中,所述根据所述预测训练样本文字和所述第二训练样本文字对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型,包括:
计算所述预测训练样本文字和所述第二训练样本文字之间的损失函数值;
根据所述损失函数值计算梯度值;
根据所述梯度值对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
5.根据权利要求4所述的文字识别方法,其中,所述损失函数值为时序分类损失函数值。
6.根据权利要求1所述的文字识别方法,其中,所述元学习模型为卷积递归神经网络模型。
7.一种文字识别装置,包括:
第一获取模块,用于获取测试任务对应的测试样本文字图片和对应的测试样本文字;
微调模块,用于根据所述测试样本文字图片和所述测试样本文字对预先训练好的元学习模型进行微调,得到测试任务模型;
第二获取模块,用于获取所述测试任务对应的测试文字图片;
生成模块,用于将所述测试文字图片输入至所述测试任务模型,生成所述测试文字图片对应的测试文字。
8.根据权利要求7所述的文字识别装置,还包括:
第三获取模块,用于获取训练任务对应的第一训练样本文字图片和对应的第一训练样本文字;
训练模块,用于根据所述第一训练样本文字图片和所述第一训练样本文字对待训练的元学习模型进行训练,得到训练任务模型;
第四获取模块,用于获取所述训练任务对应的第二训练样本文字图片和对应的第二训练样本文字;
更新模块,用于根据所述第二训练样本文字图片、所述第二训练样本文字和所述训练任务模型对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
9.根据权利要求8所述的文字识别装置,其中,所述更新模块,包括:
生成子模块,用于将所述第二训练样本文字图片输入至所述训练任务模型,生成所述第二训练样本文字图片对应的预测训练样本文字;
更新子模块,用于根据所述预测训练样本文字和所述第二训练样本文字对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
10.根据权利要求9所述的文字识别装置,其中,所述更新子模块,包括:
第一计算单元,用于计算所述预测训练样本文字和所述第二训练样本文字之间的损失函数值;
第二计算单元,用于根据所述损失函数值计算梯度值;
更新单元,用于根据所述梯度值对所述待训练的元学习模型进行更新,得到所述训练好的元学习模型。
11.根据权利要求10所述的文字识别装置,其中,所述损失函数值为时序分类损失函数值。
12.根据权利要求7所述的文字识别装置,其中,所述元学习模型为卷积递归神经网络模型。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的文字识别方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的文字识别方法。
15.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述方法的步骤。
CN202011511494.1A 2020-12-18 2020-12-18 一种文字识别方法、装置、电子设备及存储介质 Pending CN112508004A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202011511494.1A CN112508004A (zh) 2020-12-18 2020-12-18 一种文字识别方法、装置、电子设备及存储介质
US17/545,765 US20220101642A1 (en) 2020-12-18 2021-12-08 Method for character recognition, electronic device, and storage medium
EP21213455.5A EP4016477A1 (en) 2020-12-18 2021-12-09 Method and apparatus for character recognition, electronic device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011511494.1A CN112508004A (zh) 2020-12-18 2020-12-18 一种文字识别方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN112508004A true CN112508004A (zh) 2021-03-16

Family

ID=74922645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011511494.1A Pending CN112508004A (zh) 2020-12-18 2020-12-18 一种文字识别方法、装置、电子设备及存储介质

Country Status (3)

Country Link
US (1) US20220101642A1 (zh)
EP (1) EP4016477A1 (zh)
CN (1) CN112508004A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113139536A (zh) * 2021-05-12 2021-07-20 哈尔滨工业大学(威海) 一种基于跨域元学习的文本验证码识别方法、设备及存储介质
CN113344089A (zh) * 2021-06-17 2021-09-03 北京百度网讯科技有限公司 模型训练方法、装置及电子设备
CN113435529A (zh) * 2021-07-06 2021-09-24 北京百度网讯科技有限公司 模型预训练方法、模型训练方法及图像处理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109711433A (zh) * 2018-11-30 2019-05-03 东南大学 一种基于元学习的细粒度分类方法
CN109783604A (zh) * 2018-12-14 2019-05-21 平安科技(深圳)有限公司 基于少量样本的信息提取方法、装置和计算机设备
CN112001489A (zh) * 2020-07-01 2020-11-27 北京百度网讯科技有限公司 优化器学习的方法、装置、电子设备和可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792850B (zh) * 2021-09-09 2023-09-01 北京百度网讯科技有限公司 字体生成模型训练方法、字库建立方法、装置及设备
CN114372477B (zh) * 2022-03-21 2022-06-10 北京百度网讯科技有限公司 文本识别模型的训练方法、文本识别方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109711433A (zh) * 2018-11-30 2019-05-03 东南大学 一种基于元学习的细粒度分类方法
CN109783604A (zh) * 2018-12-14 2019-05-21 平安科技(深圳)有限公司 基于少量样本的信息提取方法、装置和计算机设备
CN112001489A (zh) * 2020-07-01 2020-11-27 北京百度网讯科技有限公司 优化器学习的方法、装置、电子设备和可读存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113139536A (zh) * 2021-05-12 2021-07-20 哈尔滨工业大学(威海) 一种基于跨域元学习的文本验证码识别方法、设备及存储介质
CN113344089A (zh) * 2021-06-17 2021-09-03 北京百度网讯科技有限公司 模型训练方法、装置及电子设备
CN113344089B (zh) * 2021-06-17 2022-07-01 北京百度网讯科技有限公司 模型训练方法、装置及电子设备
CN113435529A (zh) * 2021-07-06 2021-09-24 北京百度网讯科技有限公司 模型预训练方法、模型训练方法及图像处理方法
CN113435529B (zh) * 2021-07-06 2023-11-07 北京百度网讯科技有限公司 模型预训练方法、模型训练方法及图像处理方法

Also Published As

Publication number Publication date
EP4016477A1 (en) 2022-06-22
US20220101642A1 (en) 2022-03-31

Similar Documents

Publication Publication Date Title
CN111783870B (zh) 人体属性的识别方法、装置、设备及存储介质
CN111639710A (zh) 图像识别模型训练方法、装置、设备以及存储介质
CN110795569B (zh) 知识图谱的向量表示生成方法、装置及设备
CN112508004A (zh) 一种文字识别方法、装置、电子设备及存储介质
CN111523596A (zh) 目标识别模型训练方法、装置、设备以及存储介质
CN111626119A (zh) 目标识别模型训练方法、装置、设备以及存储介质
CN111967302A (zh) 视频标签的生成方法、装置及电子设备
CN111753761B (zh) 模型生成方法、装置、电子设备及存储介质
CN112561053B (zh) 图像处理方法、预训练模型的训练方法、装置和电子设备
CN113033549A (zh) 定位图获取模型的训练方法和装置
CN111767833A (zh) 模型生成方法、装置、电子设备及存储介质
CN112149637A (zh) 用于生成目标再识别模型和用于目标再识别的方法和装置
CN112288699B (zh) 图像相对清晰度的评估方法、装置、设备和介质
CN112149741A (zh) 图像识别模型的训练方法、装置、电子设备及存储介质
CN112529180A (zh) 模型蒸馏的方法和装置
CN112561056A (zh) 神经网络模型的训练方法、装置、电子设备和存储介质
CN112380392A (zh) 用于分类视频的方法、装置、电子设备及可读存储介质
CN111523467B (zh) 人脸跟踪方法和装置
CN112561879A (zh) 模糊度评价模型训练方法、图像模糊度评价方法及装置
CN112101552A (zh) 用于训练模型的方法、装置、设备以及存储介质
CN114863437A (zh) 文本识别方法、装置、电子设备和存储介质
CN112232089B (zh) 语义表示模型的预训练方法、设备和存储介质
CN112949433B (zh) 视频分类模型的生成方法、装置、设备和存储介质
CN112560772B (zh) 人脸的识别方法、装置、设备及存储介质
CN112561059B (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