一种文本识别模型训练及文本识别方法、装置及介质与流程

文档序号:21547847发布日期:2020-07-17 17:59阅读:142来源:国知局
一种文本识别模型训练及文本识别方法、装置及介质与流程

本申请涉及机器学习领域,尤其涉及一种文本识别模型训练及文本识别方法、装置及介质。



背景技术:

如今,随着互联网的快速发展,通常需要快速获取语音、图片中的文本,在文本识别场景中,所使用的文本识别模型通常是卷积神经网络和循环神经网络的组合,通过前者可以确定多个特征向量,后者可以进行序列特征的传递,进而预测各个序列针对各个字符的取值概率。其中,由于卷积神经网络的输出维度是固定的,因此确定到的特征向量的数量是固定的,进一步的,文本识别模型预测文本的输出步长是固定的,而在模型实际使用中,语音或图片中一个文字占用的语音长度或图片宽度是随机的,而特征向量的数量是固定的,这有可能导致被识别语音或图片中同一个字符被拆分成两个对应的特征向量,或者多个文字对应一个共同的特征向量,进而导致模型不能根据提取到的特征进行准确的字符预测,影响文本识别模型的识别准确度。



技术实现要素:

本申请提供一种文本识别模型训练及文本识别方法、装置及介质,通过本申请可以提高训练得到的文本识别模型的文本识别准确度。

本申请实施例第一方面提供了一种文本识别模型方法,包括:

确定样本识别对象的分列特征矩阵;

根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵,所述多个字符预测矩阵包括的矩阵列的数量不全相同,所述字符预测矩阵的每个矩阵列在所述样本识别对象中均有对应的待识别单元,所述字符预测矩阵的矩阵列包含所述待识别单元针对至少一个预测对象的取值概率;

根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数;

根据所述模型预测损失参数调节所述文本识别模型的模型参数。

可选的,所述确定样本识别对象的分列特征矩阵包括:

对所述样本识别对象进行卷积特征提取,得到所述样本识别对象的卷积特征矩阵,所述卷积特征矩阵包含多个矩阵列;

将所述卷积特征矩阵中的各个矩阵列,按照在所述卷积特征矩阵中的排布顺序,依次作为循环神经网络在不同时刻的输入序列,输入所述循环神经网络;

根据所述循环神经网络针对不同输入序列的输出序列,确定所述分列特征矩阵;所述分列特征矩阵中的目标矩阵列融合有所述分列特征矩阵中,除所述目标矩阵列以外的矩阵列的特征。

可选的,所述字符预测矩阵包含第一字符预测矩阵和第二字符预测矩阵;

所述根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵包括:

将所述分列特征矩阵输入字符分类网络,得到所述待识别对象的所述第一字符预测矩阵;

对所述第一字符预测矩阵中每相邻第一数量的矩阵列,进行降维处理,得到所述第二字符预测矩阵。

可选的,所述第一字符预测矩阵中矩阵列的数量是所述第一数量的整倍数,且所述第一数量为大于1的整数。

可选的,所述字符预测矩阵包含第三字符预测矩阵和第四字符预测矩阵:

所述根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵包括:

对所述分列特征矩阵中每相邻第二数量的矩阵列,进行降维处理,得到所述样本识别对象的降维特征矩阵;

将所述分列特征矩阵输入字符分类网络,得到所述第三字符预测矩阵;

将所述降维特征矩阵输入字符分类网络,得到所述第四字符预测矩阵。

可选的,所述分列特征矩阵中矩阵列的数量是所述第二数量的整倍数,且所述第二数量为大于1的整数。

可选的,所述降维处理包括平均降维处理或最大值降维处理中的一种。

可选的,所述根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数包括:

根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数;

根据所述分项预测损失参数,确定所述模型预测损失参数。

可选的,所述根据所述分项预测损失参数,确定所述模型预测损失参数包括:

按照各个所述分项预测损失参数各自的损失权重,对所述分项预测损失参数进行加权求和,得到所述模型预测损失参数。

可选的,所述根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数包括:

从候选序列中确定满足所述标注标签序列的匹配条件的至少一个目标预测序列,所述候选序列是所述字符预测矩阵的矩阵列中取值概率对应的所述预测对象构成的序列;

根据所述字符预测矩阵的矩阵列中的取值概率,确定所述目标预测序列对应的第一预测概率;

根据所述第一预测概率,确定所述分项预测损失参数。

可选的,所述标注标签序列的匹配条件包括:

在所述候选序列包含文本字符的情况下,将所述候选序列中连续且相同的文本字符删除至一个后得到的序列,与所述标注标签序列相同;

或是,在所述候选序列包含文本字符和虚拟间隔符的情况下,将所述候选序列中连续且相同的文本字符删除至一个,并将所述虚拟间隔符删除后得到的序列,与所述标注标签序列相同。

本申请实施例第三方面提供了一种文本识别方法,包括:

将目标识别对象输入如上述第一方面或其可选的任一种文本识别模型训练方法训练得到的文本识别模型;

获取所述文本识别模型输出的文本识别结果。

本申请实施例第三方面提供了一种文本识别模型装置,包括:

特征确定模块,用于确定样本识别对象的分列特征矩阵;

字符预测模块,用于根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵,所述多个字符预测矩阵包括的矩阵列的数量不全相同,所述字符预测矩阵的每个矩阵列在所述样本识别对象中均有对应的待识别单元,所述字符预测矩阵的矩阵列包含所述待识别单元针对至少一个预测对象的取值概率;

损失确定模块,用于根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数;

参数调节模块,用于根据所述模型预测损失参数调节所述文本识别模型的模型参数。

可选的,所述特征确定模块具体用于:

对所述样本识别对象进行卷积特征提取,得到所述样本识别对象的卷积特征矩阵,所述卷积特征矩阵包含多个矩阵列;

