减少深度学习OCR的参数量和计算量的方法与计算机设备及存储介质技术

技术编号:23853559 阅读:36 留言:0更新日期:2020-04-18 09:54
本发明专利技术公开了一种减少深度学习OCR的参数量和计算量的方法与计算机设备及存储介质,方法包括以下步骤:步骤S1,用卷积层进行特征提取,在这个卷积层提取出的特征的基础上,再同时做两个多层卷积、对应的卷积层再分别用全连接层进行分类;步骤S2,当推理文字时,分别提取两个全连接网络中最大的预测概率的类,用于表达最终文字的类别;步骤S3,使用两个全连接网络代替一个全连接网络,两个全连接网络分别输出一个分类概率,对两个分类概率综合获得总的概率。

The method of reducing the amount of parameters and calculation of deep learning OCR and computer equipment and storage medium

【技术实现步骤摘要】
减少深度学习OCR的参数量和计算量的方法与计算机设备及存储介质
本专利技术涉及深度学习领域和文字识别领域,尤其涉及一种减少深度学习OCR的参数量和计算量的方法与计算机设备及存储介质。
技术介绍
在当前深度学习领域,OCR技术在需要识别的字很多时,产生的参数量会非常庞大,计算量也会非常大;而且,OCR技术在移动端的算力远远不如在GPU上的算力,文字识别时间会比较长,使用OCR技术也会使得移动端下载几十Mb的参数会影响用户体验。公开于该
技术介绍
部分的信息仅仅旨在加深对本专利技术的总体
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。基于上述原因本专利技术提出了一种减少深度学习OCR的参数量和计算量的方法与计算机设备及存储介质,旨在解决上述存在的问题。
技术实现思路
为了满足上述要求,本专利技术第一个目的在于提供一种减少深度学习OCR的参数量和计算量的方法。本专利技术的第二个目的在于提供一种减少深度学习OCR的参数量和计算量的计算机设备。本专利技术的第三个目的在于提供一种非临时性计算机可读存储介质,其上存储有计算机程序。为了实现上述目的,本专利技术采用以下技术方案:一种减少深度学习OCR的参数量和计算量的方法,包括以下步骤:步骤S1,用卷积层进行特征提取,在这个卷积层提取出的特征的基础上,再同时做两个多层卷积、对应的卷积层再分别用全连接层进行分类;步骤S2,当推理文字时,分别提取两个全连接网络中最大的预测概率的类,用于表达最终文字的类别;步骤S3,使用两个全连接网络代替一个全连接网络,两个全连接网络分别输出一个分类概率,对两个分类概率综合获得总的概率。进一步技术方案为,所述步骤S3之后还包括,将两个分类头分别计算ctc-loss,并将连个ctc-loss相加得到最终的loss,以实现端到端的训练。本专利技术还公开了一种减少深度学习OCR的参数量和计算量的计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的OCR程序,所述OCR程序被所述处理器执行时实现如上述任一项所述的减少深度学习OCR的参数量和计算量的方法。本专利技术还公开了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任一项所述的减少深度学习OCR的参数量和计算量的方法。相比于现有技术,本专利技术的有益效果在于:采用本方案的减少深度学习OCR的参数量和计算量的方法,能够在进行OCR文字识别中将最终模型的参数大小由以前的33Mb减少到4Mb(作为一个示例,由本专利技术人经过大量实验测试得出),极大地减少了计算量,使得文字识别在手机端或计算力受限的情况下能更友好地使用。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明图1是本专利技术一种减少深度学习OCR的参数量和计算量的方法的具体实施例流程示意图;图2是本专利技术一种减少深度学习OCR的参数量和计算量的计算机设备的框架组成具体实施例示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施方式对本专利技术作进一步详细说明。下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本专利技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本专利技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。如图1所示的方法流程图,为本专利技术一种减少深度学习OCR的参数量和计算量的方法的具体实施例,包括以下步骤:步骤S1,用卷积层进行特征提取,在这个卷积层提取出的特征的基础上,再同时做两个多层卷积、对应的卷积层再分别用全连接层进行分类;步骤S2,当推理文字时,分别提取两个全连接网络中最大的预测概率的类,用于表达最终文字的类别;步骤S3,使用两个全连接网络代替一个全连接网络,两个全连接网络分别输出一个分类概率,对两个分类概率综合获得总的概率。进一步技术方案为,所述步骤S3之后还包括,将两个分类头分别计算ctc-loss,并将连个ctc-loss相加得到最终的loss,以实现端到端的训练。具体地,在文字识别中,一般是先检测出文字所在图片中的区域,然后将文字区域提取出来喂到文字识别网络。文字识别网络是对图片进行多层的卷积进行特征提取,最后再用全连接的softmax来计算文字的类别的概率,然后选出最大概率,认为是识别出的文字。当需要识别的文字比较多的时候,最后一层全连接的参数量就会非常大。我们对此的改进是用两个全连接网络来代替一个全连接网络,两个网络中每个网络输出一个分类概率,最后再将连个网络的输出概率进行综合,求得总的概率。在推理的时候,我们只需要在每个网络中取最大的预测概率的类,最后两个类来表达最终文字的类别。假设需要分类的文字是M,那么我们两个分类头只需要两个分类[√M]。如果特征提取层的最后一层的参数量量是N0,则要计算最后的全连接层的所有类别的概率,需要至少(N0+1)×M的参数。举个实际例子,N0=768,M=8080,则全连接的参数量是(768+1)×8080=6213520。如果将全连接的8080分类分解成两个90分类,则参数量是2×(768+1)×90=138420,参数量大大减少。此外,由于我们的文字识别是识别不定长的文字序列,用到了CTC-loss,在实际训练中,我们将两个分类头共享底层的特征提取卷积层,使得训练和推理需要的资源减少。在全连接层分别前增加了两层卷积层,以增加非线性表达能力,在增加少许参数量(小于10w个)的情况下,使得两个分类头的相关性减少。再者,我们修改了CTC-loss,将两个分类头的CTC-loss相加做为模型的最终loss,使得模型可以只使用本文档来自技高网...

【技术保护点】
1.一种减少深度学习OCR的参数量和计算量的方法,其特征在于,包括以下步骤:/n步骤S1,用卷积层进行特征提取,在这个卷积层提取出的特征的基础上,再同时做两个多层卷积、对应的卷积层再分别用全连接层进行分类;/n步骤S2,当推理文字时,分别提取两个全连接网络中最大的预测概率的类,用于表达最终文字的类别;/n步骤S3,使用两个全连接网络代替一个全连接网络,两个全连接网络分别输出一个分类概率,对两个分类概率综合获得总的概率。/n

【技术特征摘要】
1.一种减少深度学习OCR的参数量和计算量的方法,其特征在于,包括以下步骤:
步骤S1,用卷积层进行特征提取,在这个卷积层提取出的特征的基础上,再同时做两个多层卷积、对应的卷积层再分别用全连接层进行分类;
步骤S2,当推理文字时,分别提取两个全连接网络中最大的预测概率的类,用于表达最终文字的类别;
步骤S3,使用两个全连接网络代替一个全连接网络,两个全连接网络分别输出一个分类概率,对两个分类概率综合获得总的概率。


2.根据权利要求1所述的一种减少深度学习OCR的参数量和计算量的方法,其特征在于,所述步骤S3之后还包...

【专利技术属性】
技术研发人员:黄鸿康涂天牧严博宇赵寒枫刘新宇
申请(专利权)人:深圳市新国都金服技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1