CN113392814A - 一种字符识别模型的更新方法、装置及存储介质 - Google Patents
一种字符识别模型的更新方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113392814A CN113392814A CN202110933850.7A CN202110933850A CN113392814A CN 113392814 A CN113392814 A CN 113392814A CN 202110933850 A CN202110933850 A CN 202110933850A CN 113392814 A CN113392814 A CN 113392814A
- Authority
- CN
- China
- Prior art keywords
- character
- character recognition
- recognition model
- category
- picture
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种字符识别模型的更新方法、装置及存储介质,标注字符位置和字符类别,建立字符字典库,训练字符识别模型,得到初始字符识别模型;利用初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据,利用收集到的预测结果错误的字符图片和字符类别数据,对初始字符模型中网络参数进行更新,得到最终的字符识别模型;使用训练好的最终的字符识别模型进行字符识别,获取字符识别结果。本发明分析神经网络的方法增加了神经网络的可解释性,只更新对特征具有决定性的神经网络参数,从而降低神经网络对错误特征的依赖,提升网络对真实类别的特征依赖,增加网络的鲁棒性,使得网络能够学习到更好的特征。
Description
技术领域
本发明涉及字符识别、训练、分类领域,特别涉及一种字符识别模型的更新方法、装置及存储介质。
背景技术
文本是人类最重要的信息来源之一,自然场景中充满了形形色色的文字符号,例如车牌号码、商店标志上的字符,各类容器表面的字符图案等。OCR技术是本领域中最常用的字符识别手段,其首先通过字符检测定位字符在图像中的区域,然后提取区域中的特征向量,最后利用分类模型进行字符识别。然而,在现实场景下,由于包含字符的图像会出现弯曲、变形等各种不规则的形状,因此,字符识别算法的优劣直接决定着字符的准确识别率。而在各种背景噪声的干扰下,如何获取字符区域中有效的特征是至关重要的。在特征提取算法中,神经网络一直是热门的存在,但是一直以来神经网络因为黑盒而被诟病。因此,迫切需要提高现实场景下字符特征提取、学习的有效性、准确性。
发明内容
有鉴于此,本发明提供了一种字符识别模型的更新方法,通过可视化训练完的神经网络来分析神经网络学习到的字符特征,增加神经网络的可解释性。当神经网络训练完成之后,利用神经网络最后一层的得分结合神经网络的链式求导原则来可视化神经网络学习到了哪些特征,只更新对特征具有决定性的神经网络参数而不是所有的神经网络参数,从而降低神经网络对错误特征的依赖,提升网络对真实类别的特征依赖,增加网络的鲁棒性,使得网络能够学习到更好的特征。
本发明提供了一种字符识别模型的更新方法,包括如下步骤:
步骤1:采集现实应用场景下的包含字符的图片,利用labelme图像标注工具标注出图片上字符的位置以及图片的字符类别信息;
步骤2:建立字符字典库,具体包括:统计训练数据中字符类别的数量;对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符;
步骤3:构建字符识别模型,构建ResNet34作为主干神经网络的字符识别模型;
步骤4:训练字符识别模型,得到初始字符识别模型;
步骤5:利用步骤4中训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据;
步骤6:使用步骤5中收集到的预测结果错误的字符图片和字符类别数据,对初始字符识别模型中的部分网络参数进行更新,获得最终的字符识别模型;
步骤7:使用训练好的字符识别模型进行字符识别,获取字符识别结果。
本发明还提供了一种字符识别模型的更新装置,所述装置包括:字符标记模块、字符字典库构建模块、字符识别模型构建模块、字符识别模型训练模块、识别错误字符收集模块、字符识别模型微调模块、字符识别预测分类模块;
所述字符标记模块,用于采集现实应用场景下的包含字符的图片,利用labelme图像标注工具标注出图片上字符的位置以及图片的字符类别信息;
所述符字典库构建模块,用于统计训练数据中字符类别的数量;对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符;
所述字符识别模型构建模块,用于采用ResNet34作为主干神经网络来构建字符识别模型;
所述字符识别模型训练模块,用于对训练数据集进行训练,获取初始字符识别模型;
所述识别错误字符收集模块,用于采用训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据;
所述字符识别模型调整模块,用于利用收集到的预测结果错误的字符图片和字符类别数据,对初始字符识别模型中的部分网络参数进行更新,得到最终的字符识别模型;
所述字符识别预测分类模块,用于使用训练好的最终字符识别模型进行字符识别,获取字符识别结果。
在上述方案中,通过可视化训练完的神经网络来分析神经网络学习到的特征,增加神经网络的可解释性。通过模型预测的类别来找到模型判断这个类别时所依赖的特征,进一步找到决定这些特征时所依赖的网络参数。通过控制网络的错误参数来削弱模型对这部分特征的依赖,而对于真实类别的特征加强模型对这部分特征的依赖。最终实现了提高字符识别模型的精度和准度的技术效果。
附图说明
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实施例,在附图中:
图1是本发明的一种字符识别模型的更新方法的一实施例的流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面说明本发明实施例提供的一种字符识别模型的更新方法,如图1所示,包括如下步骤:
步骤1:采集现实应用场景下的包含字符的图片,利用labelme图像标注工具标注出图片上字符的位置以及图片的字符类别信息;
在该实施例中,训练数据的采集包括如下步骤:
步骤1.1:采集包含一种或多种字符的图片,其中字符包括中文文字、英文字母、数字中的一种或多种;
步骤1.2:利用图像识别技术识别出图片中的字符区域,并利用矩形框标记图片上每个字符的位置;其中,一个字符对应一个位置;识别该图片中的字符区域可以利用现有技术中常规的图像识别技术;
步骤1.3:标记矩形框内字符的类别;
步骤1.4:生成图片的标签文件,该标签文件包含图片上的字符位置信息和字符类别信息。
优选地,本发明的实施例可用于车牌识别,例如对于车牌号码渝A999U9,最终生成的包含字符位置和类别信息的JSON文件中的部分内容如下:
“shapes”:[
{
“label”:”渝”,
“points”:[
[
47.99999999999999,
128.2682926829268
],
[
128.48780487804876,
291.68292682926824
]
],
“group_id”:null,
“shape_type”:”rectangle”,
“flags”:{}
}
步骤2:建立字符字典库,具体包括:统计训练数据中字符类别的数量;对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符。
在该实施例中,例如识别的字符一共包含9个字符,将每个字符按照顺序与数字0-8做一一映射,得到字符字典库。
步骤3:构建字符识别模型,构建ResNet34作为主干神经网络的字符识别模型;
在该实施例中,所述ResNet34神经网络包括四个卷积块、平均池化层、全连接层、softmax层;其中,所述卷积块由残差块堆叠而成;所述残差块由两个3×3的卷积核组成;所述平均池化层包括一个2×2的卷积块,对该2×2的卷积块区域内取平均值作为池化层的输出;通过所述全连接层输出特征向量,通过该特征向量获取字符识别模型输出的预测类别;在softmax层,通过softmax函数将全连接层的输出值归一化到[0,1]之间,向量元素的值就表示对应字符类别的概率,即通过获取softmax层中最大得分的下标,通过下标从字符字典库中找到对应的字符类别从而输出文字识别结果。例如:0-9的数字识别中,第1个元素的值为0.2,就表示这张图片是字符0的概率为20%,第10个元素的值为0.5就表示这张图片是字符9的概率为50%。其中,softmax函数采用如下公式:
n表示字符类别的数量;yj表示全连接层输出向量中第j个元素的值。
步骤4:训练字符识别模型;
在该实施例中,所述训练过程具体包括如下步骤:
步骤4.1:利用标注好的图片和生成的JSON文件,先获取图片中字符的位置,然后将字符截取出来,让当前图片中只包含一个字符类别;
步骤4.2:利用预先构建好的字符字典库将字符类别进行数字映射,然后将数字转换为one-hot编码;
步骤4.3:随机初始化神经网络参数,其中初始学习率为0.001;
步骤4.4:将当前图片送入到神经网络中,通过前向传播得到softmax层输出的字符向量,利用交叉熵损失函数计算其与one-hot编码的损失loss,交叉熵损失函数如下所示:
其中,N表示字符类别的数量;yi对应图片字符类别one-hot编码中的第i个元素的值,例如:如果图片里面的文字是2,那么当i为0时,yi为0,只有当i等于2时才为1;pi为softmax层网络通过前向传播的输出值。
步骤4.5:利用梯度下降法更新神经网络参数,具体为:利用loss函数计算其对网络参数的偏导,利用链式求导法则,更新网络参数,更新公式如下:
其中,ωi为全连接层中权重的第i个参数,η为初始学习率;ωi +为更新后的权重参
数,zi为神经网络的输出值,,b为偏置参数,xi为神经网络第i层的输入值,
o为激活函数的输出值,o=f(z),f表示激活函数Relu,Relu为max(0,x)。在该实施例中,偏置
参数的更新过程与ω一样。
步骤4.6:重复所述前向传播和网络参数更新过程,使得loss逐渐变小,当达到设定的迭代次数时,停止训练,获取此时神经网络的模型作为初始字符识别模型。
步骤5:利用步骤4中训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据。
步骤6:使用步骤5中收集到预测结果错误的字符图片和字符类别数据,对初始字符识别模型中的部分网络参数进行更新;其中,部分网络参数指代的是前述求导结果确定的参数。
在该实施例中,所述更新为对网络参数的微调,具体包括如下步骤:
步骤6.1:获取所述初始字符识别模型,其中待更新的网络参数为所述初始字符识别模型中的网络参数;
步骤6.2:利用所述初始字符识别模型对步骤5中的测试数据集中的字符图片做前向传播,提取神经网络softmax层的输出值;
在该实施例中,例如,字符识别任务为0-9的数字识别时,通过softmax层就能获取到每个字符类别的得分,其中得分即为类别的结果,每个类别的可能性之和加起来为1。假设这张图片上字符是6,那么真实的标签就是6,而模型的输出类别是8,这就表示模型预测错误。后面需要获取类别6和8的得分,来计算网络参数对这个得分的贡献情况。
步骤6.3:根据字符图片的真实类别来获取softmax层输出值、真实类别的预测得分ST以及预测错误的类别得分SF。
在该实施例中,例如:网络softmax的输出[0,0,0.2,0,0,0,0,0,0.7,0.1],现实场景下,字符图片的真实类别为2,那么网络预测真实类别的得分为0.2,记为ST,网络预测错误类别的得分为0.7,记为SF,即字符图片上的文字是2,但是字符识别模型识别出图片上的字符是8,设第c类类别得分记为SC。
步骤6.4:计算ST和SF的对网络参数的偏导;其中,卷积核的大小为C1*C2,例如3*3,
第i个卷积核第k行第j列的权重参数值为,通过下述公式计算出网络参数对于分类得分
SC贡献情况,利用链式求导法则求解ST和SF对每一层网络参数的偏导数;
步骤6.5:过滤掉ST和SF对网络参数偏导数小于0的参数,保留类别得分中对网络参数偏导数大于0的网络参数,记录为需要更新的网络参数;
在该实施例中,对于偏导数小于0的情况,不对与其对应的网络参数更新。而对于
偏导数大于0的情况,就表示该网络参数对于分类得分有影响,则更新这些网络参数。优选
地,可以通过一个max函数就能筛选出来需要更新的网络参数,并记录这
些需要更新的网络参数。
步骤6.6:利用反向传播算法来更新上述记录的需要更新的网络参数;
在该实施例中,优选地,首先采用交叉熵损失函数来计算ST和SF的损失值,计算公式下:
然后采用梯度下降法进行参数的更新,参数的更新公式如下,η为初始学习率:
其中,ωi为全连接层中权重的第i个参数,η为初始学习率;ωi +为更新后的权重参
数,zi为神经网络的输出值,,b为偏置参数,xi为神经网络第i层的输入值,
o为激活函数的输出值,o=f(z),f表示激活函数Relu,Relu为max(0,x)。
通过对字符识别模型部分网络参数进行微调,在迭代的过程中会使得loss逐渐变小,然而想要loss变小就只能通过增加ST和降低SF的值,这就使得预测错误的字符串类标SF的得分变小,而真实类别的得分ST变大。
步骤6.7:重复上面的步骤,直到达到预设的迭代次数为止,能够获得最终的字符识别模型。
步骤7:使用训练好的最终的字符识别模型进行字符识别,获取字符识别结果。
与现有技术相比,本发明的有益技术效果为:神经网络能够识别字符的类别依靠的是字符的特征,而神经网络能够识别字符的特征依靠的是神经网络参数。通过可视化训练完的神经网络来分析神经网络学习到的特征,增加神经网络的可解释性。通过模型预测的类别来找到模型判断这个类别时所依赖的特征,进一步找到决定这些特征时所依赖的网络参数。通过控制网络的错误参数来削弱模型对这部分特征的依赖,而对于真实类别的特征加强模型对这部分特征的依赖。最终实现了提高字符识别模型的精度和准度的技术效果。
本发明实施例还提供了一种字符识别模型的更新装置,所述装置包括:字符标记模块、字符字典库构建模块、字符识别模型构建模块、字符识别模型训练模块、字符识别错误结果收集模块、字符识别模型微调模块、字符识别预测分类模块;
所述字符标记模块,用于采集现实应用场景下的包含字符的图片,利用labelme图像标注工具标注出图片上字符的位置以及图片的字符类别信息;
在该实施例中,所述字符标记模块具体包括字符图片收集模块、字符位置标记模块、字符类别标记模块、字符信息保存模块;
所述字符图片收集模块,用于收集包含一种或多种字符的图片,其中字符包括中文文字、英文字母、数字中一种或多种;
所述字符位置标记模块,用于识别出图片中的字符区域,并利用矩形框标记图片上每一个字符的位置;
所述字符类别标记模块,用于标记矩形框内字符的类别;
所述字符信息保存模块,用于生成图片的标签文件,该标签文件包含图片上的字符位置信息和字符类别信息,所述标签文件为JSON格式的文件。
所述符字典库构建模块,用于统计训练数据中字符类别的数量;对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符;
所述字符识别模型构建模块,用于构建基于ResNet34作为主干神经网络的字符识别模型;
在该实施例中,所述ResNet34神经网络包括四个卷积块、平均池化层、全连接层、softmax层;其中,所述卷积块由残差块堆叠而成;所述残差块由两个3×3的卷积核组成;所述平均池化层包括一个2×2的卷积块,对该2×2的卷积块区域内取平均值作为输出;通过所述全连接层输出特征向量,通过该特征向量获取字符识别模型输出的预测类别;在softmax层,通过softmax函数将全连接层的输出值归一化到[0,1]之间,向量元素的值就表示对应字符类别的概率,通过获取softmax层中最大得分的下标,通过下标从字符字典库中找到对应的字符类别从而输出文字识别结果。
所述字符识别模型训练模块,用于对训练数据集进行训练,获取初始字符识别模型;
在该实施例中,所述字符识别模型训练模块包括单个字符提取模块、字符类别映射模块、神经网络参数初始化模块、字符识别损失计算模块、神经网络参数更新模块、初始字符识别模型生成模块;
所述单个字符提取模块,用于利用标注好的图片和生成的JSON文件,先获取图片中字符的位置,然后将字符截取出来,让当前图片中只包含一个字符类别;
所述字符类别映射模块,用于利用预先构建好的字符字典库将字符类别进行数字映射,然后将数字转换为one-hot编码;
所述神经网络参数初始化模块,用于随机初始化神经网络参数,其中初始学习率为0.001;
所述字符识别损失计算模块,用于将当前图片送入到神经网络中,通过前向传播得到softmax层输出的字符向量,利用交叉熵损失函数计算其与one-hot编码的损失loss;
所述神经网络参数更新模块,用于利用梯度下降法更新神经网络参数,即利用loss函数计算其对网络参数的偏导,利用链式求导法则,更新网络参数;
所述初始字符识别模型生成模块,用于重复所述前向传播和网络参数更新过程,使得loss逐渐变小,当达到设定的迭代次数时,停止训练,获取此时神经网络的模型作为初始字符识别模型。
所述字符识别错误结果收集模块,用于采用训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据;
所述字符识别模型微调模块,用于利用收集到的预测结果错误的字符图片和字符类别数据,对所述初始字符识别模型中部分网络参数进行更新,得到最终的字符识别模型;
在该实施例中,所述字符识别模型微调模块包括待更新网络参数获取模块、测试数据识别结果获取模块、字符类别得分获取模块、网络参数偏导求解模块、网络参数过滤模块、网络参数更新模块、字符识别模型生成模块;
所述待更新网络参数获取模块,用于获取所述初始字符识别模型中的待更新网络参数,其中待更新的网络参数为所述初始字符识别模型中的网络参数;
所述测试数据识别结果获取模块,用于利用所述初始字符识别模型对测试数据集中的字符图片做前向传播,提取神经网络softmax层的输出值;
字符类别得分获取模块,用于根据字符图片的真实类别来获取softmax层输出值、真实类别的预测得分以及预测错误的类别得分;
所述网络参数偏导求解模块,用于计算类别得分对网络参数的偏导;
所述网络参数过滤模块,用于过滤掉真实类别的预测得分以及预测错误的类别得分中对网络参数偏导数小于0的网络参数,保留类别得分中对网络参数偏导数大于等于0的网络参数,记录为需要更新的网络参数;
所述网络参数更新模块,用于利用反向传播算法来更新上述记录的需要更新的网络参数;
优选地,上述更新过程为:首先采用交叉熵损失函数来计算ST和SF的损失值,计算如下:
然后采用梯度下降法进行参数的更新,参数的更新公式如下,η为初始学习率:
其中,ωi为全连接层中权重的第i个参数,η为初始学习率;ωi +为更新后的权重参
数,zi为神经网络的输出值,,b为偏置参数,xi为神经网络第i层的输入值,
o为激活函数的输出值,o=f(z),f表示激活函数Relu,Relu为max(0,x)。
通过对字符识别模型部分网络参数进行微调,在迭代的过程中会使得loss逐渐变小,然而想要loss变小就只能通过增加ST和降低SF的值,这就使得预测错误的字符串类标SF的得分变小,而真实类别的得分ST变大。
所述字符识别模型生成模块,用于重复上面的更新过程,直到达到预设的迭代次数为止,获得最终的字符识别模型。
所述字符识别预测分类模块,用于使用训练好的最终字符识别模型进行字符识别,获取字符识别结果。
综上,本发明实现了如下技术效果:通过可视化训练完的神经网络来分析神经网络学习到的特征,增加神经网络的可解释性。通过模型预测的类别来找到模型判断这个类别时所依赖的特征,进一步找到决定这些特征时所依赖的网络参数。通过控制网络的错误参数来削弱模型对这部分特征的依赖,而对于真实类别的特征加强模型对这部分特征的依赖。最终实现了提高字符识别模型的精度和准度的技术效果。
上文所描述的各种方法,在一些实施例中,可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由ROM 和/或通信单元而被载入和/或安装到设备上。当计算机程序被加载到RAM 并由CPU 执行时,可以执行上文描述的方法中的一个或多个动作或步骤。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。
以上所述仅为本公开的实施例可选实施例,并不用于限制本公开的实施例,对于本领域的技术人员来说,本公开的实施例可以有各种更改和变化。凡在本公开的实施例的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的实施例的保护范围之内。
Claims (10)
1.一种字符识别模型的更新方法,其特征在于,包括如下步骤:
步骤1:采集现实应用场景下的包含字符的图片,标注出图片上字符的位置以及图片的字符类别信息;
步骤2:建立字符字典库,具体为统计训练数据中字符类别的数量,对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符;
步骤3:构建ResNet34作为主干神经网络的字符识别模型;
步骤4:训练字符识别模型,得到初始字符识别模型;
步骤5:利用步骤4中训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据;
步骤6:使用步骤5中收集到的预测结果错误的字符图片和字符类别数据,对初始字符识别模型中的部分网络参数进行更新,得到最终的字符识别模型;
步骤7:使用训练好的最终的字符识别模型进行字符识别,获取字符识别结果。
2.根据权利要求1所述的方法,其特征在于:所述标注出图片上字符的位置以及图片的字符类别信息,具体包括如下步骤:
步骤1.1:采集包含一种或多种字符的图片,其中字符包括中文文字、英文字母、数字中的一种或多种;
步骤1.2:识别图片中的字符区域,并利用矩形框标记图片上每个字符的位置,其中一个字符对应一个位置;
步骤1.3:标记矩形框内字符的类别;
步骤1.4:生成图片的标签文件,该标签文件包含图片上的字符位置信息和字符类别信息。
3.根据权利要求1所述的方法,其特征在于:所述ResNet34神经网络包括卷积块、平均池化层、全连接层、softmax层;其中,所述卷积块由残差块堆叠而成;所述全连接层输出特征向量,通过该特征向量获取字符识别模型输出的预测类别;softmax层将全连接层的输出向量值归一化,向量元素的值表示对应字符类别的概率,通过获取softmax层中最大得分的下标,通过下标从字符字典库中找到对应的字符类别从而输出文字识别结果。
5.根据权利要求1所述的方法,其特征在于:所述训练字符识别模型,得到初始字符识别模型,具体包括如下步骤:
步骤4.1:利用标注好的图片和生成的标签文件,先获取图片中字符的位置,然后将字符截取出来,让当前图片中只包含一个字符类别;
步骤4.2:利用预先构建好的字符字典库将字符类别进行数字映射,然后将数字转换为one-hot编码;
步骤4.3:随机初始化神经网络参数;
步骤4.4:将当前图片送入到神经网络中,通过前向传播得到softmax层输出的字符向量,利用交叉熵损失函数计算其与one-hot编码的损失loss,交叉熵损失函数如下所示:
其中,N表示字符类别的数量;yi对应图片字符类别one-hot编码中的第i个元素的值;pi为softmax层网络通过前向传播的输出值;
步骤4.5:利用梯度下降法更新神经网络参数,具体为:利用loss函数计算其对网络参数的偏导,利用链式求导法则,更新网络参数,更新公式如下:
其中,ωi为全连接层中权重的第i个参数,η为初始学习率;ωi +为更新后的权重参数,zi
为神经网络的输出值,,b为偏置参数,xi为神经网络第i层的输入值,o为
激活函数的输出值,o=f(z),f表示激活函数Relu,Relu为max(0,x);
步骤4.6:重复所述前向传播和网络参数更新过程,使得loss逐渐变小,当达到设定的迭代次数时,停止训练,获取此时神经网络的模型作为初始字符识别模型。
6.根据权利要求1所述的方法,其特征在于:所述使用步骤5中收集到的预测结果错误的字符图片和字符类别数据,对所述初始字符识别模型中的部分网络参数进行更新,具体包括如下步骤:
步骤6.1:获取所述初始字符识别模型,其中待更新的网络参数为所述初始字符识别模型中的网络参数;
步骤6.2:利用所述初始字符识别模型对步骤5中的测试数据集中的字符图片做前向传播,提取神经网络softmax层的输出值;
步骤6.3:根据字符图片的真实类别来获取softmax层输出值、真实类别的预测得分ST以及预测错误的类别得分SF;
步骤6.4:计算ST和SF的对网络参数的偏导;通过下述公式计算出网络参数对于分类得分SC的贡献情况,利用链式求导法则求解ST和SF对每一层网络参数的偏导数;
其中0≤k≤C1,0≤j≤C2,SC为通过前向传播的softmax层输出值;A为网络中某一层的
卷积核;网络参数为神经网络中的权重参数;其卷积核的大小为C1*C2,第i个卷积核第k行第
j列的权重参数值为;
步骤6.5:过滤掉ST和SF对网络参数偏导数小于0的参数,保留类别得分中对网络参数偏导数大于0的网络参数,记录为需要更新的网络参数;
步骤6.6:利用反向传播算法来更新上述记录的需要更新的网络参数;
步骤6.7:重复上面的步骤,直到达到预设的迭代次数为止,能够获得最终的字符识别模型。
8.根据权利要求3所述的方法,其特征在于:所述残差块由两个3×3的卷积核组成;所述平均池化层包括一个2×2的卷积块。
9.一种字符识别模型的更新装置,所述装置包括:字符标记模块、字符字典库构建模块、字符识别模型构建模块、字符识别模型训练模块、识别错误字符收集模块、字符识别模型微调模块、字符识别预测分类模块;
所述字符标记模块,用于采集现实应用场景下的包含字符的图片,标注出图片上字符的位置以及图片的字符类别信息;
所述符字典库构建模块,用于统计训练数据中字符类别的数量;对字符类别和数字标签做映射;其中,字符类别指不同字符的个数,一个类别表示一个字符;
所述字符识别模型构建模块,用于采用ResNet34作为主干神经网络来构建字符识别模型;
所述字符识别模型训练模块,用于对训练数据集进行训练,获取初始字符识别模型;
所述识别错误字符收集模块,用于采用训练好的初始字符识别模型,在测试数据集上做分类预测,收集预测结果错误的字符图片和字符类别数据;
所述字符识别模型微调模块,用于利用收集到的预测结果错误的字符图片和字符类别数据,对初始字符识别模型中的部分网络参数进行更新,得到最终的字符识别模型;
所述字符识别预测分类模块,用于使用训练好的最终字符识别模型进行字符识别,获取字符识别结果。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行根据权利要求1-8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110933850.7A CN113392814B (zh) | 2021-08-16 | 2021-08-16 | 一种字符识别模型的更新方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110933850.7A CN113392814B (zh) | 2021-08-16 | 2021-08-16 | 一种字符识别模型的更新方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113392814A true CN113392814A (zh) | 2021-09-14 |
CN113392814B CN113392814B (zh) | 2021-11-02 |
Family
ID=77622672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110933850.7A Active CN113392814B (zh) | 2021-08-16 | 2021-08-16 | 一种字符识别模型的更新方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113392814B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114399766A (zh) * | 2022-01-18 | 2022-04-26 | 平安科技(深圳)有限公司 | 光学字符识别模型训练方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105184312A (zh) * | 2015-08-24 | 2015-12-23 | 中国科学院自动化研究所 | 一种基于深度学习的文字检测方法及装置 |
CN107133616A (zh) * | 2017-04-02 | 2017-09-05 | 南京汇川图像视觉技术有限公司 | 一种基于深度学习的无分割字符定位与识别方法 |
CN108108746A (zh) * | 2017-09-13 | 2018-06-01 | 湖南理工学院 | 基于Caffe深度学习框架的车牌字符识别方法 |
CN111325152A (zh) * | 2020-02-19 | 2020-06-23 | 北京工业大学 | 一种基于深度学习的交通标志识别方法 |
CN113155464A (zh) * | 2021-03-31 | 2021-07-23 | 燕山大学 | 面向轴承故障识别的cnn模型可视化优化方法 |
-
2021
- 2021-08-16 CN CN202110933850.7A patent/CN113392814B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105184312A (zh) * | 2015-08-24 | 2015-12-23 | 中国科学院自动化研究所 | 一种基于深度学习的文字检测方法及装置 |
CN107133616A (zh) * | 2017-04-02 | 2017-09-05 | 南京汇川图像视觉技术有限公司 | 一种基于深度学习的无分割字符定位与识别方法 |
CN108108746A (zh) * | 2017-09-13 | 2018-06-01 | 湖南理工学院 | 基于Caffe深度学习框架的车牌字符识别方法 |
CN111325152A (zh) * | 2020-02-19 | 2020-06-23 | 北京工业大学 | 一种基于深度学习的交通标志识别方法 |
CN113155464A (zh) * | 2021-03-31 | 2021-07-23 | 燕山大学 | 面向轴承故障识别的cnn模型可视化优化方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114399766A (zh) * | 2022-01-18 | 2022-04-26 | 平安科技(深圳)有限公司 | 光学字符识别模型训练方法、装置、设备及介质 |
CN114399766B (zh) * | 2022-01-18 | 2024-05-10 | 平安科技(深圳)有限公司 | 光学字符识别模型训练方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113392814B (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110443143B (zh) | 多分支卷积神经网络融合的遥感图像场景分类方法 | |
CN110348319B (zh) | 一种基于人脸深度信息和边缘图像融合的人脸防伪方法 | |
CN106372581B (zh) | 构建及训练人脸识别特征提取网络的方法 | |
US7711156B2 (en) | Apparatus and method for generating shape model of object and apparatus and method for automatically searching for feature points of object employing the same | |
CN103605972B (zh) | 一种基于分块深度神经网络的非限制环境人脸验证方法 | |
CN111598805A (zh) | 一种基于vae-gan的对抗样本防御方法及系统 | |
CN104598885B (zh) | 街景图像中的文字标牌检测与定位方法 | |
CN104123560B (zh) | 基于相位编码特征和多度量学习的模糊人脸图像验证方法 | |
US20070098255A1 (en) | Image processing system | |
CN110909618B (zh) | 一种宠物身份的识别方法及装置 | |
CN106372624B (zh) | 人脸识别方法及系统 | |
US20080008362A1 (en) | Method, apparatus, and program for human figure region extraction | |
CN108681735A (zh) | 基于卷积神经网络深度学习模型的光学字符识别方法 | |
US20050152604A1 (en) | Template matching method and target image area extraction apparatus | |
CN113255557B (zh) | 一种基于深度学习的视频人群情绪分析方法及系统 | |
CN110942057A (zh) | 一种集装箱箱号识别方法、装置和计算机设备 | |
CN112364974B (zh) | 一种基于激活函数改进的YOLOv3算法 | |
CN112307919A (zh) | 一种基于改进YOLOv3的单证图像中数字信息区域识别方法 | |
CN115147607A (zh) | 一种基于凸优化理论的抗噪声零样本图像分类方法 | |
CN116258874A (zh) | 基于深度条件扩散网络的sar识别数据库样本姿态扩充方法 | |
CN113378812A (zh) | 一种基于Mask R-CNN和CRNN的数字表盘识别方法 | |
CN111626134A (zh) | 一种基于隐密度分布的密集人群计数方法、系统及终端 | |
CN109101984B (zh) | 一种基于卷积神经网络的图像识别方法及装置 | |
CN113392814B (zh) | 一种字符识别模型的更新方法、装置及存储介质 | |
JP2006127446A (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 |
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 |