将所述卷积特征矩阵中的各个矩阵列,按照在所述卷积特征矩阵中的排布顺序,依次作为循环神经网络在不同时刻的输入序列,输入所述循环神经网络;

根据所述循环神经网络针对不同输入序列的输出序列,确定所述分列特征矩阵;所述分列特征矩阵中的目标矩阵列融合有所述分列特征矩阵中,除所述目标矩阵列以外的矩阵列的特征。

可选的,所述字符预测矩阵包含第一字符预测矩阵和第二字符预测矩阵;

所述字符预测矩阵,具体用于:

将所述分列特征矩阵输入字符分类网络,得到所述待识别对象的所述第一字符预测矩阵;

对所述第一字符预测矩阵中每相邻第一数量的矩阵列,进行降维处理,得到所述第二字符预测矩阵。

可选的,所述第一字符预测矩阵中矩阵列的数量是所述第一数量的整倍数,且所述第一数量为大于1的整数。

可选的,所述字符预测矩阵包含第三字符预测矩阵和第四字符预测矩阵:

所述字符预测模块具体用于:

对所述分列特征矩阵中每相邻第二数量的矩阵列,进行降维处理,得到所述样本识别对象的降维特征矩阵;

将所述分列特征矩阵输入字符分类网络,得到所述第三字符预测矩阵;

将所述降维特征矩阵输入字符分类网络,得到所述第四字符预测矩阵。

可选的,所述分列特征矩阵中矩阵列的数量是所述第二数量的整倍数,且所述第二数量为大于1的整数。

可选的,所述降维处理包括平均降维处理或最大值降维处理中的一种。

可选的,所述损失确定模块具体用于:

根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数;

根据所述分项预测损失参数,确定所述模型预测损失参数。

可选的,所述损失确定模块具体用于:

所述根据所述分项预测损失参数,确定所述模型预测损失参数包括:

按照各个所述分项预测损失参数各自的损失权重,对所述分项预测损失参数进行加权求和,得到所述模型预测损失参数。

可选的,所述损失确定模块具体用于:

所述根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数包括:

从候选序列中确定满足所述标注标签序列的匹配条件的至少一个目标预测序列,所述候选序列包括至少一个序列对象,所述序列对象是所述字符预测矩阵的矩阵列中取值概率对应的所述预测对象;

根据所述字符预测矩阵的矩阵列中的取值概率,确定所述目标预测序列对应的第一预测概率;

根据所述第一预测概率,确定所述分项预测损失参数。

可选的,所述标注标签序列的匹配条件包括:

在所述候选序列仅包含文本字符的情况下,将所述候选序列中连续且相同的文本字符删除至一个后得到的序列,与所述标注标签序列相同;

或是,在所述候选序列包含文本字符和虚拟间隔符的情况下,将所述候选序列中连续且相同的文本字符删除至一个,并将所述虚拟间隔符删除后得到的序列,与所述标注标签序列相同。

本申请实施例第四方面提供了一种文本识别装置,所述装置包括:

输入模块,用于将目标识别对象输入如上述第一方面或其可选的任一种文本识别模型训练方法训练得到的文本识别模型;

获取模块,用于获取所述文本识别模型输出的文本识别结果。

本申请实施例第五方面提供了一种文本识别模型训练装置,包括:处理器和存储器;

所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行本申请实施例中上述第一方面或其可选的任一种文本识别模型训练方法。

本申请实施例第六方面提供了一种文本识别装置,包括:处理器和存储器;

所述处理器与存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行本申请实施例中上述第二方面或其可选的任一种文本识别方法。

本申请实施例第七方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述任一方面中的方法。

本申请实施例中,确定样本识别对象的分列特征矩阵后,根据分列特征矩阵确定样本识别对象的多个字符预测矩阵,进而根据样本识别对象的标注标签序列,以及多个字符预测矩阵确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数。其中,多个字符预测矩阵包括的矩阵列的数量不全相同,字符预测矩阵中不同的矩阵列与样本识别对象中不同的待识别单元一一对应,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率。通过样本识别对象多个不同尺度的字符预测矩阵对文本识别模型进行训练,提高了文本识别模型对不同尺度的文本字符的识别能力,从而提高了文本识别模型的识别准确度。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种文本识别模型的网络示意图;

图2是本申请实施例提供的一种特征向量的感受野示意图;

图3是本申请实施例提供的又一种文本识别模型的网络示意图;

图4是本申请实施例提供的一种文本识别模型训练方法的流程示意图;

图5是本申请实施例提供的一种字符预测矩阵的示意图;

图6是本申请实施例提供的另一种文本识别模型训练方法的流程示意图;

图7是本申请实施例提供的一种池化层示意图;

图8是本申请实施例提供的一种均值池化示意图;

图9是本申请实施例提供的一种均值池化示意图;

图10是本申请实施例提供的另一种文本识别模型训练方法的流程示意图;

图11是本申请实施例提供的另一种池化层示意图;

图12为本申请实施例提供的一种文本识别模型训练装置的结构示意图;

图13是本申请实施例提供的另一种文本识别模型训练装置的结构示意图;

图14是本申请实施例提供的一种文本识别装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请的文本识别模型训练方法是基于ctc(connectionisttemporalclassification,连接主义时间分类)算法的模型训练方法,在介绍本申请提供的文本识别模型训练方法之前,首先对ctc的基本原理进行简单介绍。

在文本识别模型中,常用的文本识别模型包含卷积神经网络(convolutionalneuralnetwork,cnn)、循环神经网络(recurrentneuralnetwork,rnn)和分类网络(如softmax层),通过cnn可以提取待识别对象的卷积特征,并确定出待识别对象的特征向量,通过rnn可以实现对不同特征向量的状态信息的传递,进而得到预测结果,即识别到的待识别对象中包含的文本字符。

