CN115273110A - 基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 - Google Patents
基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115273110A CN115273110A CN202210933310.3A CN202210933310A CN115273110A CN 115273110 A CN115273110 A CN 115273110A CN 202210933310 A CN202210933310 A CN 202210933310A CN 115273110 A CN115273110 A CN 115273110A
- Authority
- CN
- China
- Prior art keywords
- coding
- decoding
- model
- tensorrt
- model file
- 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
Links
Images
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/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
-
- 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19147—Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- 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/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/1918—Fusion techniques, i.e. combining data from various sources, e.g. sensor fusion
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Character Discrimination (AREA)
Abstract
本申请实施例属于人工智能技术领域,涉及一种基于TensorRT的文本识别模型部署方法,包括搭建包括编码网络和解码网络的初始文本识别模型;通过训练数据集对初始文本识别模型进行训练,得到目标文本识别模型;根据目标文本识别模型获得目标编码网络和目标解码网络,保存得到编码模型文件和解码模型文件;将编码模型文件和解码模型文件分别进行两次格式转换,得到编码TensorRT模型文件和解码TensorRT模型文件;基于编码TensorRT模型文件和解码TensorRT模型文件,通过TensorRT搭建文本识别模型。本申请还提供一种基于TensorRT的文本识别模型部署装置、设备及存储介质。此外,本申请还涉及区块链技术,目标编码网络和目标解码网络可存储于区块链中。本申请可以实现模型加速,减小内存占用。
Description
技术领域
本申请涉及人工智能的模型部署技术领域,尤其涉及一种基于TensorRT的文本识别模型部署方法、装置、设备及存储介质。
背景技术
文字识别是计算机视觉中的热门研究课题之一,也是基于视觉的模式识别应用的一个重要研究方向。文字识别技术需要将定位到的文字区域转化为计算机可辨识和操作的符号。近年来,身份证、驾驶证、护照、车牌、银行卡、名片等证件的识别大量使用成熟的OCR(Optical Character Recognition,光学字符识别)文字识别技术,尤其是基于深度学习的OCR识别技术。
一般是通过手机或者带有摄像头的终端设备对证件进行拍照,然后做OCR文字识别,提取文本信息,此技术越来越被广大消费用户认知并使用。目前基于注意力机制的文字识别方法在OCR领域取得了很大成果,主要原因基于注意力的方法可以学习到一维或者二维特征的内在表示。一般情况下,可以通过基于RNN(Recurrent Neural Network,循环神经网络)的方法实现注意力机制,但是基于这种局部注意力机制的方法却存在注意力漂移的问题,并且在RNN架构下模型无法高效地并行计算。因此,基于Transformer架构的模型得到了极大程度的推广,在文本识别中引入Transformer全局注意力机制,提高模型性能和缓解注意力混淆问题。
现有的基于Transformer的OCR识别网络,基本都是采用自回归循环解码的模式进行。该模型的识别服务是以传统的神经网络框架例如TensorFlow、PyTorch等作为推理引擎。由于不同业务需求的识别模型可能是在不同的神经网络框架下训练生成的,比如说OCR文本检测利用的是TensorFlow,OCR文本识别利用的是PyTorch。如果线上服务都用深度学习框架进行推理,则需要在服务器上部署多种框架,相对于统一的推理引擎,多种框架不利于结构的优化以及数据之间的通信,且会增加升级和维护的成本。另外,如果直接使用训练框架进行推理,一是会让系统变的过于冗余,不利于模型服务管理和更新迭代;二是训练框架不会做量化、运算图优化等操作,导致推理的显存占用和推理延时过大。
发明内容
本申请实施例的目的在于提出一种基于TensorRT的文本识别模型部署方法、装置、计设备及存储介质,以解决相关技术中模型推理会造成系统冗余,不利于模型服务管理和更新迭代,同时推理的显存占用和推理延时过大的技术问题。
为了解决上述技术问题,本申请实施例提供一种基于TensorRT的文本识别模型部署方法,采用了如下所述的技术方案:
搭建初始文本识别模型,其中,所述初始文本识别模型包括编码网络和解码网络;
获取文本图像数据集,基于所述文本图像数据集得到训练数据集;
将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图;
将所述文本特征图输入所述解码网络,输出识别结果;
基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型;
根据所述目标文本识别模型获得目标编码网络和目标解码网络,将所述目标编码网络和所述目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;
将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;
对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;
基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
进一步的,所述编码网络包括特征提取层和编码层,其中,所述编码层包括残差子层、多头全局注意力子层以及特征融合子层,所述将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图的步骤包括:
将所述训练数据集输入所述特征提取层进行特征提取,得到特征数据集;
将所述特征数据集输入所述残差子层进行残差连接,得到扩张特征图;
通过所述多头全局注意力子层对所述扩张特征图进行注意力机制计算,得到全局注意力特征图;
将所述全局注意力特征图输入所述特征融合子层进行卷积融合操作,得到融合特征图;
对所述融合特征图进行位置编码,得到包含位置信息的文本特征图。
进一步的,所述解码网络包括嵌入层、解码层以及输出层,其中,所述解码层包括掩码多头注意力子层、多头注意力子层和前馈网络子层,所述将所述文本特征图输入所述解码网络,输出识别结果的步骤包括:
将所述训练数据集的标注文本数据输入所述嵌入层进行嵌入操作,得到嵌入文本向量;
对所述嵌入文本向量进行位置编码,得到文本位置编码向量;
将所述位置编码向量输入所述掩码多头注意力子层进行注意力计算,得到文本注意力特征;
将所述文本注意力特征输入所述多头注意力子层,与所述文本特征图进行注意力计算,得到文本增强特征;
通过所述前馈网络子层对所述文本增强特征进行计算,得到文本强化特征;
将所述文本强化特征输入所述输出层,经过所述输出层对所述文本强化特征依次进行线性变换和分类处理,得到识别结果。
进一步的,所述基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型的步骤包括:
基于所述识别结果计算损失函数;
根据所述损失函数调整所述初始文本识别模型对应的所述编码网络和所述解码网络的模型参数,继续进行迭代训练,直至模型收敛,输出目标文本识别模型。
进一步的,所述将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件的步骤包括:
获取所述目标编码网络的编码输入张量和所述编码模型文件的编码保存路径,以及所述目标解码网络的解码输入张量和所述解码模型文件的解码保存路径;
调用预先设置的编码网络格式转换指令,根据所述编码输入张量和所述编码保存路径将所述编码模型文件转换为ONNX格式的通用编码模型文件;
调用预先设置的解码网络格式转换指令,根据所述解码输入张量和所述编解码保存路径将所述解码模型文件转换为ONNX格式的通用解码模型文件。
进一步的,所述对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化的步骤包括:
将所述通用编码模型文件和所述通用解码模型文件分别导入TensorRT;
按照预设规则,将所述通用编码模型文件对应的目标编码网络和所述通用解码模型文件对应的目标解码网络进行量化,得到编码TensorRT模型文件和解码TensorRT模型文件。
进一步的,所述基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型的步骤包括:
通过所述TensorRT加载所述编码TensorRT模型文件和所述解码TensorRT模型文件,得到目标编码网络和目标解码网络;
采用所述TensorRT构建推理引擎,将所述目标编码网络和所述目标解码网络的模型参数部署至所述推理引擎,得到文本识别模型。
为了解决上述技术问题,本申请实施例还提供一种基于TensorRT的文本识别模型部署装置,采用了如下所述的技术方案:
第一搭建模块,用于搭建初始文本识别模型,其中,所述初始文本识别模型包括编码网络和解码网络;
获取模块,用于获取文本图像数据集,基于所述文本图像数据集得到训练数据集;
编码模块,用于将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图;
解码模块,用于将所述文本特征图输入所述解码网络,输出识别结果;
更新模块,用于基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型;
保存模块,用于根据所述目标文本识别模型获得目标编码网络和目标解码网络,将所述目标编码网络和所述目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;
第一格式转换模块,用于将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;
第二格式转换模块,用于对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;
第二搭建模块,用于基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
该计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上所述的基于TensorRT的文本识别模型部署方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上所述的基于TensorRT的文本识别模型部署方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:
本申请通过搭建初始文本识别模型,其中,初始文本识别模型包括编码网络和解码网络;获取文本图像数据集,基于文本图像数据集得到训练数据集;将训练数据集输入编码网络进行特征提取,得到文本特征图;将文本特征图输入解码网络,输出识别结果;基于识别结果对初始文本识别模型进行迭代更新,得到目标文本识别模型;根据目标文本识别模型获得目标编码网络和目标解码网络,将目标编码网络和目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;将编码模型文件和解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;对通用编码模型文件和通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;基于编码TensorRT模型文件和解码TensorRT模型文件,通过TensorRT搭建文本识别模型;本申请通过将训练好的目标编码网络和目标解码网络对应的编码模型文件和解码模型文件,转换为TensorRT对应的格式,通过TensorRT对目标编码网络和目标解码网络进行模型推理,搭建文本识别模型,可以实现模型加速,提高文本识别效率,节约时间成本;同时,在保持模型原有精确度几乎无损的情况下,同时也提升了GPU服务器的资源利用率,提升服务,减少相应的资源成本。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的基于TensorRT的文本识别模型部署方法的一个实施例的流程图;
图3是根据本申请的基于TensorRT的文本识别模型部署装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请提供了一种基于TensorRT的文本识别模型部署方法,涉及人工智能,可以应用于如图1所示的系统架构100中,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于TensorRT的文本识别模型部署方法一般由服务器/终端设备执行,相应地,基于TensorRT的文本识别模型部署装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的基于TensorRT的文本识别模型部署方法的一个实施例的流程图,包括以下步骤:
步骤S201,搭建初始文本识别模型,其中,初始文本识别模型包括编码网络和解码网络。
在本实施例中,搭建初始文本识别模型,初始文本识别模型是基于Transformer的OCR识别网络,包括编码网络和解码网络,编码网络用于提取文字图像中的视觉特征,进而通过解码网络,利用多头注意力机制进行文字内容识别。
步骤S202,获取文本图像数据集,基于文本图像数据集得到训练数据集。
在本实施例中,文本图像数据集可以通过公开数据集采集,也可以采用图像采集装置进行采集,将采集到原始图像数据集中的图像进行归一化处理,将归一化处理后的数据集进行文字标注,得到文本图像数据集。
归一化的目的是控制输入的文字图像的大小,保证识别的速度。
将文本图像数据集按照预设比例随机分成训练数据集和验证数据集,例如,训练数据集的文本图像数量占文本图像数据集总文本图像数据的80%,验证数据集的文本图像数量占文本图像数据集总文本图像数据的20%。
步骤S203,将训练数据集输入编码网络进行特征提取,得到文本特征图。
其中,编码网络采用CNN网络(Convolutional Neural Network,卷积神经网络),解码网络采用Transformer decoder网络,包括特征提取层和N个堆叠而成的编码层,N为大于0的自然数。
特征提取层包括至少两层不同通道数的卷积子层,以两层卷积子层为例,第一卷积子层的卷积核为3×3,通道数为64,第二卷积子层的卷积核为3×3,通道数为128;编码层包括残差子层、多头全局注意力子层以及特征融合子层,其中,残差子层可以采用卷积结构,对特征图进行扩张处理,增强特征的多尺度表达能力;多头全局注意力子层可以帮助编码网络更好地学习全局不同方面的特征,从而可以获得具有更大的感受野的特征图,从而可以满足多变的现实情况,具有较好的鲁棒性;特征融合子层具体可以采用卷积核为3×3的卷积层。
在本实施例中,上述将训练数据集输入编码网络进行特征提取,得到文本特征图的步骤包括:
将训练数据集输入特征提取层进行特征提取,得到特征数据集;
将特征数据集输入残差子层进行残差连接,得到扩张特征图;
通过多头全局注意力子层对扩张特征图进行注意力机制计算,得到全局注意力特征图;
将全局注意力特征图输入特征融合子层进行卷积融合操作,得到融合特征图;
对融合特征图进行位置编码,得到包含位置信息的文本特征图。
具体的,将训练数据集输入特征提取层,训练数据集中的每张文本图像依次经过第一卷积子层和第二卷积子层的卷积处理,得到特征数据集,将特征数据集输入残差子层进行扩张卷积处理,得到特征增强后的扩张特征图,将扩张特征图输入多头全局注意力子层进行注意力机制计算,获得包含上下文信息的全局注意力特征图,将全局注意力特征图输入特征融合子层进行融合,得到融合特征。
经过Positional Encoding操作对融合特征进行位置编码,获得包含位置信息的文本特征图。
在对融合特征进行位置编码之前,需要对其进行嵌入操作(embedding),得到图像嵌入特征,对图像嵌入特征进行Positional Encoding操作,其中,Positional Encoding操作的公式如下:
其中,pos表示融合特征在文本图像中的位置;i表示融合特征嵌入矩阵的位置,dmodel表示模型的维度大小。
在本实施例中,通过编码网络各层对文本图像的特征提取,可以提高特征提取的准确度。
步骤S204,将文本特征图输入解码网络,输出识别结果。
其中,解码网络包括嵌入层、M个堆叠而成的解码层以及输出层,M为大于0的自然数。
嵌入层也称为embedding层,用于将文本中的每个词语映射成预设维度的向量,预设维度与embedding层使用的模型维度一致。解码层包括掩码多头注意力子层、多头注意力子层和前馈网络子层,掩码多头注意力子层不能捕获后面位置的词的依赖关系,原因是解码器解码时我们无法得知未来的信息,即后面位置的词还没生成出来,通常会使用Mask矩阵标注哪些位置不能计算注意力向量,计算注意力向量时Mask矩阵标注的位置的值会被置为0;多头注意力子层计算注意力向量时可以捕获任意两个词之间的依赖关系,捕获上下文信息;前馈网络子层用于将多头注意力子层输出的特征进行连接增强,防止拟合不够。
需要说明的是,多头注意力子层和前向反馈子层都包含一个残差连接结构,将子层输出与子层输入相加(add)再做规范化(Norm)作为子层最终的输出。
在本实施例中,上述将文本特征图输入所述解码网络,输出识别结果的步骤包括:
将训练数据集的标记文本数据输入嵌入层进行嵌入操作,得到嵌入文本向量;
对嵌入文本向量进行位置编码,得到文本位置编码向量;
将位置编码向量输入掩码多头注意力子层进行注意力计算,得到文本注意力特征;
将文本注意力特征输入多头注意力子层,与文本特征图进行注意力计算,得到文本增强特征;
通过前馈网络子层对文本增强特征进行计算,得到文本强化特征;
将文本强化特征输入所述输出层,经过输出层对文本强化特征依次进行线性变换和分类处理,得到识别结果。
解码层的输入在训练时是文本图像的标注文本数据,即文本图像的文字识别结果,在预测时则是一个表示开始的特殊字符,得到输出后再将输出作为下一时刻的输入,一直循环直到输出表示结束的特殊字符为止。除此之外,解码层还需要编码网络输出的文本特征图作为额外输入,可以进一步优化文本识别结果,最终解码层的输出为输出文本识别结果的文本向量。
在本实施例中,输出层包括线性层和softmax层,由于解码层最后输出的为文本向量,通过线性层将输出的文本向量映射为更长的向量,例如,文本图像中有100个文字,则通过线性层输出的向量有100维,每个位置的文字代表相应文字的分数,通过softmax层将分数转换为概率,概率最大的文字作为当前输出层的输出。
在本实施例中,通过解码网络对文本特征图进行识别,可以保证精准的识别效果。
步骤S205,基于识别结果对初始文本识别模型进行迭代更新,得到目标文本识别模型。
在本实施例中,可以根据损失函数进行模型参数的调整更新。具体的,根据识别结果和实际的标注文本计算损失函数,根据损失函数调整初始文本识别模型对应的编码网络和解码网络的模型参数,继续进行迭代训练,直至模型收敛,输出目标文本识别模型。
其中,损失函数可以采用交叉熵函数,计算损失函数得到对应的损失值后,可以利用loss.backward()函数进行反向传播获取编码网络和解码网络中各个参数的梯度,通过预先构建的训练优化器进行参数调整更新。
根据损失函数调整模型参数,继续进行迭代训练,模型训练到一定程度,此时,模型的性能达到最优状态,损失函数无法继续下降,即收敛。判断收敛的方式即为只需要计算前后两轮迭代中的损失函数,若损失函数仍在变化,则可以继续选择训练数据集输入至文本识别模型中继续进行迭代训练;若损失函数没有显著变化,则可认为模型收敛,此时确定文本识别模型训练完成,则停止训练,并输出最终的文本识别模型作为目标文本识别模型。
在本实施例中,基于损失函数调整模型参数,可以提升模型训练速度,同时保证训练得到的模型的识别准确度。
在一些可选的实现方式中,在模型收敛之后,得到待验证模型,对待验证模型进行验证,具体包括如下步骤:
将验证数据集输入待验证模型中,输出预测结果;
根据预测结果计算识别准确率;
若识别准确率大于等于预设阈值,输出待验证模型作为目标文本识别模型;
若识别准确率小于预设阈值,更新训练数据集,重新训练初始文本识别模型,即重新执行步骤S203至步骤S209。
通过验证,可以进一步提升文本识别模型的识别准确率。
步骤S206,根据目标文本识别模型获得目标编码网络和目标解码网络,将目标编码网络和目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件。
在本实施例中,从目标文本识别模型中提取训练完成的目标编码网络和目标解码网络,调用预先配置的编码网络保存方法torch.save(master.encoder.state_dict(),‘encoder.pth’)保存目标编码网络,得到编码模型文件,其中,master.encoder表示目标编码网络,encoder.pth表示目标编码网络的保存路径;调用预先配置的解码网络保存方法torch.save(master.decoder.state_dict(),‘decoder.pth’)保存目标解码网络,得到解码模型文件,其中,master.decoder表示目标解码网络,decoder.pth表示目标解码网络的保存路径。
在本实施例中,将编码网络和解码网络分别保存,提升模型部署的效率。
需要强调的是,为进一步保证目标编码网络和目标解码网络的私密和安全性,上述目标编码网络和目标解码网络还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
步骤S207,将编码模型文件和解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件。
在本实施例中,将编码模型文件和解码模型文件分别进行格式转换,转换为ONNX格式,其中,ONNX(Open Neural Network Exchange,开放神经网络交换)格式,是一个用于表示深度学习模型的标准,可使模型在不同框架之间进行转移;ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型,使得不同的人工智能框架(如Pytorch,MXNet)可以采用相同格式存储模型数据并交互。
具体地,获取目标编码网络的编码输入张量和编码模型文件的编码保存路径,以及目标解码网络的解码输入张量和解码模型文件的解码保存路径;调用预先设置的编码网络格式转换指令,根据编码输入张量和编码保存路径将编码模型文件转换为ONNX格式的通用编码模型文件;调用预先设置的解码网络格式转换指令,根据解码输入张量和编解码保存路径将解码模型文件转换为ONNX格式的通用解码模型文件。
对于将目标编码网络转换为ONNX格式模型文件,具体的,假设目标编码网络的输入维度(即编码输入张量)为[B,C,H,W],其中B为批量(batch);C为通道(channel),一般情况下采用RGB或者灰度图片,这里C=3或1;H和W分别为输入文字图像的高(height)和宽(width),这里H=48,W=160。为了适配不同批量的输入,将B设置为动态轴,则最终目标编码网络的输出尺度为[B,240,512]。
确定目标编码网络的编码保存路径encoder.pth以及编码输入张量,调用预先设置的编码网络格式转换指令,根据编码保存路径encoder.pth和编码输入张量[B,1,48,160],将编码模型文件转换为ONNX格式的通用编码模型文件。
对于将目标解码网络转换为ONNX格式模型文件,具体的,目标解码网络包括三部分,第一部分为全局特征表示,来自目标编码网络的输出,假设目标编码网络的维度为240*512,则尺寸为[B,240,512],动态轴为B;第二部分,第一位为开始标志为,根据循环编码,不断加上上一次的解码输出序列,尺寸为[B,L],L为输入序列的长度length,动态轴为B和L;第三部分为掩码mask,尺寸为[B,1,L,L],动态轴为B和L。需要说明的是,解码输入张量包括上述三部分,即包括[B,240,512]、[B,L]和[B,1,L,L]。
确定目标解码网络的解码保存路径decoder.pth以及解码输入张量,调用预先设置的解码网络格式转换指令,根据解码保存路径decoder.pth和解码输入张量[B,240,512]、[B,L]和[B,1,L,L],将解码模型文件转换为ONNX格式的通用解码模型文件。
步骤S208,对通用编码模型文件和通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件。
首先,配置用于运行TensorRT的环境,其中,TensorRT是一个高性能的深度学习推理(Inference)优化器,可以为深度学习应用提供低延迟、高吞吐率的部署推理。TensorRT现已能支持TensorFlow、Caffe、Mxnet、Pytorch等几乎所有的深度学习框架,将TensorRT和NVIDIA的GPU结合起来,能在几乎所有的框架中进行快速和高效的部署推理。
在本实施例中,将ONNX格式的通用编码模型文件和通用解码模型文件转换为可在TensorRT运行的TensorRT引擎文件。
具体地,将通用编码模型文件和通用解码模型文件分别导入TensorRT;按照预设规则,将通用编码模型文件对应的目标编码网络和通用解码模型文件对应的目标解码网络进行量化,得到编码TensorRT模型文件和解码TensorRT模型文件。
其中,预设规则为不同的计算模式设定,计算模式包括FP32、FP16和INT8模式等,按照不同的计算模式设定,利用TensorRT生成对应的TensorRT引擎文件,TensorRT引擎文件包括编码TensorRT模型文件和解码TensorRT模型文件。
需要说明的是,FP32和FP16模式可以直接通过TensorRT内的参数接口直接设定,无需经过校准集校准,而INT8模式需要先经过校准集校准。
以通过TensorRT将目标编码网络转换为INT8模式的TensorRT引擎文件为例,将通用编码模型文件导入TensorRT,通过预先设置的校准数据对目标编码网络进行INT8量化,得到编码TensorRT模型文件,保存转化成功的编码TensorRT模型文件。
其中,校准数据可以从文本图像数据集中获取,采用对称量化的方法对目标编码网络进行INT8量化。
应当理解,目标解码网络的转换方法与目标编码网络是相同的,故此不再赘述。
步骤S209,基于编码TensorRT模型文件和解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
具体地,通过TensorRT加载编码TensorRT模型文件和解码TensorRT模型文件,从编码TensorRT模型文件中获得目标编码网络,从解码TensorRT模型文件中获得目标解码网络;采用TensorRT构建推理引擎,将目标编码网络和目标解码网络的模型参数部署至推理引擎,得到文本识别模型。
在本实施例中,通过构建的TensorRT推理引擎对目标编码网络和目标解码网络进行模型加速推理,将目标编码网络和目标解码网络的模型参数部署至推理引擎,搭建出加速后的文本识别模型。
TensorRT推理引擎支持kFLOAT(FP32)、kHALF(FP16)、kINT8(INT8)三种精度的计算,在使用时通过低精度进行模型推理,可以达到加速的目的。当模型训练完成后,在部署推理的过程中由于不需要反向传播,因此可以适当降低数据精度,更低的数据精度将会使得内存占用和延迟更低,模型体积更小,且不会影响训练之后得到的文本识别模型对文本图像进行特征提取以及文本识别的准确度。
本申请通过将训练好的目标编码网络和目标解码网络对应的编码模型文件和解码模型文件,转换为TensorRT对应的格式,通过TensorRT对目标编码网络和目标解码网络进行模型推理,搭建文本识别模型,可以实现模型加速,提高文本识别效率;同时,在保持模型原有精确度几乎无损的情况下,同时也提升了GPU服务器的资源利用率,提升服务的同时,减少相应的资源成本。而且,在生产环境下,面对大规模数据时能够提高处理效率,节约时间成本。
在本实施例的一些可选的实现方式中,在上述基于编码TensorRT模型文件和解码TensorRT模型文件,通过TensorRT搭建文本识别模型的步骤之后还包括:
获取目标文本图像,通过文本识别模型对目标文本图像进行文本识别,得到文本识别结果。
通过TensorRT搭建文本识别模型进行文本识别,可以进行更高效的计算,提升识别速度。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图3,作为对上述图2所示方法的实现,本申请提供了一种基于TensorRT的文本识别模型部署装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图3所示,本实施例所述的基于TensorRT的文本识别模型部署装置300包括:第一搭建模块301、获取模块302、编码模块303、解码模块304、更新模块305、保存模块306、第一格式转换模块307、第二格式转换模块308以及第二搭建模块309。其中:
第一搭建模块301用于搭建初始文本识别模型,其中,所述初始文本识别模型包括编码网络和解码网络;
获取模块302用于获取文本图像数据集,基于所述文本图像数据集得到训练数据集;
编码模块303用于将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图;
解码模块304用于将所述文本特征图输入所述解码网络,输出识别结果;
更新模块305用于基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型;
保存模块306用于根据所述目标文本识别模型获得目标编码网络和目标解码网络,将所述目标编码网络和所述目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;
第一格式转换模块307用于将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;
第二格式转换模块308用于对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;
第二搭建模块309用于基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
需要强调的是,为进一步保证目标编码网络和目标解码网络的私密和安全性,上述目标编码网络和目标解码网络还可以存储于一区块链的节点中。
基于上述基于TensorRT的文本识别模型部署装置,通过将训练好的目标编码网络和目标解码网络对应的编码模型文件和解码模型文件,转换为TensorRT对应的格式,通过TensorRT对目标编码网络和目标解码网络进行模型推理,搭建文本识别模型,可以实现模型加速,提高文本识别效率;同时,在保持模型原有精确度几乎无损的情况下,同时也提升了GPU服务器的资源利用率,服务提升的同时,减少相应的资源成本。
在本实施例中,编码模块303包括特征提取子模块、残差子模块、全局注意力子模块、融合模块以及位置编码模块,其中:
特征提取子模块用于将所述训练数据集输入所述特征提取层进行特征提取,得到特征数据集;
残差子模块用于将所述特征数据集输入所述残差子层进行残差连接,得到扩张特征图;
全局注意力子模块用于通过所述多头全局注意力子层对所述扩张特征图进行注意力机制计算,得到全局注意力特征图;
融合模块用于将所述全局注意力特征图输入所述特征融合子层进行卷积融合操作,得到融合特征图;
位置编码模块用于对所述融合特征图进行位置编码,得到包含位置信息的文本特征图。
在本实施例中,通过编码网络各层对文本图像的特征提取,可以提高特征提取的准确度。
在本实施例中,解码模块304包括嵌入子模块、编码子模块、掩码注意力子模块、多头注意力子模块、前馈子模块以及输出子模块,其中:
嵌入子模块用于将所述训练数据集的标注文本数据输入所述嵌入层进行嵌入操作,得到嵌入文本向量;
编码子模块用于对所述嵌入文本向量进行位置编码,得到文本位置编码向量;
掩码注意力子模块用于将所述位置编码向量输入所述掩码多头注意力子层进行注意力计算,得到文本注意力特征;
多头注意力子模块用于将所述文本注意力特征输入所述多头注意力子层,与所述文本特征图进行注意力计算,得到文本增强特征;
前馈子模块用于通过所述前馈网络子层对所述文本增强特征进行计算,得到文本强化特征;
输出子模块用于将所述文本强化特征输入所述输出层,经过所述输出层对所述文本强化特征依次进行线性变换和分类处理,得到识别结果。
在本实施例中,通过解码网络对文本特征图进行识别,可以保证精准的识别效果。
在本实施例的一些可选的实现方式中,更新模块305包括计算子模块和调整子模块,计算子模块用于基于所述识别结果计算损失函数;调整子模块用于根据所述损失函数调整所述初始文本识别模型对应的所述编码网络和所述解码网络的模型参数,继续进行迭代训练,直至模型收敛,输出目标文本识别模型。
在本实施例中,基于损失函数调整模型参数,可以提升模型训练速度,同时保证训练得到的模型的识别准确度。
在本实施例中,第一格式转换模块307进一步用于:
获取所述目标编码网络的编码输入张量和所述编码模型文件的编码保存路径,以及所述目标解码网络的解码输入张量和所述解码模型文件的解码保存路径;
调用预先设置的编码网络格式转换指令,根据所述编码输入张量和所述编码保存路径将所述编码模型文件转换为ONNX格式的通用编码模型文件;
调用预先设置的解码网络格式转换指令,根据所述解码输入张量和所述编解码保存路径将所述解码模型文件转换为ONNX格式的通用解码模型文件。
在本实施例中,通过转换为ONNX格式,可以使得训练好的模型在不同框架之间进行转移,提高适用性。
在本实施例中,第二格式转换模块308包括导入子模块和量化子模块,导入子模块用于将所述通用编码模型文件和所述通用解码模型文件分别导入TensorRT;量化子模块用于按照预设规则,将所述通用编码模型文件对应的目标编码网络和所述通用解码模型文件对应的目标解码网络进行量化,得到编码TensorRT模型文件和解码TensorRT模型文件。
本实施例通过将通用编码模型文件和通用解码模型文件转换为TensorRT引擎文件,可以保证模型低延迟和高效率的部署推理。
在一些可选的实现方式中,第二搭建模块309包括加载子模块和搭建子模块,加载子模块用于通过所述TensorRT加载所述编码TensorRT模型文件和所述解码TensorRT模型文件,得到目标编码网络和目标解码网络;搭建子模块用于采用所述TensorRT构建推理引擎,将所述目标编码网络和所述目标解码网络的模型参数部署至所述推理引擎,得到文本识别模型。
本实施例可以在保证模型文本识别的准确度的基础上,降低内存占用和延迟,减小模型体积。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件41-43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如基于TensorRT的文本识别模型部署方法的计算机可读指令等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器42在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的计算机可读指令或者处理数据,例如运行所述基于TensorRT的文本识别模型部署方法的计算机可读指令。
所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本实施例通过处理器执行存储在存储器的计算机可读指令时实现如上述实施例基于TensorRT的文本识别模型部署方法的步骤,通过将训练好的目标编码网络和目标解码网络对应的编码模型文件和解码模型文件,转换为TensorRT对应的格式,通过TensorRT对目标编码网络和目标解码网络进行模型推理,搭建文本识别模型,可以实现模型加速,提高文本识别效率;同时,在保持模型原有精确度几乎无损的情况下,同时也提升了GPU服务器的资源利用率,服务提升的同时,减少相应的资源成本。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于TensorRT的文本识别模型部署方法的步骤,通过将训练好的目标编码网络和目标解码网络对应的编码模型文件和解码模型文件,转换为TensorRT对应的格式,通过TensorRT对目标编码网络和目标解码网络进行模型推理,搭建文本识别模型,可以实现模型加速,提高文本识别效率;同时,在保持模型原有精确度几乎无损的情况下,同时也提升了GPU服务器的资源利用率,服务提升的同时,减少相应的资源成本。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (10)
1.一种基于TensorRT的文本识别模型部署方法,其特征在于,包括下述步骤:
搭建初始文本识别模型,其中,所述初始文本识别模型包括编码网络和解码网络;
获取文本图像数据集,基于所述文本图像数据集得到训练数据集;
将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图;
将所述文本特征图输入所述解码网络,输出识别结果;
基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型;
根据所述目标文本识别模型获得目标编码网络和目标解码网络,将所述目标编码网络和所述目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;
将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;
对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;
基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
2.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述编码网络包括特征提取层和编码层,其中,所述编码层包括残差子层、多头全局注意力子层以及特征融合子层,所述将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图的步骤包括:
将所述训练数据集输入所述特征提取层进行特征提取,得到特征数据集;
将所述特征数据集输入所述残差子层进行残差连接,得到扩张特征图;
通过所述多头全局注意力子层对所述扩张特征图进行注意力机制计算,得到全局注意力特征图;
将所述全局注意力特征图输入所述特征融合子层进行卷积融合操作,得到融合特征图;
对所述融合特征图进行位置编码,得到包含位置信息的文本特征图。
3.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述解码网络包括嵌入层、解码层以及输出层,其中,所述解码层包括掩码多头注意力子层、多头注意力子层和前馈网络子层,所述将所述文本特征图输入所述解码网络,输出识别结果的步骤包括:
将所述训练数据集的标注文本数据输入所述嵌入层进行嵌入操作,得到嵌入文本向量;
对所述嵌入文本向量进行位置编码,得到文本位置编码向量;
将所述位置编码向量输入所述掩码多头注意力子层进行注意力计算,得到文本注意力特征;
将所述文本注意力特征输入所述多头注意力子层,与所述文本特征图进行注意力计算,得到文本增强特征;
通过所述前馈网络子层对所述文本增强特征进行计算,得到文本强化特征;
将所述文本强化特征输入所述输出层,经过所述输出层对所述文本强化特征依次进行线性变换和分类处理,得到识别结果。
4.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型的步骤包括:
基于所述识别结果计算损失函数;
根据所述损失函数调整所述初始文本识别模型对应的所述编码网络和所述解码网络的模型参数,继续进行迭代训练,直至模型收敛,输出目标文本识别模型。
5.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件的步骤包括:
获取所述目标编码网络的编码输入张量和所述编码模型文件的编码保存路径,以及所述目标解码网络的解码输入张量和所述解码模型文件的解码保存路径;
调用预先设置的编码网络格式转换指令,根据所述编码输入张量和所述编码保存路径将所述编码模型文件转换为ONNX格式的通用编码模型文件;
调用预先设置的解码网络格式转换指令,根据所述解码输入张量和所述编解码保存路径将所述解码模型文件转换为ONNX格式的通用解码模型文件。
6.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化的步骤包括:
将所述通用编码模型文件和所述通用解码模型文件分别导入TensorRT;
按照预设规则,将所述通用编码模型文件对应的目标编码网络和所述通用解码模型文件对应的目标解码网络进行量化,得到编码TensorRT模型文件和解码TensorRT模型文件。
7.根据权利要求1所述的基于TensorRT的文本识别模型部署方法,其特征在于,所述基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型的步骤包括:
通过所述TensorRT加载所述编码TensorRT模型文件和所述解码TensorRT模型文件,得到目标编码网络和目标解码网络;
采用所述TensorRT构建推理引擎,将所述目标编码网络和所述目标解码网络的模型参数部署至所述推理引擎,得到文本识别模型。
8.一种基于TensorRT的文本识别模型部署装置,其特征在于,包括:
第一搭建模块,用于搭建初始文本识别模型,其中,所述初始文本识别模型包括编码网络和解码网络;
获取模块,用于获取文本图像数据集,基于所述文本图像数据集得到训练数据集;
编码模块,用于将所述训练数据集输入所述编码网络进行特征提取,得到文本特征图;
解码模块,用于将所述文本特征图输入所述解码网络,输出识别结果;
更新模块,用于基于所述识别结果对所述初始文本识别模型进行迭代更新,得到目标文本识别模型;
保存模块,用于根据所述目标文本识别模型获得目标编码网络和目标解码网络,将所述目标编码网络和所述目标解码网络分别进行保存,得到对应的编码模型文件和解码模型文件;
第一格式转换模块,用于将所述编码模型文件和所述解码模型文件分别进行格式转换,得到通用编码模型文件和通用解码模型文件;
第二格式转换模块,用于对所述通用编码模型文件和所述通用解码模型文件分别进行TensorRT格式转化,得到编码TensorRT模型文件和解码TensorRT模型文件;
第二搭建模块,用于基于所述编码TensorRT模型文件和所述解码TensorRT模型文件,通过TensorRT搭建文本识别模型。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的基于TensorRT的文本识别模型部署方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的基于TensorRT的文本识别模型部署方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210933310.3A CN115273110A (zh) | 2022-08-04 | 2022-08-04 | 基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210933310.3A CN115273110A (zh) | 2022-08-04 | 2022-08-04 | 基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115273110A true CN115273110A (zh) | 2022-11-01 |
Family
ID=83748318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210933310.3A Pending CN115273110A (zh) | 2022-08-04 | 2022-08-04 | 基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115273110A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116152228A (zh) * | 2023-04-14 | 2023-05-23 | 山东奇妙智能科技有限公司 | 基于机器视觉和机器学习轮胎缺陷检测方法及系统 |
-
2022
- 2022-08-04 CN CN202210933310.3A patent/CN115273110A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116152228A (zh) * | 2023-04-14 | 2023-05-23 | 山东奇妙智能科技有限公司 | 基于机器视觉和机器学习轮胎缺陷检测方法及系统 |
CN116152228B (zh) * | 2023-04-14 | 2023-06-27 | 山东奇妙智能科技有限公司 | 基于机器视觉和机器学习轮胎缺陷检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112418292B (zh) | 一种图像质量评价的方法、装置、计算机设备及存储介质 | |
CN113327279B (zh) | 一种点云数据处理方法、装置、计算机设备及存储介质 | |
CN112330331A (zh) | 基于人脸识别的身份验证方法、装置、设备及存储介质 | |
CN113947095A (zh) | 多语种文本翻译方法、装置、计算机设备及存储介质 | |
CN114420107A (zh) | 基于非自回归模型的语音识别方法及相关设备 | |
CN113763249A (zh) | 文本图像超分辨率重建方法及其相关设备 | |
CN112528029A (zh) | 文本分类模型处理方法、装置、计算机设备及存储介质 | |
CN114241459B (zh) | 一种驾驶员身份验证方法、装置、计算机设备及存储介质 | |
CN113569998A (zh) | 票据自动识别方法、装置、计算机设备及存储介质 | |
CN112699213A (zh) | 语音意图识别方法、装置、计算机设备及存储介质 | |
CN114445832A (zh) | 基于全局语义的文字图像识别方法、装置及计算机设备 | |
CN114861746A (zh) | 基于大数据的反欺诈识别方法、装置及相关设备 | |
CN113887237A (zh) | 多意图文本的槽位预测方法、装置及计算机设备 | |
CN115273110A (zh) | 基于TensorRT的文本识别模型部署方法、装置、设备及存储介质 | |
CN114091452A (zh) | 一种基于适配器的迁移学习方法、装置、设备及存储介质 | |
CN113435210A (zh) | 社交图片文本识别方法、装置、计算机设备及存储介质 | |
CN116777646A (zh) | 基于人工智能的风险识别方法、装置、设备及存储介质 | |
CN113362249B (zh) | 文字图像合成方法、装置、计算机设备及存储介质 | |
CN112966150A (zh) | 一种视频内容抽取的方法、装置、计算机设备及存储介质 | |
CN113505595A (zh) | 文本短语抽取方法、装置、计算机设备及存储介质 | |
CN114091451A (zh) | 一种文本分类方法、装置、设备及存储介质 | |
CN112417886A (zh) | 意图实体信息抽取方法、装置、计算机设备及存储介质 | |
CN112036501A (zh) | 基于卷积神经网络的图片的相似度检测方法及其相关设备 | |
CN113420628B (zh) | 一种群体行为识别方法、装置、计算机设备及存储介质 | |
CN114764858B (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 |