CN115019316B - 一种文本识别模型的训练方法、文本识别方法 - Google Patents
一种文本识别模型的训练方法、文本识别方法 Download PDFInfo
- Publication number
- CN115019316B CN115019316B CN202210660669.8A CN202210660669A CN115019316B CN 115019316 B CN115019316 B CN 115019316B CN 202210660669 A CN202210660669 A CN 202210660669A CN 115019316 B CN115019316 B CN 115019316B
- Authority
- CN
- China
- Prior art keywords
- text
- string
- code
- model
- loss value
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000012549 training Methods 0.000 title claims abstract description 55
- 238000002372 labelling Methods 0.000 claims abstract description 50
- 238000000605 extraction Methods 0.000 claims description 41
- 230000006870 function Effects 0.000 claims description 41
- 239000013598 vector Substances 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 38
- 230000004927 fusion Effects 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 18
- 230000002457 bidirectional effect Effects 0.000 claims description 14
- 230000000873 masking effect Effects 0.000 claims description 10
- 230000007787 long-term memory Effects 0.000 claims description 5
- 230000006403 short-term memory Effects 0.000 claims description 5
- 239000010410 layer Substances 0.000 description 72
- 238000004590 computer program Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 9
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 8
- 238000007781 pre-processing Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000013508 migration Methods 0.000 description 5
- 230000005012 migration Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000002356 single layer Substances 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis 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/18—Extraction of features or characteristics of the image
- G06V30/1801—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections
- G06V30/18019—Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections by matching or filtering
- G06V30/18038—Biologically-inspired filters, e.g. difference of Gaussians [DoG], Gabor filters
- G06V30/18048—Biologically-inspired filters, e.g. difference of Gaussians [DoG], Gabor filters with interaction between the responses of different filters, e.g. cortical complex cells
- G06V30/18057—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/15—Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Character Discrimination (AREA)
Abstract
本公开提供一种文本识别模型的训练方法、文本识别方法,包括:将第一标注文本字符串输入第一分支模型,得到第一文本字符串编码,以及第一预测文本字符串,并获取第一损失值;将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值;基于第一损失值、第二损失值以及第三损失值得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。
Description
技术领域
本公开涉及文本识别技术领域,尤其涉及一种文本模型的训练方法、文本识别方法。
背景技术
文本识别技术是从文本图像中识别出字符序列的技术,已经作为人工智能领域的重要分支广泛应用于各个领域。目前,文本识别技术主要包括两种:基于字符的方法和基于序列的方法,基于字符的方法是在标注单个字符的基础进行字符的检测、识别以及组合从而得到字符序列;基于序列的方法是将整个文本图像进行编码,然后按照行序列解码得到字符序列,然而,基于字符的方法标注成本高,基于序列的方法存在漏识别或多识别的问题。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种文本模型的训练方法、文本识别方法,可以解决现有文本识别技术标注成本高、识别错误率高的问题。
为了实现上述目的,本公开实施例提供的技术方案如下:
第一方面,本公开提供一种文本识别模型的训练方法,该方法包括:
将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值,第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串;
将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;
基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值;
基于第一损失值、第二损失值以及第三损失值得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。
作为本公开实施例一种可选的实施方式,第二分支模型包括:第二编码部分和第二解码部分,其中,第二编码部分包括:第二特征提取部分、第二特征融合部分、背景纹理编码部分以及编码处理部分;第二解码部分包括:第二全连接层;
将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,包括:将待识别文本图像样本输入第二编码部分的第二特征提取部分,得到第二特征向量,并将第二特征向量经过第二特征融合部分,得到第一图像内容编码;将待识别文本图像样本输入第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码;将第一图像内容编码和第一图像背景纹理编码输入编码处理部分,得到第二文本字符串编码;将第二文本字符串编码输入第二全连接层,得到第二预测文本字符串。
作为本公开实施例一种可选的实施方式,第二编码部分还包括:第二两层双向长短期记忆网络LSTM;
将第二文本字符串编码输入全连接层,得到第二预测文本字符串之前,还包括:将第二文本字符串编码通过第二两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,第二分支模型还包括:嵌入层;
将待识别文本图像样本输入第二编码部分的第二特征提取部分,得到第二特征向量之前,还包括:将待识别文本图像样本进行切分,并通过嵌入层转化为向量。
作为本公开实施例一种可选的实施方式,将第一图像内容编码和第一图像背景纹理编码输入编码处理部分,得到第二文本字符串编码,包括:在编码处理部分,将第一图像内容编码减去第一图像背景纹理编码,得到第二文本字符串编码。
作为本公开实施例一种可选的实施方式,第一分支模型包括:第一编码部分和第一解码部分;其中,第一编码部分包括:第一特征提取部分、第一特征融合部分;第一解码部分包括:门控循环单元GRU层和第一全连接层;
将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,包括:将第一标注文本字符串输入第一编码部分的第一特征提取部分,得到第一特征向量将第一特征向量输入第一特征融合部分,得到第一标注文本字符串对应的第一文本字符串编码;将第一文本字符串编码输入第一解码部分的GRU和第一全连接层,得到第一预测文本字符串。
作为本公开实施例一种可选的实施方式,第一编码部分还包括:第一两层双向LSTM;
将第一文本字符串编码输入第一解码部分的GRU和第一全连接层,得到第一预测文本字符串之前,还包括:
将第一文本字符串编码通过第一两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,通过如下方式获取第一特征提取部分:
将字符串样本输入预设模型的第三编码部分,得到字符串编码,字符串编码包括:字符位置编码和字符内容编码;
将字符位置编码的随机位置进行掩码处理,将掩码处理之后的字符串编码输入预设模型的第三解码部分,得到预测字符串;
基于字符串样本、预测字符串以及交叉熵损失函数,调整预设模型的参数,直到收敛,确定第三编码部分为第一特征提取部分。
作为本公开实施例一种可选的实施方式,预设模型的第三编码部分包括:字符内容编码部分和位置编码部分,位置编码部分包括:第三双向LSTM网络。
第二方面,提供一种文本识别方法,该方法包括:
将待识别的文本图像输入文本识别模型中,得到第二预测文本字符串,其中,文本识别模型通过上述第一方面或或其任意一种可选的实施方式的文本识别模型的训练方法训练得到。
第三方面,提供一种文本识别模型的训练装置,该装置包括:
第一损失值获取模块,用于将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值,第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串;
第二损失值获取模块,用于将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;
第三损失值获取模块,用于基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值;
训练模块,用于基于第一损失值、第二损失值以及第三损失值得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。
作为本公开实施例一种可选的实施方式,第二分支模型包括:第二编码部分和第二解码部分,其中,第二编码部分包括:第二特征提取部分、第二特征融合部分、背景纹理编码部分以及编码处理部分;第二解码部分包括:第二全连接层;
第二损失值获取模块,具体用于将待识别文本图像样本输入第二编码部分的第二特征提取部分,得到第二特征向量,并将第二特征向量经过第二特征融合部分,得到第一图像内容编码;将待识别文本图像样本输入第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码;将第一图像内容编码和第一图像背景纹理编码输入编码处理部分,得到第二文本字符串编码;将第二文本字符串编码输入第二全连接层,得到第二预测文本字符串。
作为本公开实施例一种可选的实施方式,第二编码部分还包括:第二两层双向长短期记忆网络LSTM;
第二损失值获取模块,还用于将第二文本字符串编码通过第二两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,第二分支模型还包括:嵌入层;
第二损失值获取模块,还用于将待识别文本图像样本进行切分,并通过嵌入层转化为向量。
作为本公开实施例一种可选的实施方式,第二损失值获取模块,具体用于在编码处理部分,将第一图像内容编码减去第一图像背景纹理编码,得到第二文本字符串编码。
作为本公开实施例一种可选的实施方式,第一分支模型包括:第一编码部分和第一解码部分;其中,第一编码部分包括:第一特征提取部分、第一特征融合部分;第一解码部分包括:门控循环单元GRU层和第一全连接层;
作为本公开实施例一种可选的实施方式,第一损失值获取模块,具体用于将第一标注文本字符串输入第一编码部分的第一特征提取部分,得到第一特征向量将第一特征向量输入第一特征融合部分,得到第一标注文本字符串对应的第一文本字符串编码;将第一文本字符串编码输入第一解码部分的GRU和第一全连接层,得到第一预测文本字符串。
作为本公开实施例一种可选的实施方式,第一编码部分还包括:第一两层双向LSTM;
第一损失值获取模块,还用于将第一文本字符串编码通过第一两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,第一损失值获取模块,还用于通过如下方式获取第一特征提取部分:将字符串样本输入预设模型的第三编码部分,得到字符串编码,字符串编码包括:字符位置编码和字符内容编码;将字符位置编码的随机位置进行掩码处理,将掩码处理之后的字符串编码输入预设模型的第三解码部分,得到预测字符串;基于字符串样本、预测字符串以及交叉熵损失函数,调整预设模型的参数,直到收敛,确定第三编码部分为第一特征提取部分。
作为本公开实施例一种可选的实施方式,预设模型的第三编码部分包括:字符内容编码部分和位置编码部分,位置编码部分包括:第三双向LSTM网络。
第四方面,本公开提供一种文本识别装置,该装置包括:
获取模块,用于获取待识别的文本图像;
识别模块,用于将所述待识别的文本图像输入文本识别模型中,得到第二预测文本字符串,其中,所述文本识别模型通过上述第一方面或或其任意一种可选的实施方式所述的文本识别模型的训练方法训练得到。
第五方面,提供一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面或其任意一种可选的实施方式所述的文本识别模型的训练方法,或者实现如第二方面所述的文本识别方法。
第六方面,提供一种计算机可读存储介质,包括:所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面或其任意一种可选的实施方式所述的文本识别模型的训练方法,或者实现如第二方面所述的文本识别方法。
第七方面,提供一种计算机程序产品,其特征在于,包括:当所述计算机程序产品在计算机上运行时,使得所述计算机实现如第一方面或其任意一种可选的实施方式所述的文本识别模型的训练方法,或者实现如第二方面所述的文本识别方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例提供的文本识别模型的训练方法,首先将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,该第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值。然后将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;再基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值。最后,基于第一损失值、第二损失值以及第三损失值得到总损失值,根据总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。基于迁移学习思路将用于文字识别的第一分支模型迁移至用于图像识别的第二分支模型,减少了人工标注图像中字符的工作量,提升了识别图像中文本字符的效率和精度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种文本识别模型的训练方法的流程示意图一;
图2为本公开实施例提供的一种文本模型训练方法的流程示意图二;
图3为本公开实施例提供的一种文本模型训练方法的流程示意图三;
图4为本公开实施例提供的预设模型的网络结构示意图;
图5为本公开实施例提供的第一分支模型的网络结构示意图;
图6为本公开实施例提供的第二分支模型的结构示意图;
图7为本公开实施例提供的一种文本模型训练方法的流程示意图四;
图8为本公开实施例提供的一种文本识别方法的流程示意图;
图9为本公开实施例提供的文本识别模型训练装置的示意性框图;
图10为本公开实施例提供的文本识别装置的示意性框图;
图11为本公开实施例提供的电子设备的结构框图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
自然场景文字识别是带文字的图片中识别出字符序列的过程(对于中文,一个字符便是一个汉字,对于英文,一个字符便是一个字母)。它是一项具有极大挑战性的课题,除了图片背景复杂,光照变化等因素外,识别输出空间的复杂性也是一大困难,由于文字由数量不固定的字母组成,因此,自然场景文字识别需要从图片中识别长度不固定的序列。
目前有两种解决思路,一种是基于自底向上的策略,将识别问题拆分为字符检测、字符识别和字符组合,逐个解决,上述方法虽然有效但是却需要字符级别的标注,即每个字符在输入图像上的位置、以及信息都需要标注,这需要耗费大量的人工,
另一种是基于整体分析的策略,即序列到序列的方法,先将图像编码,然后进行序列解码直接得出整个字符串;方法虽然标注简单,只需转录字符串即可,但是其可能存在识别结果多识别字符或漏识别字符的情况。
可见,现有的文本识别技术的识别精度不高,容易出现字符错识别、漏识别等问题。
为了解决上述问题,本公开实施例提供的文本识别模型的训练方法,首先将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,该第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值。然后将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;再基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值。最后,基于第一损失值、第二损失值以及第三损失值得到总损失值,根据总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。基于迁移学习思路将用于文字识别的第一分支模型迁移至用于图像识别的第二分支模型,减少了人工标注图像中字符的工作量,提升了识别图像中文本字符的效率和精度。
其中,迁移学习是指利用数据、任务和模型之间的相似性,将在旧领域学习过的模型,应用于新领域的一种学习过程,它的核心问题是找到旧领域问题与新领域问题之间的相似性,一个常见的操作是预训练模型,即利用在大规模已标注或已存在的数据上训练得到的模型作为初始模型,然后在自己的数据集上进行微调,得到一个较好的结果,这样的好处是可以极大减少自己训练数据的规模,从而降低数据的收集难度和标注成本。
因此,本公开中第一标注文本字符串是上述的“大规模已标注或已存在的数据”,利用第一标注文本字符串训练得到文本字符识别领域的第一分支模型。为识别图像中的文本字符,将文本字符识别领域的第一分支模型迁移至图像字符识别领域,将待识别文本图像作为数据集对第一分支模型以及用于图像识别的第二分支模型进行训练,最终得到收敛的第二分支模型作为文本识别模型,以用于识别图像中的文本字符。本公开基于迁移思路减少了训练文本识别模型过程中人工标注图像中字符的工作量,提升了识别图像中文本字符的效率和精度
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
如图1所示,图1为本公开实施例提供的文本识别模型的训练方法的流程示意图一,该方法可以由文本识别模型的训练装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法主要包括如下步骤S102~S108:
S102、将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值。
其中,第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串。
待识别文本图像样本为包含有文本字符内容的图像,可以是用户上传的文本图像,也可以是执行文本识别方法的电子设备直接通过摄像头采集的文本图像,在此不限制待识别文本图像样本的获取方式。待识别文本图像样本包括直文本、倾斜文本和弯曲文本图像,也包括常规的模糊、影印的文本图像,以及其他一些文本图像,其中,正常文本是指从左往右书写,所有的字大致在一条直线上且这条直线和水平方向几乎重合;倾斜文本是指,从左往右书写,所有的字大致在一条直线上且这条直线和水平方向有一定的夹角;弯曲文本是指从左往右书写,但是字几乎都不在同一直线上,字的中心点连起来之后大致呈一条曲线。本公开实施例对文本图像中的内容不进行限制。
待识别文本图像样本包含有文本字符信息。在实际应用中,可以预先获取大量文本图像样本,该待识别文本图像样本可缩放到同样尺寸,然后分别通过人工标注等方式为每个待识别文本图像样本标注文本字符信息,得到第一标注文本字符串。本公开实施例中,标注待识别文本图像样本中包括的文本字符信息,是句子级别的标注,例如,待识别文本图像样本中包括文本字符信息:“你是谁”,句子级别的标注是标注出文本字符信息的内容“你是谁”,区别与现有的标记方法需要标记出每个字符“你”、“是”、“谁”以及每个字符的位置“你”对应第一位置、“是”对应第二位置、“谁”对应第三位置,从而减少了人工标注的工作量。
第一分支模型包括:第一编码部分和第一解码部分;其中,第一编码部分包括:第一特征提取部分、第一特征融合部分;第一解码部分包括:门控循环单元GRU层和第一全连接层。
图2是本公开实施例提供的一种文本模型训练方法的流程示意图二。本实施例是在上述实施例的基础上,其中步骤S102的一种可能实现方式如下述步骤S1021~S1022。
S1021、将第一标注文本字符串输入第一编码部分的第一特征提取部分,得到第一特征向量,并将第一特征向量输入第一特征融合部分,得到第一标注文本字符串对应的第一文本字符串编码。
一些实施例中,将第一标注文本字符串输入第一编码部分的第一特征提取部分,得到第一标注文本字符串对应的第一特征向量,进一步的,将第一标注文本字符串对应的第一特征向量输入第一特征融合部分进行拼接,可以是逐点相加,得到第一标注文本字符串对应的第一文本字符串编码。
其中,第一特征提取部分不同于现有技术中的文本识别模型的特征提取部分,本公开实施例中第一特征提取部分根据机器翻译(Transformer)模型的编码器得到,下述将对获取第一特征提取部分的过程进行介绍。
图3是本公开实施例提供的一种文本模型训练方法的流程示意图三。本实施例是在上述实施例的基础上,其中步骤S1021的一种可能实现方式如下述步骤S1021a~S1021c:
S1021a、将字符串样本输入预设模型的第三编码部分,得到字符串编码,字符串编码包括:字符位置编码和字符内容编码;
其中,预设模型的第三编码部分包括:字符内容编码部分和位置编码部分,位置编码部分包括:第三双向LSTM网络。
如图4所示,图4为本公开实施例提供的预设模型的网络结构示意图,预设模型基于Transformer模型进行构建,预设模型中包括第三编码部分和解码部分。其中,字符内容编码部分包括卷积层和全连接层,图中并未示出;位置编码部分包括双向LSTM网络。第三编码部分中还包括第三编码处理部分,第三编码处理部分与Transformer模型的编码器的网格结构相同。可以理解的是,预设模型中第三编码处理部分就是Transformer模型的编码器,预设模型的解码部分就是Transformer模型的解码器。
Transformer模型通常包括编码器和解码器,在一些实施方式中,Transformer模型的编码器包括多个基础模块一(示例性的,包括六个基础模块一),每个基础模块一主要包括多头自注意力层、跳跃连接、层归一化和前馈神经网络等网络层,在此不再赘述。Transformer模型的解码器包括多个基础模块二,基础模块二与基础模块一不同的是其包括两层多头自注意力层。Transformer的设计不仅的极大的加快网络训练和推理的时间,更是能有效提升各类任务的精度,其本是用于自然语言理解相关的任务中,但是由于其良好的性能,目前在计算机视觉相关的任务中也被广泛应用,同时在多个任务中取得了相当好的效果。
需要强调的是,本公开实施例中预设模型的位置编码部分应用了单层双向长短期记忆网络(Long Short-Term Memory,LSTM),能够得到字符串样本的位置编码,不同于现有的Transformer模型,该预设模型应用了单层双向LSTM,LSTM为循环神经网络的一种,能够用于建模字符串样本的位置信息。通过单层双向LSTM网络对字符串样本进行位置编码,以表征字符串样本中每个字符的位置信息,从而便于第三编码处理部分中多头自注意力层得到准确的注意力概率矩阵,进一步更加准确的预测得到字符串,提升了文本识别的准确度。其中,LSTM的输入包括表示每个字符位置的独热(one-hot)向量,输出字符串样本的位置编码。one-hot向量的实现方式可参照相关技术实现,在此不再赘述。
预设模型的输入包括词向量以及位置编码。输出为预测字符串。
一些实施例中,在基于Transformer模型构建初始模型之后,需要对初始模型进行训练,从而得到收敛的预设模型。初始模型和训练好的预设模型的网络结构一致,只是模型参数不同,可以理解的是,将初始模型训练成为收敛的预设模型的过程,实质上就是调整模型参数的过程。
首先,获取样本数据,样本数据中包括字符串样本和字符串样本对应的标签。本公开实施例中,从网络上爬取大量文本字符串作为字符串样本,文本字符串的来源包括但不限于文学作品等富有文字信息的内容。例如,从网络上爬取大量小说的文字内容信息,然后将小说中的每个句子作为一个字符串样本。
其次,构建字典。字典可以指示词向量与字词之间的映射关系,本公开实施例给出一种构建字典的方式:采用分词算法对字符串样本进行分词,得到多个字词,其中,每个字词都包含一个或多个字,然后将得到的所有字词进行去重处理,得到不包含重复宇词的字典,以便于得到的词典能够尽可能多的包含各种字词,应用范围更广。
再次,将所述样本数据划分为训练集和验证集。利用训练集针对初始语言模型进行训练,执行下述步骤S1021b。
S1021b、将字符位置编码的随机位置进行掩码处理,将掩码处理之后的字符串编码输入预设模型的第三解码部分,得到预测字符串;
其中,掩码处理是指按照一定比例随机将字符串样本中的部分文本字符进行掩盖,该方式仅掩盖原有字符,整个字符串样本的长度保持不变,也即字符数量不变。
一些实施例中,根据上述位置编码部分得到字符串样本的字符位置编码,然后将字符位置编码的随机位置进行掩码处理,将掩码处理后的字符串样本输入初始语言模型,再基于上述构建的字典,得到掩码处理之后的字符串编码所对应的概率矩阵,从该概率矩阵中确定最大概率对应的字符为掩盖的原有字符,从而得到预测字符串。
S1021c、基于字符串样本、预测字符串以及交叉熵损失函数,调整预设模型的参数,直到收敛,确定第三编码部分为第一特征提取部分。
一些实施例中,基于预测字符串和真实字符串,也就是输入初始语言模型的字符串样本,以及交叉熵损失函数,计算损失值。损失值可以用于衡量初始语言识别模型的文本识别结果(预测字符串)与真实文本之间的差异性,从而验证初始语言识别模型的识别精度,以训练出稳定度高的预设模型。在损失值大于或等于预设损失阈值的情况下,调整初始语言模型的参数;在损失值小于预设损失阈值的情况下,训练得到收敛的预设模型。
利用验证集对得到的预设模型进行验证,若验证合格,则得到训练后的预设模型。
进一步的,将训练后得到的收敛的预设模型中的第三编码部分,作为第一分支模型中第一编码部分的第一特征提取部分,从而训练用于识别文本图像中字符的第一分支模型,第一分支模型利用第一标注文本字符串(也是待识别文本图像样本中人工标注的文本字符串)并结合第二分支模型进行训练以实现从包含文本对象的待识别文本图像样本中准确得到文本信息,达到识别文本图像中字符的目的。
如图5所示,图5为本公开实施例提供的第一分支模型的网络结构示意图。图中第一分支模型包括:第一编码部分和第一解码部分;其中,第一编码部分包括:第一特征提取部分、第一特征融合部分;第一解码部分包括:门控循环单元GRU层和第一全连接层,第一特征提取部分与预设模型的第三编码部分结构相同,在此不作赘述。将第一标注文本字符串输入第一分支模型,输出得到第一预测文本字符串。
一些实施例中,第一编码部分还包括:第一两层双向LSTM。将第一文本字符串编码通过第一两层双向LSTM进行预处理,之后执行S1022。
其中,第一两层双向LSTM用于确定第一文本字符串编码中每个文本字符的位置编码,使得后续第一解码部分不再依赖于注意力机制,提升了识别文本图像中包括的文本字符的效率,并且使得第一文本字符串编码按照原始的第一标注文本字符串的上下语义信息进行排列,保持了第一标注文本字符串中每个文本字符的顺序。
S1022、将第一文本字符串编码输入第一解码部分的GRU和第一全连接层,得到第一预测文本字符串。
其中,第一解码部分包括:门控循环单元(Gated Recurrent Unit,GRU)层和第一全连接层。GRU是采用门控机制的思想改造循环神经网络(Recurrent Neural Network,RNN)的神经元,其具有更加简单、高效,且不容易过拟合的优点,能够长期保存第一文本字符串编码中的信息,且不会随时间而清除或因为与预测不相关而移除,保证第一预测文本字符串的准确性。
一些实施例中,本公开不同于现有的文本识别模型利用基于注意力机制的解码器对第一文本字符串编码进行解码,以一次输出为例,本公开根据上述第一两层双向LSTM确定得到的第一文本字符串编码中每个文本字符的位置编码,将第一解码部分输出的前一个第一预测文本字符串以及当前第一文本字符串编码作为此次第一解码部分的输入,从而得到当前的第一预测文本字符串。示例性的,第一解码部分输出的前一个第一文本字符串为“A”,当前第一文本字符串编码为“b”,则将“Ab”作为此次第一解码部分的输入,从而得到当前的第一预测文本字符串“AB”,实现了充分利用第一标注文本字符串的上下文语义信息,减少不必要的计算注意力得分的步骤,从而在保证文本图像识别精度的基础上,提升了文本图像识别的效率。
进一步的,根据第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值。第一损失值用于衡量第一预测文本字符串和第二标注文本字符串之间的差异性,从而验证第一分支模型的识别精度,以训练出稳定度高的第一分支模型。第一损失函数可以是多分类交叉熵损失函数。
S104、将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值。
如图6所示,图6为本公开实施例提供的第二分支模型的结构示意图。第二分支模型包括:第二编码部分和第二解码部分,其中,第二编码部分包括:第二特征提取部分、第二特征融合部分、背景纹理编码部分以及编码处理部分;第二解码部分包括:第二全连接层。将待识别文本图像输入第二分支模型,输出得到第二预测字符串。
一些实施例中,第二分支模型的第二编码部分可以包括:第二特征提取部分、第二特征融合部分,也能够从待识别文本图像样本中获取文本字符信息,得到第一图像内容编码,可以理解的是,在待识别文本图像样本没有背景纹理或背景纹理不明显的情况下,第二编码部分能够得到表征待识别文本图像中文本字符信息的第一图像内容编码。
需要说明的是,通常情况下,待识别文本图像样本中包含背景纹理,且背景纹理较复杂。本公开提供如图6所示的第二分支模型,其中第二编码部分中特征提取部分提取到的特征向量中,不仅包含待识别文本图像样本中的文本字符信息还包括一定的背景纹理信息,进一步得到的第一图像内容编码也是复杂,并不纯粹包括文本字符信息。而本公开中背景纹理编码部分可针对待识别文本图像样本提取其中包含的背景纹理信息,得到第一图像背景纹理编码,然后在编码处理部分基于第一图像内容编码和第一图像背景纹理编码,得到只包含文本字符信息的第二文本字符编码。
如图7所示,图7是本公开实施例提供的一种文本模型训练方法的流程示意图四。本实施例是在上述实施例的基础上,其中步骤S104的一种可能实现方式如下述步骤S1041~S1044:
S1041、将待识别文本图像样本输入第二编码部分的第二特征提取部分,得到第二特征向量,并将第二特征向量经过第二特征融合部分,得到第一图像内容编码。
一些实施例中,第二编码部分还包括:嵌入层;将待识别文本图像样本进行切分,并通过嵌入层转化为向量。嵌入层用于将数据转换(降维)为固定大小的特征表示(向量),以便于处理和计算。
一些实施例中,在将待识别文本图像样本经过嵌入层转化为向量之后,将待识别文本图像样本对应的向量输入第二编码部分的第二特征提取部分,得到第一图像内容编码,从而从待识别文本图像中提取文本字符特征。
在实际应用中,待识别文本图像样本通常都包含又背景纹理信息和文字信息,不同的待识别文本图像样本的文本信息不同,但背景纹理信息可能相同也可能不同,较为杂乱,因此,第一图像内容编码中包括待识别文本图像样本的文字信息以及背景纹理信息。
为了避免待识别文本图像样本的背景纹理信息对文本识别结果造成干扰,本公开实施例通过步骤S1042~S1043,从待识别文本图像样本中去除背景纹理信息。
S1042、将待识别文本图像样本输入第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码。
一些实施例中,在将待识别文本图像样本经过嵌入层转化为向量之后,将待识别文本图像样本对应的向量输入第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码,从而从待识别文本图像中提取图像背景纹理特征。
其中,背景纹理编码部分是残差网络(Resnet18)模型,Resnet18模型是经过大量公开标注图像识别数据集(例如,用于视觉对象识别软件研究的大型可视化数据库ImageNet)训练的到的。
Resnet18模型是自然场景图像分类网络,它有效的解决了当网络模型层数加深以后出现模型性能退化的问题,从而使得网络可以增加层数(加深)进行更加复杂的特征模式提取;它的主要核心是被称为残差块的结构,残差结构主要的特点是跨层跳跃连接,即一个残差块包括多个卷积层,其输入经过残差块之后的输出会与输入进行一次逐通道逐点相加操作,相当于输入有两个分支,一个经过残差块,一个直接快速绕过残差块,最后两个分支合并;Resnet根据卷积层数量有18、34、50、101和152等多个结构。本公开实施例中,利用Resnet18模型提取待识别文本图像样本中的背景纹理信息。
一些实施例中,Resnet18模型包含4个block块,每个block块包括若干卷积层,每个block的输出分别是原图的1/4、1/8、1/16和1/32,最后将每个block的输出先通过插值的方式缩放到同样大小,即为原图大小的1/32,然后再串联叠加,而每个block块的输出通道数量为128,则此处得到的通道数为512。
一些实施例中,在将待识别文本图像样本经过嵌入层转化为向量之后,将待识别文本图像样本对应的向量输入第二编码部分的背景纹理编码部分,从而从待识别文本图像中提取背景纹理特征。
S1043、将第一图像内容编码和第一图像背景纹理编码输入编码处理部分,得到第二文本字符串编码。
一些实施例中,在编码处理部分,将第一图像内容编码减去所述第一图像背景纹理编码,得到第二文本字符串编码。编码处理部分用于去除第一图像内容编码中包括的文本识别所不需要的第一图像背景纹理编码,从而得到干净的第二文本字符串编码,以提升文本识别的精度。
一些实施例中,第二编码部分还包括:第二两层双向长短期记忆网络LSTM;将第二文本字符串编码通过第二两层双向LSTM进行预处理。之后执行S1044。
其中,第二两层双向长短期记忆网络LSTM用于确定第二文本字符串编码中每个文本字符的位置编码,从而使得第二文本字符串编码按照上下文语义信息输入至第二全连接层,避免漏识别、多识别。
S1044、将第二文本字符串编码输入第二全连接层,得到第二预测文本字符串。
第二全连接层对第二文本字符串编码进行解码处理,从而得到第二预测文本字符串。
S106、基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值。
其中,第三损失值衡量第二预测文本字符串与第一标注文本字符串之间的差异性,从而验证第二分支模型的识别精度,以训练出稳定度高的第二分支模型。第三损失函数可以是联结时序分类(Connectionist Temporal Classification,CTC)损失函数。
S108、基于第一损失值、第二损失值以及第三损失值得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。
一些实施例中,将第一损失、第二损失值以及第三损失值相加得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直至收敛,保留第二分支模型作为文本识别模型,使得利用该文本识别模型准确识别文本图像中的文本字符。
综上,本公开实施例提供的文本识别模型的训练方法,首先将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,该第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值。然后将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;再基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值。最后,基于第一损失值、第二损失值以及第三损失值得到总损失值,根据总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。基于迁移学习思路将用于文字识别的第一分支模型迁移至用于图像识别的第二分支模型,减少了人工标注图像中字符的工作量,提升了识别图像中文本字符的效率和精度。
如图8所示,图8为本公开实施例提供的一种文本识别方法的流程示意图,该方法可以由文本识别装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法主要包括如下步骤S802~S804:
S802、获取待识别的文本图像。
S804、将所述待识别的文本图像输入文本识别模型中,得到第二预测文本字符串。
其中,文本识别模型通过上述文本识别模型的训练方法训练得到,在此不作赘述。
在正常使用文本识别模型时,输入待识别的文本图像,直接得到最终的第二预测文本字符串。由文本识别模型中第二编码部分得到第一图像内容编码和第一图像背景纹理编码,再经过编码处理部分得到干净的第二文本字符串编码。基于迁移学习思路训练的到的文本识别模型,根据第二文本字符串编码能够更准确的识别出待识别的文本图像中包含的文本信息,得到第二预测文本字符串,实现对文本图像的准确识别。本公开相较于现有技术,能够减少标注成本,实现快速准确的文本识别。
如图9所示,图9为本公开实施例提供的文本识别模型训练装置的示意性框图。本公开实施例提供一种文本识别模型训练装置,该装置包括:
第一损失值获取模块901,用于将第一标注文本字符串输入第一分支模型,得到第一标注文本字符串对应的第一文本字符串编码,以及第一标注文本字符串对应的第一预测文本字符串,并基于第一标注文本字符串、第一预测文本字符串以及第一损失函数,获取第一损失值,第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串;
第二损失值获取模块902,用于将待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于第一图像内容编码得到第二文本字符串编码,基于第一文本字符串编码、第二文本字符串编码以及第二损失函数,获取第二损失值;
第三损失值获取模块903,用于基于第一标注文本字符串和第二预测文本字符串以及第三损失函数,获取第三损失值;
训练模块,用于基于第一损失值、第二损失值以及第三损失值得到总损失值,基于总损失值调整第一分支模型和第二分支模型的参数,直到收敛,确定第二分支模型为文本识别模型。
作为本公开实施例一种可选的实施方式,第二分支模型包括:第二编码部分和第二解码部分,其中,第二编码部分包括:第二特征提取部分、第二特征融合部分、背景纹理编码部分以及编码处理部分;第二解码部分包括:第二全连接层;
第二损失值获取模块902,具体用于将待识别文本图像样本输入第二编码部分的第二特征提取部分,得到第二特征向量,并将第二特征向量经过第二特征融合部分,得到第一图像内容编码;
将待识别文本图像样本输入第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码;
将第一图像内容编码和第一图像背景纹理编码输入编码处理部分,得到第二文本字符串编码;
将第二文本字符串编码输入第二全连接层,得到第二预测文本字符串。
作为本公开实施例一种可选的实施方式,第二编码部分还包括:第二两层双向长短期记忆网络LSTM;
第二损失值获取模块902,还用于将第二文本字符串编码通过第二两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,第二分支模型还包括:嵌入层;
第二损失值获取模块902,还用于将待识别文本图像样本进行切分,并通过嵌入层转化为向量。
作为本公开实施例一种可选的实施方式,第二损失值获取模块902,具体用于在编码处理部分,将第一图像内容编码减去第一图像背景纹理编码,得到第二文本字符串编码。
作为本公开实施例一种可选的实施方式,第一分支模型包括:第一编码部分和第一解码部分;其中,第一编码部分包括:第一特征提取部分、第一特征融合部分;第一解码部分包括:门控循环单元GRU层和第一全连接层;
作为本公开实施例一种可选的实施方式,第一损失值获取模块901,具体用于将第一标注文本字符串输入第一编码部分的第一特征提取部分,得到第一特征向量将第一特征向量输入第一特征融合部分,得到第一标注文本字符串对应的第一文本字符串编码;
将第一文本字符串编码输入第一解码部分的GRU和第一全连接层,得到第一预测文本字符串。
作为本公开实施例一种可选的实施方式,第一编码部分还包括:第一两层双向LSTM;
第一损失值获取模块901,还用于将第一文本字符串编码通过第一两层双向LSTM进行预处理。
作为本公开实施例一种可选的实施方式,第一损失值获取模块901,还用于通过如下方式获取第一特征提取部分:
将字符串样本输入预设模型的第三编码部分,得到字符串编码,字符串编码包括:字符位置编码和字符内容编码;
将字符位置编码的随机位置进行掩码处理,将掩码处理之后的字符串编码输入预设模型的第三解码部分,得到预测字符串;
基于字符串样本、预测字符串以及交叉熵损失函数,调整预设模型的参数,直到收敛,确定第三编码部分为第一特征提取部分。
作为本公开实施例一种可选的实施方式,预设模型的第三编码部分包括:字符内容编码部分和位置编码部分,位置编码部分包括:第三双向LSTM网络。
本公开实施例所提供的文本识别模型训练装置可执行本公开实施例所提供的任意文本识别模型训练方法,具备执行方法相应的功能模块和有益效果。本公开装置实施例中未详尽描述的内容可以参考本公开任意方法实施例中的描述。
如图10所示,图10为本公开实施例提供的文本识别装置的示意性框图。本公开实施例提供一种文本识别装置,该装置包括:
获取模块1001,用于获取待识别的文本图像;
识别模块1002,用于将所述待识别的文本图像输入文本识别模型中,得到第二预测文本字符串。
其中,文本识别模型根据上述方法实施例中文本识别模型的训练方法训练得到,在此不作赘述。
本公开实施例所提供的文本识别装置可执行本公开实施例所提供的任意文本识别方法,具备执行方法相应的功能模块和有益效果。本公开装置实施例中未详尽描述的内容可以参考本公开任意方法实施例中的描述。
如图11所示,图11为本公开实施例提供的电子设备的结构框图。现将描述可以作为本公开的服务器或客户端的电子设备1100的结构框图,其是可以应用于本公开的各方面的硬件设备的示例。电子设备旨在表示各种形式的数字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图11所示,电子设备1100包括计算单元1101,其可以根据存储在只读存储器(ROM)1102中的计算机程序或者从存储单元1108加载到随机访问存储器(RAM)1103中的计算机程序,来执行各种适当的动作和处理。在RAM 1103中,还可存储设备1100操作所需的各种程序和数据。计算单元1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
电子设备1100中的多个部件连接至I/O接口1105,包括:输入单元1106、输出单元1107、存储单元1108以及通信单元1109。输入单元1106可以是能向电子设备1100输入信息的任何类型的设备,输入单元1106可以接收输入的数字或字符信息,以及产生与电子设备的用户设置和/或功能控制有关的键信号输入。输出单元1107可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元1104可以包括但不限于磁盘、光盘。通信单元1109允许电子设备1100通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算单元1101可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1101执行上文所描述的各个方法和处理。例如,在一些实施例中,文本识别模型训练方法或文本识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1108。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1102和/或通信单元1109而被载入和/或安装到电子设备1100上。在一些实施例中,计算单元1101可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行文本识别模型训练方法或文本识别方法。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
本公开实施例提供一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述方法实施例中文本识别模型的训练方法的各个过程,或者实现上述实施例中的文本识别方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,该计算机可读存储介质可以为只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本公开实施例提供一种计算程序产品,该计算机程序产品存储有计算机程序,计算机程序被处理器执行时实现实现上述方法实施例中文本识别模型的训练方法的各个过程,或者实现上述实施例中的文本识别方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本领域技术人员应明白,本公开的实施例可提供为方法、***、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
本公开中,处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本公开中,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
本公开中,计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (14)
1.一种文本识别模型的训练方法,其特征在于,包括:
将第一标注文本字符串输入第一分支模型,得到所述第一标注文本字符串对应的第一文本字符串编码,以及所述第一标注文本字符串对应的第一预测文本字符串,并基于所述第一标注文本字符串、所述第一预测文本字符串以及第一损失函数,获取第一损失值,所述第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串;
将所述待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于所述第一图像内容编码得到第二文本字符串编码,基于所述第一文本字符串编码、所述第二文本字符串编码以及第二损失函数,获取第二损失值;
基于所述第一标注文本字符串和所述第二预测文本字符串以及第三损失函数,获取第三损失值;
基于所述第一损失值、第二损失值以及所述第三损失值得到总损失值,基于总损失值调整所述第一分支模型和所述第二分支模型的参数,直到收敛,确定所述第二分支模型为所述文本识别模型。
2.根据权利要求1所述的方法,其特征在于,所述第二分支模型包括:第二编码部分和第二解码部分,其中,所述第二编码部分包括:第二特征提取部分、第二特征融合部分、背景纹理编码部分以及编码处理部分;所述第二解码部分包括:第二全连接层;
所述将所述待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,包括:
将所述待识别文本图像样本输入所述第二编码部分的第二特征提取部分,得到第二特征向量,并将所述第二特征向量经过所述第二特征融合部分,得到所述第一图像内容编码;
将所述待识别文本图像样本输入所述第二编码部分的背景纹理编码部分,得到第一图像背景纹理编码;
将所述第一图像内容编码和所述第一图像背景纹理编码输入所述编码处理部分,得到所述第二文本字符串编码;
将所述第二文本字符串编码输入所述第二全连接层,得到所述第二预测文本字符串。
3.根据权利要求2所述的方法,其特征在于,所述第二编码部分还包括:第二两层双向长短期记忆网络LSTM;
所述将所述第二文本字符串编码输入所述全连接层,得到所述第二预测文本字符串之前,还包括:
将所述第二文本字符串编码通过所述第二两层双向LSTM进行预处理。
4.根据权利要求2所述的方法,其特征在于,所述第二分支模型还包括:嵌入层;
所述将所述待识别文本图像样本输入所述第二编码部分的第二特征提取部分,得到第二特征向量之前,还包括:
将所述待识别文本图像样本进行切分,并通过所述嵌入层转化为向量。
5.根据权利要求2所述的方法,其特征在于,所述将所述第一图像内容编码和所述第一图像背景纹理编码输入所述编码处理部分,得到所述第二文本字符串编码,包括:
在所述编码处理部分,将所述第一图像内容编码减去所述第一图像背景纹理编码,得到所述第二文本字符串编码。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第一分支模型包括:第一编码部分和第一解码部分;其中,所述第一编码部分包括:第一特征提取部分、第一特征融合部分;所述第一解码部分包括:门控循环单元GRU层和第一全连接层;
所述将第一标注文本字符串输入第一分支模型,得到所述第一标注文本字符串对应的第一文本字符串编码,以及所述第一标注文本字符串对应的第一预测文本字符串,包括:
将所述第一标注文本字符串输入所述第一编码部分的第一特征提取部分,得到第一特征向量,将所述第一特征向量输入第一特征融合部分,得到所述第一标注文本字符串对应的第一文本字符串编码;
将所述第一文本字符串编码输入所述第一解码部分的GRU和第一全连接层,得到所述第一预测文本字符串。
7.根据权利要求6所述的方法,其特征在于,所述第一编码部分还包括:第一两层双向LSTM;
所述将所述第一文本字符串编码输入所述第一解码部分的GRU和第一全连接层,得到所述第一预测文本字符串之前,还包括:
将所述第一文本字符串编码通过所述第一两层双向LSTM进行预处理。
8.根据权利要求6所述的方法,其特征在于,还包括:
通过如下方式获取所述第一特征提取部分:
将字符串样本输入预设模型的第三编码部分,得到字符串编码,所述字符串编码包括:字符位置编码和字符内容编码;
将所述字符位置编码的随机位置进行掩码处理,将掩码处理之后的字符串编码输入所述预设模型的第三解码部分,得到预测字符串;
基于所述字符串样本、所述预测字符串以及交叉熵损失函数,调整所述预设模型的参数,直到收敛,确定所述第三编码部分为第一特征提取部分。
9.根据权利要求8所述的方法,其特征在于,所述预设模型的第三编码部分包括:字符内容编码部分和位置编码部分,所述位置编码部分包括:第三双向LSTM网络。
10.一种文本识别方法,其特征在于,包括:
获取待识别的文本图像;
将所述待识别的文本图像输入文本识别模型中,得到第二预测文本字符串,其中,所述文本识别模型通过上述权利要求1-权利要求8的任一方法训练得到。
11.一种文本识别模型的训练装置,其特征在于,所述文本识别模型的训练装置包括:
第一损失值获取模块,用于将第一标注文本字符串输入第一分支模型,得到所述第一标注文本字符串对应的第一文本字符串编码,以及所述第一标注文本字符串对应的第一预测文本字符串,并基于所述第一标注文本字符串、所述第一预测文本字符串以及第一损失函数,获取第一损失值,所述第一标注文本字符串为待识别文本图像样本对应的人工标注的文本字符串;
第二损失值获取模块,用于将所述待识别文本图像样本输入第二分支模型,得到第一图像内容编码以及第二预测文本字符串,并基于所述第一图像内容编码得到第二文本字符串编码,基于所述第一文本字符串编码、所述第二文本字符串编码以及第二损失函数,获取第二损失值;
第三损失值获取模块,用于基于所述第一标注文本字符串和所述第二预测文本字符串以及第三损失函数,获取第三损失值;
训练模块,用于基于所述第一损失值、第二损失值以及所述第三损失值得到总损失值,基于总损失值调整所述第一分支模型和所述第二分支模型的参数,直到收敛,确定所述第二分支模型为所述文本识别模型。
12.一种文本识别装置,其特征在于,所述装置包括:
获取模块,用于获取待识别的文本图像;
识别模块,用于将所述待识别的文本图像输入文本识别模型中,得到第二预测文本字符串,其中,所述文本识别模型通过上述权利要求1至9中任一项文本识别模型训练方法得到。
13.一种电子设备,包括:
处理器;以及
存储程序的存储器,
其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行权利要求1-9中任一项所述的文本识别模型训练方法,或权利要求10所述的文本识别方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-9中任一项所述的文本识别模型训练方法,或权利要求10所述的文本识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210660669.8A CN115019316B (zh) | 2022-06-13 | 2022-06-13 | 一种文本识别模型的训练方法、文本识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210660669.8A CN115019316B (zh) | 2022-06-13 | 2022-06-13 | 一种文本识别模型的训练方法、文本识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115019316A CN115019316A (zh) | 2022-09-06 |
CN115019316B true CN115019316B (zh) | 2024-06-25 |
Family
ID=83074926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210660669.8A Active CN115019316B (zh) | 2022-06-13 | 2022-06-13 | 一种文本识别模型的训练方法、文本识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115019316B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116229480B (zh) * | 2023-01-10 | 2024-05-28 | 北京百度网讯科技有限公司 | 文本识别模型训练方法、文本识别方法、装置及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269189A (zh) * | 2021-07-20 | 2021-08-17 | 北京世纪好未来教育科技有限公司 | 文本识别模型的构建方法、文本识别方法、装置及设备 |
CN113283427A (zh) * | 2021-07-20 | 2021-08-20 | 北京世纪好未来教育科技有限公司 | 文本识别方法、装置、设备及介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113435451A (zh) * | 2021-06-28 | 2021-09-24 | 华为技术有限公司 | 模型、模型的训练方法和装置、字符序列的识别和装置 |
CN114022882B (zh) * | 2022-01-04 | 2022-04-12 | 北京世纪好未来教育科技有限公司 | 文本识别模型训练、文本识别方法、装置、设备及介质 |
CN114372477B (zh) * | 2022-03-21 | 2022-06-10 | 北京百度网讯科技有限公司 | 文本识别模型的训练方法、文本识别方法及装置 |
-
2022
- 2022-06-13 CN CN202210660669.8A patent/CN115019316B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113269189A (zh) * | 2021-07-20 | 2021-08-17 | 北京世纪好未来教育科技有限公司 | 文本识别模型的构建方法、文本识别方法、装置及设备 |
CN113283427A (zh) * | 2021-07-20 | 2021-08-20 | 北京世纪好未来教育科技有限公司 | 文本识别方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115019316A (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2691214C1 (ru) | Распознавание текста с использованием искусственного интеллекта | |
CN110363252B (zh) | 趋向于端到端的场景文字检测与识别方法以及*** | |
CN113283427B (zh) | 文本识别方法、装置、设备及介质 | |
CN111738169B (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
CN114022882B (zh) | 文本识别模型训练、文本识别方法、装置、设备及介质 | |
CN113254654B (zh) | 模型训练、文本识别方法、装置、设备和介质 | |
CN110674673A (zh) | 一种关键视频帧抽取方法、装置和存储介质 | |
WO2023134088A1 (zh) | 视频摘要生成方法、装置、电子设备及存储介质 | |
US20220327816A1 (en) | System for training machine learning model which recognizes characters of text images | |
CN113836992A (zh) | 识别标签的方法、训练标签识别模型的方法、装置及设备 | |
US11568140B2 (en) | Optical character recognition using a combination of neural network models | |
CN114973229B (zh) | 文本识别模型训练、文本识别方法、装置、设备及介质 | |
CN117058595B (zh) | 视频语义特征和可扩展粒度感知时序动作检测方法及装置 | |
CN115019316B (zh) | 一种文本识别模型的训练方法、文本识别方法 | |
CN113221718A (zh) | 公式识别方法、装置、存储介质和电子设备 | |
CN114429635A (zh) | 书本管理方法 | |
CN113688955B (zh) | 文本识别方法、装置、设备及介质 | |
CN114581926A (zh) | 多行文本识别方法、装置、设备及介质 | |
CN114495101A (zh) | 文本检测方法、文本检测网络的训练方法及装置 | |
CN116798044A (zh) | 文本识别方法、装置,以及电子设备 | |
Chi et al. | Handwriting Recognition Based on Resnet-18 | |
CN111325068B (zh) | 基于卷积神经网络的视频描述方法及装置 | |
CN117953543B (zh) | 基于多元文本的人物交互检测方法、终端及可读存储介质 | |
CN113554026B (zh) | 电力设备铭牌识别方法、识别装置及电子设备 | |
CN117407557B (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 |