参见图1,图1是本申请实施例提供的一种文本识别模型的网络示意图,图1所示的是一个ocr(opticalcharacterrecognition,光学字符识别)场景中,对图片包含的文本进行识别的模型,在对该模型进行训练的过程中,首先对样本图片进行标注,将样本图片实际包含的文本字符,作为样本图片的标注,然后将样本图片输入cnn后,cnn对样本图片进行卷积特征提取,得到样本图片的特征矩阵,该特征矩阵可以携带样本图片的纹理特征、颜色特征、以及其他抽象的多种卷积特征;进而根据样本图片的特征矩阵,确定出多个特征向量,将特征向量输入rnn后,rnn对特征向量进行状态信息的传递,输出对应的切片特征;将切片特征输入softmax层针对各个特征向量进行文本预测,得到预测矩阵,预测矩阵的各个矩阵列包含针对不同文本字符的预测概率,将预测矩阵中各个矩阵列中最大的预测概率对应的文本字符输出,作为最终的预测结果。进而根据预测矩阵和样本图片的标注,确定损失函数,并通过误差(backpropagation,bp)反向传播等算法,实现对该模型的训练和优化,最终得到能对待识别图片中包含的文本字符进行预测的文本识别模型。

上述过程中,样本图片的特征矩阵的列数与输出步长(即预测矩阵对应的文本字符的数目)相同,样本图片的特征矩阵的行数与样本图片的卷积特征的特征维度相同。在根据样本图片的特征矩阵确定多个特征向量的过程中,可以将特征矩阵的各个列分别作为不同的特征向量,每个列均包含所有特征维度的特征数据。由于rnn中的卷积层、池化层和激活函数在局部区域上执行,具有平移不变性,因此,特征矩阵的每列(即一个特征向量)对应于样本图像的一个矩形区域(称为感受野),并且这些矩形区域在样本图像中从左到右依次排布的顺序,与特征矩阵中对应的特征向量从左到右排布的顺序相同,每个特征向量关联一个感受野。参见图2,图2是本申请实施例提供的一种特征向量的感受野示意图,图2示出了图1中的样本图片对应的感受野,如图所示,样本图片中四个虚线框分别表示四个感受野,四个特征向量与四个感受野的对应关系可以通过图2中的箭头表示。进而rnn输出的切片特征也分别与样本图片中的感受野相对应,softmax层输出的预测矩阵中的各个列也分别与样本图片中的感受野相对应。例如,图1中的样本图片的最终经过softmax层分类后,输出的预测矩阵可以包括四列,预测矩阵中从左到右各个列分别表示图2中感受野1、感受野2、感受野3和感受野4针对不同文本字符的预测概率。最后,上述文本识别模型将预测矩阵中每一列中预测概率最大的文本字符对应输出,例如,针对图1输出的文本字符依次是“h”、“h”、“e”、“r”,即图2中感受野1对应的文本字符是“h”,感受野2对应的文本字符是“h”,感受野3对应的文本字符是“e”,感受野4对应的文本字符是“r”。但事实上,图1的样本图片的标注对应的文本字符依次是“h”、“e”、“r”。因此上述模型存在预测输出的文本字符,与输入的待识别图片中实际存在的文本字符难以对齐的问题。同样,在音频文件中,由于字符读音长度不同、人的讲话快慢不同等原因,在对音频文件进行文本识别的场景中,也存在模型预测输出的文本字符,与音频文件中实际存在的文本字符难以对齐的问题。

ctc算法是为了解决上述对齐问题的一种算法,ctc算法中引入了一种空白符,这种空白符不同于文档中的空格、间隔符等符号,是一种逻辑上的分隔符。参见图3,图3是本申请实施例提供的又一种文本识别模型的网络示意图,所述文本识别模型包括cnn、rnn、分类层(如softmax层)和转录层。

在对识别模型进行训练的过程中,首先对样本图片进行标注,将样本图片实际包含的样本字符,作为样本图片的标注。然后根据文本识别模型的输出步长,基于ctc算法对样本图片的标注中重复的文本字符之间插入空白符,例如,若样本图片的标注是“too”,输出步长为5,用“-”标识空白符,插入空白符之后的标注可以是“t-o-o”、“-to-o-”、“tto-o”等形式中的一种。标注结束后,将样本图片输入cnn、rnn以及分类层的组合之后,得到预测矩阵,该预测矩阵中各个列包含针对不同文本字符的预测概率,以及针对空白符的预测概率,进而,基于ctc算法中的转录层进行解码,确定预测矩阵对应的各个文本字符的组合中,与样本图片的标注相匹配的文本字符的目标组合出现的概率,将上述目标组合出现的概率之和,确定为该模型预测出样本图片的标注的概率。其中,若将文本字符的组合中的最前一个空白符之前的多个连续且相同的文本字符删除至一个、将最后一个空白符之后的多个连续且相同的文本字符删除至一个,将任意两个空白符之间的相同的文本字符删除至一个,再将空白符删除,可以得到样本图片的标注,则确定该文本字符的组合与样本图片的标注相匹配,为目标组合。通过预测出样本图片的标注的概率,确定目标组合的损失函数,进而通过误差反向传播算法,实现对该模型的训练和优化,最终可以得到对待识别图片中包含的文本字符的多种组合进行预测和解码,输出待识别的图片中包含的文本字符的文本识别模型。

上述过程中,通过在样本图片的标注中插入空白符,使文本识别模型学习到空白符的特征,从而可以输出包含空白符的文本字符的组合,进而通过转录层对文本字符的组合解码的过程,解决了由于多个感受野对应一个文本字符,导致的预测输出中包含多个连续重复文本字符的问题。

下面介绍本申请提供的文本识别模型的具体实现方式,本申请中的文本识别模型可以应用在图片中文本的识别场景、音频文件中文本的识别场景、视频文件中文本的识别场景中、以及其他形式对象的文本识别场景中。

参见图4,图4是本申请实施例提供的一种文本识别模型训练方法的流程示意图,如图所示,所述方法可以包括以下步骤:

s401,确定样本识别对象的分列特征矩阵。

其中,在对图像文本识别模型的训练中,样本识别对象可以是预先有标注标签序列的样本识别图片,在对音频文本识别模型的训练中,样本识别对象可以是预先有标注标签序列的样本音频文件。标注标签序列是为样本识别对象标注的,包含样本识别对象中实际对应的文本字符。

具体的,可以对样本识别对象进行卷积特征提取,得到样本识别对象的卷积特征矩阵,该卷积特征矩阵包含多个矩阵列;将卷积特征矩阵包含的各个矩阵列,按照在卷积特征矩阵中的排布顺序(例如可以按照在卷积特征矩阵中从左到右的顺序),依次作为循环神经网络在不同时刻的输入序列,依次输入循环神经网络;根据循环神经网络针对不同输入序列的输出序列,确定分列特征矩阵,对于分列特征矩阵中的目标矩阵列(指的是分列特征矩阵中的任意或是按照一定规则确定的一个矩阵列),均融合有分列特征矩阵中,除目标矩阵列以外的矩阵列的特征。一种可选的实现方式中,循环神经网络是多组双层的双向长短时记忆网络(bidirectionalshorttmememory,bilstm),将卷积特征阵列中的各个矩阵列输入bilstm后,bilstm可以捕获长距离的信息,因此可以融合距离较远的矩阵列的特征,而双向的结构可以对上文和下文双向的特征均进行融合。多组的bilstm可以累积融合到更深层次的特征,进而根据上述融合到的全面的特征进行更准确的文本识别。

s402,根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵,所述多个字符预测矩阵包括的矩阵列的数量不全相同,所述字符预测矩阵的每个矩阵列在所述样本识别对象中均有对应的待识别单元,所述字符预测矩阵的矩阵列包含所述待识别单元针对至少一个预测对象的取值概率。

其中,字符预测矩阵中不同的矩阵列与所述样本识别对象中不同的待识别单元一一对应,也就是说,字符预测矩阵中每个矩阵列在样本识别对象中均有唯一对应的待识别单元。分列特征矩阵中各个矩阵列包含不同抽象特征维度下的特征,可以根据各个矩阵列包含的特征对待识别对象进行预测,即确定待识别对象的字符预测矩阵。字符预测矩阵中的各个矩阵列分别对应待识别对象中不同的待识别单元,这里待识别单元也就是待识别对象中的感受野,若待识别对象是图片,待识别单元可以是图片中一定宽度的图像片段(如图2中感受野的示例中,各个感受野即为一个待识别单元),若待识别对象是语音,待识别单元可以是语音中一定时长的语音片段。也就是说,字符预测矩阵中矩阵列的数量影响输入转录层文本字符的组合的长度,进而也会影响转录层的解码结果,因此可以确定多个包含矩阵列数量不全相同的字符预测矩阵,提高不同长度转录层输入数据的多样性,也就提高了转录层解码的多样性,进而提高了对待识别对象实际标注标签序列的覆盖率。

其中,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率,这里,预测对象可以包括文字符和/或虚拟间隔符(虚拟间隔符即上文提到的空白符)。字符预测矩阵的各个矩阵列中取值概率的和为1。

一种可选的实现中,可以直接将分列特征矩阵输入字符分类网络中,得到待识别对象的第一字符预测矩阵,将第一字符预测矩阵中每相邻第一数量的矩阵列,进行平均降维处理,得到第二字符预测矩阵,进而将第一字符预测矩阵和第二字符预测矩阵,作为待识别对象不同的字符预测矩阵。其中,第一字符预测矩阵中矩阵列的数量是第一数量的整倍数,且第一数量为大于1的整数。第一数量可以取多个不同的值,根据多个第一数量的不同,对第一字符预测矩阵进行多次降维处理,得到多个第二字符预测矩阵。具体实现中,可以通过在文本识别模型的分类层后,连接池化层,实现对第一字符预测矩阵的降维处理。

另一种实现方式中,可以对分列特征矩阵中每相邻第二数量的矩阵列,进行降维处理,得到样本识别对象的降维特征矩阵;将分类特征矩阵输入字符分类网络,得到第三字符预测矩阵;将降维特征矩阵输入字符分类网络,得到第四字符预测矩阵,将第三字符预测矩阵和第四字符预测矩阵,作为待识别对象不同的字符预测矩阵。其中,分列特征矩阵中矩阵列的数量是第二数量的整倍数,且第二数量为大于1的整数。第二数量可以取多个不同的值,根据多个第二数量的不同,对分类特征矩阵进行多次降维处理,得到多个降维特征矩阵。具体实现中,可以通过在文本识别模型的rnn层之前,连接池化层,得到不同尺度的特征矩阵(包括分列特征矩阵和降维特征矩阵),并分别将不同的特征矩阵依次经过rnn、分类层的处理,得到不同尺度的字符预测矩阵。

s403,根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数。

这里,根据样本识别对象的标注标签序列,确定各个字符预测矩阵对应的分项预测损失参数,进而根据各个分项预测损失参数,确定模型预测损失参数。

一种实现方式中,可以直接将各个分项预测损失参数相加,得到模型预测损失参数;另一种实现方式中,预先为各个分项预测损失参数设置损失权重,从而按照各个分项预测损失参数各自的损失权重,对分项预测损失参数进行加权求和,得到模型预测损失参数。

在对分项预测损失参数的确定过程中,首先确定各个字符预测矩阵的矩阵列中,各个取值概率所对应的预测对象构成的候选序列,进而从候选序列中确定出满足样本识别对象的标注标签序列的匹配条件的至少一个目标预测序列,根据字符预测矩阵的矩阵列中的取值概率,确定目标预测序列对应的第一预测概率,进而根据第一预测概率,确定分项预测损失参数。在目标预测序列的第一预测概率是目标预测序列包含的预测对象各自的取值概率的乘积。其中,分项预测损失参数可以通过第一预测概率的负最大似然函数表示,为了计算方便,可以对似然函数取对数进行计算,最小化上述分项预测损失参数,并通过误差反向传播调节模型参数。

其中,标注标签序列的匹配条件可以是在候选序列仅包含文本字符的情况下,将候选序列中连续且相同的文本字符删除至一个后得到的序列,与标注标签序列相同;或是,在候选序列包含文本字符和虚拟间隔符的情况下,将候选序列中连续且相同的文本字符删除至一个,并将虚拟间隔符删除后得到的序列,与标注标签序列相同。

举例来说,参见图5,图5是本申请实施例提供的一种字符预测矩阵的示意图,如图5所示,所述字符预测矩阵包含四个矩阵列,每个矩阵列中包含该矩阵列对应的待识别对象针对“a”、“b”和“-”的取值概率,其中“-”表示虚拟间隔符。该字符预测阵列的候选序列包括aab-、aaaa、baa-、bbaa,以及其他由“a”、“b”和“-”组成的长度为四位的序列,由于第四列矩阵列中“b”对应的取值概率为零,上述候选序列中不包含最后一位是“b”的序列。若标注标签序列是ab,那么根据上述匹配条件可知,对于候选序列aab-,若将其包含的虚拟间隔符之前连续且重复的两个a删除至一个,并将虚拟间隔符删除后,得到的序列是ab,和标准标注序列相同,说明满足上述匹配条件,同理,候选序列-aab、aa-b等候选序列均满足上述匹配条件,均可以作为目标预测序列。而对于候选序列bbaa,将其包含的连续且重复的两个b删除至一个,连续且重复的两个a删除至一个,得到的序列是ba,和标准标注序列相同,说明不满足上述匹配条件,不能作为目标预测序列。

s404,根据所述模型预测损失参数调节所述文本识别模型的模型参数。

其中,可以通过误差反向传播算法调节文本识别模型的模型参数,调节的模型参数可以包括文本识别模型各个网络层的权重矩阵等。具体实现中,可以通过多个样本识别对象对文本识别模型参数进行训练,一种实现方式中,可以针对每个样本识别对象的模型预测损失参数,均通过误差反向传播算法对模型参数进行调节。另一种实现方式中,可以将各个样本识别对象的模型预测损失参数相加得到总损失参数,针对该总损失参数,通过误差反向传播算法对模型参数进行调节。在误差反向传播算法中,通过反向传播误差损失信息来更新初始的文本识别模型中参数,从而使误差损失收敛,以误差损失为主导的反向传播运动,可以实现在训练过程中修正初始化的分类层中的参数、rnn的参数和cnn的参数,使得模型的重建误差损失越来越小。

本申请实施例中,确定样本识别对象的分列特征矩阵后,根据分列特征矩阵确定样本识别对象的多个字符预测矩阵,进而根据样本识别对象的标注标签序列,以及多个字符预测矩阵确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数。其中,多个字符预测矩阵包括的矩阵列的数量不全相同,字符预测矩阵中不同的矩阵列与样本识别对象中不同的待识别单元一一对应,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率。通过样本识别对象多个不同尺度的字符预测矩阵对文本识别模型进行训练,提高了文本识别模型对不同尺度的文本字符的识别能力,从而提高了文本识别模型的识别准确度。

参见图6,图6是本申请实施例提供的另一种文本识别模型训练方法的流程示意图,如图所示,所述方法可以包括以下步骤:

s601,确定样本识别对象的分列特征矩阵。

s602,将所述分列特征矩阵输入字符分类网络,得到所述待识别对象的所述第一字符预测矩阵。

s603,将所述第一字符预测矩阵中每相邻第一数量的矩阵列,进行降维处理,得到所述第二字符预测矩阵。

这里,对第一字符预测矩阵中每相邻第一数量的矩阵列进行的降维处理,可以通过池化层实现,上述降维处理可以包括平均降维处理或最大值降维处理中的一种。其中,池化层的降维参数,即第一数量的取值与被池化的字符预测矩阵的矩阵列的数量有关,由于池化层是对第一字符预测矩阵中相邻第一数量的矩阵列进行降维,因此,第一字符预测矩阵中矩阵列的数量可以被第一数量整除,且第一数量不等于1。参见图7,图7是本申请实施例提供的一种池化层示意图,图7中示出了在分类层(softmax层)后连接了一个池化层,通过该池化层实现了将包含五个矩阵列的第一字符预测矩阵降维成包含四个矩阵列的第二字符预测矩阵。

一种实现方式中,可以在文本识别模型中的分类层后,连接均值池化层,以实现平均降维处理;可选的,对第一字符预测矩阵的平均降维处理可以是针对不同降维参数(第一数量)的平均降维处理,可以在文本识别模型的分类层后分别连接多个降维参数不同的均值池化层。在各个均值池化层后分别连接转录层,实现针对各个字符预测矩阵的解码。

参见图8,图8是本申请实施例提供的一种均值池化示意图,如图所示,第一字符预测矩阵包含8列的矩阵列,那么第一数量的取值可以是2、4,若第一数量为2,则第一字符预测矩阵被平均降维处理成包含4列的矩阵列的第二字符预测矩阵。参见图9,图9是本申请实施例提供的一种均值池化示意图,图9中是图8对应的示例中,第一数量取4的情况下的平均降维示意图,如图所示,若第一数量为4,则第一字符预测矩阵被平均降维处理成包含6列的矩阵列的第二字符预测矩阵。

另一种实现方式中,可以在文本识别模型中的分类层后,连接最大值池化层,以实现最大值降维处理;可选的,对第一字符预测矩阵的最大值降维处理可以是针对不同降维参数(第一数量)的最大值降维处理,可以在文本识别模型的分类层后分别连接多个降维参数不同的最大值池化层。在各个最大值池化层后分别连接转录层,实现针对各个字符预测矩阵的解码。

又一种实现方式中,可以在文本识别模型中的分类层后,分别连接平均池化层和最大值池化层,分别实现平均降维处理和最大值降维处理,在各个平均池化层和最大值池化层后分别连接转录层,实现针对各个字符预测矩阵的解码。其中,平均池化层对应的第一数量和最大池化层对应的第一数量,二者的取值可以相同,也可以不同。可选的,分类层后连接的平均池化层可以包含多个,各个平均池化层对应的第一数量彼此不同。可选的,分类层后连接的最大值池化层可以包含多个,各个最大值池化层对应的第一数量彼此不同。

s604,分别确定第一字符预测矩阵和第二字符预测矩阵各自对应的分项预测损失参数。

s605,将各个分项预测损失参数相加得到模型预测损失参数。

s606,根据模型预测损失参数对文本识别模型的模型参数进行调节。

其中,步骤s601-s602以及步骤s604-s606可参阅图4对应的实施例中的相关描述,此处不再赘述。

本申请实施例中,确定样本识别对象的分列特征矩阵后,根据分列特征矩阵确定样本识别对象的第一字符预测矩阵,并对第一字符预测矩阵进行降维处理得到第二字符预测矩阵,进而根据样本识别对象的标注标签序列,以及第一字符预测矩阵和第二字符预测矩阵确定文本识别模型的模型预测损失参数,并根据模型预测损失函数调节文本识别模型的模型参数。其中,多个字符预测矩阵包括的矩阵列的数量不全相同,字符预测矩阵中不同的矩阵列与样本识别对象中不同的待识别单元一一对应,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率。通过对第一字符预测矩阵的降维处理,得到样本识别对象多个不同尺度的字符预测矩阵对文本识别模型进行训练,提高了文本识别模型对不同尺度的文本字符的识别能力,从而提高了文本识别模型的识别准确度。

参阅图10,图10是本申请实施例提供的另一种文本识别模型训练方法的流程示意图,如图所示,所述方法可以包括以下步骤:

s1001,确定样本识别对象的分列特征矩阵。

s1002,对所述分列特征矩阵中每相邻第二数量的矩阵列,进行降维处理,得到所述样本识别对象的降维特征矩阵。

这里,对分列特征矩阵中每相邻第二数量的矩阵列进行的降维处理,可以通过池化层实现,上述降维处理可以包括平均降维处理或最大值降维处理中的一种。其中,池化层的降维参数,即第二数量的取值与被池化的分列特征矩阵的矩阵列的数量有关,由于池化层是对分列特征矩阵中相邻第二数量的矩阵列进行降维,因此,分列特征矩阵中矩阵列的数量可以被第二数量整除,且第二数量不等于1。参见图11,图11是本申请实施例提供的另一种池化层示意图,图11中使出了在cnn之后连接了一组池化层、rnn、分类层和转录层,通过该池化层实现了将包含五个矩阵列的分类特征矩阵降维成包含四个矩阵列的降维特征矩阵。

一种实现方式中,可以在文本识别模型的cnn之后,rnn之前,连接平均池化层,以实现对分列特征矩阵的平均降维处理;可选的,可以对分列特征矩阵的平均降维处理可以是针对不同降维参数的(第二数量)的平均降维处理,可以在文本识别模型的cnn之后,分别连接多个降维参数不同的均值池化层。在各个均值池化层后分别连接rnn、分类层和转录层,实现针对不同特征矩阵(分列特征矩阵和均值特征矩阵)的预测和解码。

另一种实现方式中,可以在文本识别模型的cnn之后,rnn之前,连接平均池化层,以实现对分列特征矩阵的平均降维处理;可选的,可以对分列特征矩阵的平均降维处理可以是针对不同降维参数的(第二数量)的平均降维处理,可以在文本识别模型的cnn之后,rnn之前,分别连接多个降维参数不同的均值池化层。在各个均值池化层后分别连接rnn、分类层和转录层,实现针对不同特征矩阵(分列特征矩阵和均值特征矩阵)的预测和解码。

又一种实现方式中,可以在文本识别模型的cnn之后,rnn之前,分别连接平均池化层和最大值池化层,分别实现平均降维处理和最大值降维处理,在各个平均池化层和最大值池化层后分别连接转录层,实现针对各个字符预测矩阵的解码。其中,平均池化层对应的第二数量和最大池化层对应的第二数量,二者的取值可以相同,也可以不同。可选的,在文本识别模型的cnn之后,rnn之前,连接的平均池化层可以包含多个,各个平均池化层对应的第二数量彼此不同。可选的,在文本识别模型的cnn之后,rnn之前,连接的最大值池化层可以包含多个,各个最大值池化层对应的第二数量彼此不同。

s1003,将所述分列特征矩阵输入字符分类网络,得到所述第三字符预测矩阵。

s1004,将所述降维特征矩阵输入字符分类网络,得到所述第四字符预测矩阵。

s1005,分别确定第三字符预测矩阵和第四字符预测矩阵各自对应的分项预测损失参数。

其中,s1004在s1001之后执行,s1005在s1003之后执行,s1004可以在s1005之前执行,也可以在s1005之后执行,还可以与s10051同时执行。

s1006,将各个分项预测损失参数相加得到模型预测损失参数。

s1007,根据模型预测损失参数对文本识别模型的模型参数进行调节。

其中,步骤s1001、s1003-s1007可参阅图4对应的实施例中的相关描述,此处不再赘述。

本申请实施例中,确定样本识别对象的分列特征矩阵后,根据分列特征矩阵确定样本识别对象的第三字符预测矩阵,对分列特征矩阵进行降维处理,得到样本识别对象的第四字符预测矩阵,进而根据样本识别对象的标注标签序列,第三字符预测矩阵以及第四字符预测矩阵,确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数,并根据模型预测损失函数调节文本识别模型的模型参数。其中,多个字符预测矩阵包括的矩阵列的数量不全相同,字符预测矩阵中不同的矩阵列与样本识别对象中不同的待识别单元一一对应,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率。通过对分列特征矩阵进行降维处理,得到不同尺度的特征矩阵(包括分列特征矩阵和降维特征矩阵),进而根据不同尺度的特征矩阵得到样本识别对象多个不同尺度的字符预测矩阵,通过不同尺度的字符预测矩阵对文本识别模型进行训练,提高了文本识别模型对不同尺度的文本字符的识别能力,从而提高了文本识别模型的识别准确度。

参见图12,图12为本申请实施例提供的一种文本识别模型训练装置的结构示意图,如图所示,所述文本识别模型训练装置12包括:

特征确定模块120,用于确定样本识别对象的分列特征矩阵;

字符预测模块121,用于根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵,所述多个字符预测矩阵包括的矩阵列的数量不全相同,所述字符预测矩阵的每个矩阵列在所述样本识别对象中均有对应的待识别单元,所述字符预测矩阵的矩阵列包含所述待识别单元针对至少一个预测对象的取值概率;

损失确定模块122,用于根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数;

参数调节模块123,用于根据所述模型预测损失参数调节所述文本识别模型的模型参数。

可选的,所述特征确定模块120具体用于:

对所述样本识别对象进行卷积特征提取,得到所述样本识别对象的卷积特征矩阵,所述卷积特征矩阵包含多个矩阵列;

将所述卷积特征矩阵中的各个矩阵列,按照在所述卷积特征矩阵中的排布顺序,依次作为循环神经网络在不同时刻的输入序列,输入所述循环神经网络;

根据所述循环神经网络针对不同输入序列的输出序列,确定所述分列特征矩阵;所述分列特征矩阵中的目标矩阵列融合有所述分列特征矩阵中,除所述目标矩阵列以外的矩阵列的特征。

可选的,所述字符预测矩阵包含第一字符预测矩阵和第二字符预测矩阵;

所述字符预测矩阵,具体用于:

将所述分列特征矩阵输入字符分类网络,得到所述待识别对象的所述第一字符预测矩阵;

对所述第一字符预测矩阵中每相邻第一数量的矩阵列,进行降维处理,得到所述第二字符预测矩阵。

可选的,所述第一字符预测矩阵中矩阵列的数量是所述第一数量的整倍数,且所述第一数量为大于1的整数。

可选的,所述字符预测矩阵包含第三字符预测矩阵和第四字符预测矩阵:

所述字符预测模块121具体用于:

对所述分列特征矩阵中每相邻第二数量的矩阵列,进行降维处理,得到所述样本识别对象的降维特征矩阵;

将所述分列特征矩阵输入字符分类网络,得到所述第三字符预测矩阵;

将所述降维特征矩阵输入字符分类网络,得到所述第四字符预测矩阵。

可选的,所述分列特征矩阵中矩阵列的数量是所述第二数量的整倍数,且所述第二数量为大于1的整数。

可选的,所述降维处理包括平均降维处理或最大值降维处理中的一种。

可选的,所述损失确定模块122具体用于:

根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数;

根据所述分项预测损失参数,确定所述模型预测损失参数。

可选的,所述损失确定模块122具体用于:

所述根据所述分项预测损失参数,确定所述模型预测损失参数包括:

按照各个所述分项预测损失参数各自的损失权重,对所述分项预测损失参数进行加权求和,得到所述模型预测损失参数。

可选的,所述损失确定模块122具体用于:

所述根据所述样本识别对象的标注标签序列,确定各个所述字符预测矩阵对应的分项预测损失参数包括:

从候选序列中确定满足所述标注标签序列的匹配条件的至少一个目标预测序列,所述候选序列包括至少一个序列对象,所述序列对象是所述字符预测矩阵的矩阵列中取值概率对应的所述预测对象;

根据所述字符预测矩阵的矩阵列中的取值概率,确定所述目标预测序列对应的第一预测概率;

根据所述第一预测概率,确定所述分项预测损失参数。

可选的,所述标注标签序列的匹配条件包括:

在所述候选序列包含文本字符的情况下,将所述候选序列中连续且相同的文本字符删除至一个后得到的序列,与所述标注标签序列相同;

或是,在所述候选序列包含文本字符和虚拟间隔符的情况下,将所述候选序列中连续且相同的文本字符删除至一个,并将所述虚拟间隔符删除后得到的序列,与所述标注标签序列相同。

具体实现中,所述文本识别模型训练装置可以通过其内置的各个功能模块执行如图4、图6或图10的文本识别模型训练方法中的各个步骤,具体实施细节可参阅图4、图6或图10对应的实施例中各个步骤的实现细节,此处不再赘述。

本申请实施例中,特征确定模块确定样本识别对象的分列特征矩阵后,字符预测模块根据分列特征矩阵确定样本识别对象的多个字符预测矩阵,进而损失确定模块根据样本识别对象的标注标签序列,以及多个字符预测矩阵确定文本识别模型的模型预测损失参数,参数调节模块根据模型预测损失参数调节文本识别模型的模型参数。其中,多个字符预测矩阵包括的矩阵列的数量不全相同,字符预测矩阵中不同的矩阵列与样本识别对象中不同的待识别单元一一对应,字符预测矩阵的矩阵列包含待识别单元针对至少一个预测对象的取值概率。通过样本识别对象多个不同尺度的字符预测矩阵对文本识别模型进行训练,提高了文本识别模型对不同尺度的文本字符的识别能力,从而提高了文本识别模型的识别准确度。

本申请实施例还提供了一种文本识别方法,所述方法可以包括:将目标识别对象输入如图3、图6或图10中任一的文本识别模型训练方法训练得到的文本识别模型;获取所述文本识别模型输出的文本识别结果。

可选的,该目标识别对象可以包括图像识别对象、音频识别对象或视频识别对象中的一种,如车牌号、语音聊天信息等。

可选的,该文本识别结果包括目标识别对象中包含的字符或字符串。该字符或字符串具体可以包括文字、数字、符号中的一种或多种。

本申请实施例中,可以得到针对目标识别对象的多个字符预测矩阵,进而根据多个字符预测矩阵输出预测概率最大的文本字符的组合。通过目标识别对象的多个字符预测矩阵,提高了文本识别模型对目标识别对象的预测结果的多样性,从而提高了文本识别模型的识别准确度。

本申请实施例还提供了一种文本识别装置,所述装置可以包括:输入模块,用于将目标识别对象输入如图3、图6或图10中任一的文本识别模型训练方法训练得到的文本识别模型;获取模块,用于获取所述文本识别模型输出的文本识别结果。

可选的,该目标识别对象可以包括图像识别对象、音频识别对象或视频识别对象中的一种,如车牌号、语音聊天信息等。

可选的,该文本识别结果包括目标识别对象中包含的字符或字符串。该字符或字符串具体可以包括文字、数字、符号中的一种或多种。

本申请实施例中,输入模块将目标识别对象输入文本识别模型,通过文本识别模型可以得到针对目标识别对象的多个字符预测矩阵,进而获取模块可以获取文本识别模型根据多个字符预测矩阵输出的预测概率最大的文本字符的组合。通过目标识别对象的多个字符预测矩阵,提高了文本识别模型对目标识别对象的预测结果的多样性,从而提高了文本识别模型的识别准确度。

参阅图13,图13是本申请实施例提供的另一种文本识别模型训练装置的结构示意图。如图13所示,所述文本识别模型训练装置130可以以包括:至少一个处理器1301,例如cpu,至少一个网络接口1304,用户接口1303,存储器1305,至少一个通信总线1302。其中,通信总线1302用于实现这些组件之间的连接通信。其中,用户接口1303可以包括显示屏(display)、键盘(keyboard),可选用户接口1303还可以包括标准的有线接口、无线接口。网络接口1304可选地可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1305可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1305可选地还可以是至少一个位于远离前述处理器1301的存储装置。如图13所示,作为一种计算机存储介质的存储器1305中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在图13所示的文本识别模型训练装置130中,网络接口1304主要用于输入待识别对象的服务器,或接收识别结果的服务器;而用户接口1303主要用于为用户提供输入的接口;而处理器1301可以用于调用存储器1305中存储的设备控制应用程序,以实现:

确定样本识别对象的分列特征矩阵;

根据所述分列特征矩阵,确定所述样本识别对象的多个字符预测矩阵,各个所述字符预测矩阵由不同数量的矩阵列组成,所述字符预测矩阵中不同的矩阵列与所述样本识别对象中不同的待识别单元一一对应,所述字符预测矩阵的矩阵列包含所述待识别单元针对至少一个预测对象的取值概率;

根据所述样本识别对象的标注标签序列,以及所述多个字符预测矩阵确定文本识别模型的模型预测损失参数,所述模型预测损失参数用于调节所述文本识别模型的模型参数。

应当理解,本申请实施例中所描述的文本识别模型训练装置130可执行前文图4、图6或图10所对应实施例中对所述文本识别模型训练方法的描述,也可执行前文图12所对应实施例中对所述文本识别模型训练装置12的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

参阅图14,图14是本申请实施例提供的另一种文本识别装置的结构示意图。如图14所示,所述文本识别装置140可以以包括:至少一个处理器1401,例如cpu,至少一个网络接口1404,用户接口1403,存储器1405,至少一个通信总线1402。其中,通信总线1402用于实现这些组件之间的连接通信。其中,用户接口1403可以包括显示屏(display)、键盘(keyboard),可选用户接口1403还可以包括标准的有线接口、无线接口。网络接口1404可选地可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1405可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1405可选地还可以是至少一个位于远离前述处理器1401的存储装置。如图14所示,作为一种计算机存储介质的存储器1405中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在图14所示的文本识别模型训练装置140中,网络接口1404主要用于输入待识别对象的服务器,或接收识别结果的服务器;而用户接口1403主要用于为用户提供输入的接口;而处理器1401可以用于调用存储器1405中存储的设备控制应用程序,以实现:

将目标识别对象输入如图3、图6或图10中任一的文本识别模型训练方法训练得到的文本识别模型;获取所述文本识别模型输出的文本识别结果。

应当理解,本申请实施例中所描述的文本识别模型训练装置140可执行前文实施例中对所述文本识别方法的描述,也可执行前实施例中对所述文本识别装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

此外,这里需要指出的是:本申请实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的文本识别模型训练装置12所执行的计算机程序或前文提及的文本识别装置所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图4、图6或图10所对应实施例中对所述文本识别模型训练方法的描述,或执行前文实施例中对所述文本识别方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1