图像识别模型更新方法及相关装置转让专利

申请号 : CN201910619158.X

文献号 : CN110321964B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周渝曦许磊

申请人 : 重庆电子工程职业学院

摘要 :

本发明涉及图像识别领域,提供了一种识别模型更新方法及相关装置,所述方法包括:获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数;获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标;保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。本发明在保持原有识别模型的参数不变的情况下,新增原有识别模型的参数,并只对新增的参数进行训练更新,在保持了原有分类任务识别效果不变的同时,减少了更新识别模型的消耗的训练时间和训练资源。

权利要求 :

1.一种图像识别模型更新方法,其特征在于,所述方法包括:

获取第一训练数据及由所述第一训练数据训练得到的第一识别模型,所述第一识别模型包括特征提取网络和第一分类网络,其中,所述特征提取网络包括多个卷积层和与多个卷积层对应的多个池化层,每个卷积层包括至少一个第一卷积核,所有所述第一卷积核和所有池化层的参数构成第一参数;

获取第二训练数据,其中,所述第二训练数据和所述第一训练数据包含相同类型的目标;

新增预设个数的初始卷积核,得到中间识别模型;

将所述第二训练数据输入所述中间识别模型,保持所有第一卷积核、所有池化层的参数及所述第一分类网络的参数不变,对所述预设个数的初始卷积核进行更新,得到更新后的中间识别模型和更新后的初始卷积核;

获取所述第一训练数据输入所述第一识别模型后得到的第一特征向量;

将所述第二训练数据输入所述更新后的中间识别模型,得到第二特征向量;

当所述第一特征向量与所述第二特征向量满足预设收敛条件时,得到更新后的第二卷积核;

当所述第一特征向量与所述第二特征向量未满足预设收敛条件时,用所述更新后的中间识别模型代替所述第一识别模型、用所述更新后的初始卷积核和所述第一卷积核代替所述第一卷积核,并执行上述步骤,直到当前的第一特征向量与当前第二特征向量满足预设收敛条件,得到更新后的第二卷积核;

用所述更新后的至少一个第二卷积核和所述第一卷积核替代所述第一卷积核,并执行上述步骤,直至所有卷积层新增的至少一个第二卷积核均更新完毕,得到第二识别模型,其中,所有所述更新后的第二卷积核构成第二参数。

2.如权利要求1所述的图像识别模型更新方法,其特征在于,所述第二识别模型包括特征提取网络,所述方法还包括:将所述第二训练数据输入所述第二识别模型,得到多个输出向量;

根据每个输出向量,对所述第二识别模型进行稀疏化处理,得到稀疏化后的识别模型。

3.如权利要求2所述的图像识别模型更新方法,其特征在于,所述特征提取网络包括至少一个卷积层,所述第二参数包括与所述至少一个卷积层对应的至少一个第二卷积核,所述根据每个输出向量,对所述第二识别模型进行稀疏化处理,得到稀疏化后的识别模型的步骤,包括:获取每一卷积层利用该卷积层的每个第二卷积核输出的特征向量;

根据所有卷积层的所有所述第二卷积核输出的特征向量,更新所述第二识别模型的损失函数;

将所述第二训练数据输入所述第二识别模型进行训练,将训练中满足预设删除条件的特征向量的卷积层的卷积核删除,得到第三识别模型;

将所述第二训练数据输入所述第三识别模型进行训练,得到稀疏化后的识别模型。

4.如权利要求2所述的图像识别模型更新方法,其特征在于,所述方法还包括:当所述稀疏化后的识别模型的第一分类网络的输出结果不满足预设分类条件时,向所述稀疏化后的识别模型新增第二分类网络、并保持所述第一参数和所述第二参数不变的情况下对所述稀疏化后的识别模型进行训练。

5.如权利要求1所述的图像识别模型更新方法,其特征在于,所述方法还包括:当所述第二识别模型的第一分类网络的输出结果不满足预设分类条件时,向所述第二识别模型新增第二分类网络、并保持所述第一参数和所述第二参数不变的情况下重新对所述第二识别模型再次进行训练。

6.如权利要求1所述的图像识别模型更新方法,其特征在于,所述方法还包括:将所述第二训练数据输入所述第二识别模型,保持所述第一参数和所述第二参数不变的情况下进行训练,以更新所述第一分类网络的参数,得到训练后的第二识别模型。

7.一种图像识别模型更新装置,其特征在于,所述装置包括:

第一获取模块,用于获取第一训练数据及由所述第一训练数据训练得到的第一识别模型,所述第一识别模型包括特征提取网络和第一分类网络,所述特征提取网络包括第一参数;

第二获取模块,用于获取第二训练数据,其中,所述第二训练数据和所述第一训练数据包含相同类型的目标;

更新模块,用于保持所述特征提取网络的第一参数和所述第一分类网络的参数不变,对所述特征提取网络增加第二参数,并对所述第二参数进行更新,得到第二识别模型。

8.一种电子设备,其特征在于,所述电子设备包括:

一个或多个处理器;

存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-6中任一项所述的图像识别模型更新方法。

说明书 :

图像识别模型更新方法及相关装置

技术领域

[0001] 本发明涉及图像识别领域,具体而言,涉及一种识别模型更新方法及相关装置。

背景技术

[0002] 目前基于深度学习的图像识别任务通常的做法是,在对来自不同于当前现有识别模型的新领域的图像进行识别和分类时,首先需要收集海量的新领域的任务数据,在分类任务之前通过大量的人工标注,然后进行模型的训练。为了保证重新训练后的模型对于原有分类任务和新领域的分类任务都有较好的识别效果,现有技术通常采用的手段是需要将原有的任务数据与新领域的任务数据混合,对整个模型进行重新训练,这种方式会耗费大量的训练时间和训练资源。如何在不影响原有分类任务识别效果的前提下,减少训练时间和训练资源的消耗是本领域人员亟待解决的问题。

发明内容

[0003] 本发明的目的在于提供了一种识别模型更新方法及相关装置,在保持原有识别模型的参数不变的情况下,新增原有识别模型的参数,并只对新增的参数进行训练更新,在保持了原有分类任务识别效果不变的同时,减少了更新识别模型的消耗的训练时间和训练资源。
[0004] 本发明的实施例可以这样实现:
[0005] 第一方面,本发明实施例提供一种识别模型更新方法,所述方法包括:获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数;获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标;保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。
[0006] 第二方面,本发明实施例提供一种识别模型更新装置,所述装置包括第一获取模块、第二获取模块和更新模块。其中,第一获取模块,用于获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数;第二获取模块,用于获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标;更新模块,用于保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。
[0007] 第三方面,本发明实施例提供一种电子设备,所述电子设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的识别模型更新方法。
[0008] 相对现有技术,本发明实施例提供一种识别模型更新方法及相关装置,在保持第一识别模型的参数不变的情况下,对第一识别模型新增第二参数,并只对新增的第二参数进行更新,在保持了源领域的数据的识别效果不变的同时,减少了更新第一识别模型的消耗的训练时间和训练资源。
[0009] 为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

[0010] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0011] 图1示出了本发明实施例提供的识别模型更新方法的流程图。
[0012] 图2为图1示出了步骤S103的子步骤的流程图。
[0013] 图3示出了本发明实施例提供的第二识别模型稀疏化处理的方法流程图。
[0014] 图4示出了本发明实施例提供的识别模型更新装置的方框示意图。
[0015] 图5示出了本发明实施例提供的电子设备的方框示意图。
[0016] 图标:10-电子设备;101-存储器;102-通信接口;103-处理器;104-总线; 200-识别模型更新装置;201-第一获取模块;202-第二获取模块;203-第一更新模块;204-训练模块;205-第二更新模块;206-稀疏化模块。

具体实施方式

[0017] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
[0018] 因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0019] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0020] 在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0021] 此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0022] 需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
[0023] 基于已有的识别模型,为了快速得到一个可以对新领域(也称目标领域) 的任务数据进行识别和分类的识别模型,通常采用迁移学习的方法,把现有的识别模型参数迁移到新的模型来帮助新模型训练,由此达到新模型可以识别新领域的图像的目的。在原有领域(也称源领域)的任务数据与新领域的任务数据存在相关性的情况下,通过迁移学习可以将已经学到的模型参数(即现有的识别模型的参数,也可理解为模型学到的知识)通过某种方式来分享给新模型从而加快并优化模型的学习效率,避免针对源的任务数据和目标领域的任务数据从零训练带来的大量训练时间和训练资源的消耗,提高了模型训练的效率。
[0024] 但是迁移学习的方法存在灾难性遗忘的问题,即一旦使用目标领域的任务数据去重新训练已有的识别模型,重新训练后的识别模型将会失去对源领域的任务数据识别的能力。
[0025] 有鉴于此,本发明实施例的目的在于提供一种识别模型更新方法及相关装置,能够在保持了原有分类任务识别效果不变的同时,减少了更新识别模型的消耗的训练时间和训练资源。下面将对此进行详细描述。
[0026] 请参照图1,图1示出了本发明实施例提供的识别模型更新方法的流程图,该方法包括以下步骤:
[0027] 步骤S101,获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数。
[0028] 在本发明实施例中,第一识别模型可以是将第一训练数据输入一个通用卷积神经网络进行训练后得到的,通用卷积神经网络可以、但不限于是AlexNet、VGG-16等现有的卷积神经网络。特征提取网络可以包括至少一个卷积层及与至少一个卷积层对应的至少一个池化层,例如,特征提取网络包括2个卷积层和2个池化层,2个卷积层分别为:1#卷积层和2#卷积层,分别对应1#池化层和2#池化层。所有卷积层对应的卷积参数和所有池化层对应的池化参数构成第一参数,其中,每一卷积层的卷积参数可以包括卷积核的个数、卷积步长、深度等,每一池化层的池化参数可以包括池化步长、过滤器大小,池化类型等。第一分类网络可以包括至少一个全连接层,用于对特征提取网络的输出进行分类,最终得到分类结果。
[0029] 步骤S102,获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标。
[0030] 在本发明实施例中,第一训练数据为来自源领域的数据,源领域的数据为第一识别模型可以正确识别的数据,即已经采用源领域的数据对第一识别模型进行过针对性的训练。第二训练数据为来自目标领域的数据,目标领域的数据为第一识别模型尚未识别过、或者不能正确识别的数据,即并未采用目标领域的数据对第一识别模型进行针对性的训练,因此,第二训练数据对于第一识别模型来说,是一个新领域。但是源领域与目标领域并不是完全不相关,而是具有相同或者相似的特征,由此保证在第一识别模型已有的模型参数的基础上,对第一识别模型进行扩展和更新,得到扩展和更新后的第二识别模型,利用第二识别模型识别第二训练数据。例如,第一训练数据和第二训练数据包含相同类型的目标,相同类型的目标可以是具有相同的目标场景,例如,第一训练数据和第二训练数据都是下雨天的图像,相同类型的目标还可以是具有相同类型的识别目标,例如,第一训练数据都是猫的图像,第二训练数据都是牛的图像。
[0031] 步骤S103,保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。
[0032] 在本发明实施例中,第二参数可以是卷积层的卷积核,对特征提取网络中的每个卷积层依次增加对应个数的卷积核,并对增加的卷积核进行更新,得到更新后的卷积层,所有卷积层都更新后即可得到第二识别模型。
[0033] 请参照图2,步骤S103包括以下子步骤:
[0034] 子步骤S1031,依次对每一卷积层新增至少一个第二卷积核,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,更新新增的至少一个第二卷积核,得到更新后的至少一个第二卷积核。
[0035] 在本发明实施例中,需要对第一识别模型中每一卷积层均新增至少一个第二卷积核,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,对新增的至少一个第二卷积核进行更新。
[0036] 子步骤S1032,用更新后的至少一个第二卷积核和第一卷积核替代第一卷积核,并执行上述步骤,直至所有卷积层新增的至少一个第二卷积核均更新完毕,得到第二识别模型,其中,所有更新后的第二卷积核构成第二参数。
[0037] 在本发明实施例中,针对当前的卷积层而言,在对当前卷积层新增至少一个第二卷积核并对新增的至少一个第二卷积核更新后,用当前更新后的至少一个第二卷积核和当前的第一卷积核替代第一卷积核,执行子步骤S1031 进行下一个卷积层的处理,直至所有卷积层均新增了至少一个第二卷积核,并对新增的至少一个第二卷积核进行了更新,此时,就得到了第二识别模型。
[0038] 在本发明实施例中,所有更新后的第二卷积核构成第二参数,例如,一共有3个卷积层:卷积层1、卷积层2、卷积层3,卷积层1增加的第二卷积核为:卷积核1、卷积核2,卷积层2增加的第二卷积核为:卷积核3、卷积核4和卷积核5,卷积层3增加的第二卷积核为:卷积核
6和卷积核7,则更新后的卷积核1~卷积核7构成第二参数。
[0039] 在本发明实施例中,每一卷积层最终需要增加的第二卷积核的个数并不是提前预设的,而是通过不断地训练最终确定的。因此,增加第二卷积核可以分多次完成,每次增加预设个数的初始卷积核,当满足预设收敛条件时,则最终完成第二卷积核的增加和更新,当不满足预设收敛条件时,需要在此基础上继续增加初始卷积核,直至满足预设收敛条件。
[0040] 在本发明实施例中,第一卷积核为第一参数包括的卷积层的卷积核,第二卷积核为每一卷积层新增的卷积核。作为一种具体实施方式,对于每一卷积层的更新的方法可以是:
[0041] 第一,新增预设个数的初始卷积核,得到中间识别模型。
[0042] 在本发明实施例中,每次新增的初始卷积核的个数可以预先设定,第二卷积核为所有更新后的初始卷积核组成,为每次新增的初始卷积核的个数与初始卷积核的增加次数的乘积,初始卷积核的增加次数是通过训练确定的,例如,可以每次新增2个初始卷积核,当第3次增加初始卷积核后,发现满足了预设收敛条件,则第二卷积核的个数=2*3=6,第二卷积核的个数为6。
[0043] 第二,将第二训练数据输入中间识别模型,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,对预设个数的初始卷积核进行更新,得到更新后的中间识别模型和更新后的初始卷积核。
[0044] 在本发明实施例中,由于新增第二卷积核可以通过多次新增预设个数的初始卷积核实现,对本次新增的预设个数的初始卷积核进行更新时,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,新增的每一初始卷积核有一个预设初始值,将第二训练数据输入中间识别模型进行端到端地训练,以对每一新增的初始卷积核的预设初始值进行微调,最终确定新增的预设个数的初始卷积核的取值。
[0045] 例如,第一次新增的初始卷积核为卷积核1,卷积核1的预设初始值为:经过端到端训练后,更新后的卷积核1的取值为: 第二次新增的初始卷积核为卷
积核2,卷积核2的预设初始值为: 此时进行端到端训练时,除了保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不便,还需要保持更新后的卷积核1的最终取值不变,最终确定本次新增的卷积核2的取值。
[0046] 第三,获取第一训练数据输入第一识别模型后得到的第一特征向量。
[0047] 第四,将第二训练数据输入中间识别模型,得到第二特征向量。
[0048] 第五,当第一特征向量与第二特征向量满足预设收敛条件时,得到更新后的第二卷积核。
[0049] 在本发明实施例中,作为一种具体实施方式,首先,计算第一特征向量与第二特征向量的最大均值差异,具体计算公式如下:
[0050]
[0051] 其中,Gk为最大均值差异,Ai为第一特征向量,第一特征向量是第一训练数据输入第一识别模型进行特征提取,得到的各卷积层的输出向量,Bi为第二特征向量,第二特征向量是第二训练数据输入中间识别模型进行特征提取,得到的各卷积层的输出向量,k为当前新增的第二卷积核的总数。然后,获取上一次新增初始卷积核得到的最大均值差异Gk-1。最后,计算Gk-1与Gk的差值是否满足预设收敛条件,预设收敛条件可以是:小于预设阈值,也可以是在预设范围内,本申请不对具体预设收敛条件予以限定,当满足预设收敛条件时,不再继续增加预设个数的初始卷积核,此时,得到更新后的第二卷积核。
[0052] 需要说明的是,当第一识别模型第i层卷积层存在多个卷积核时,上述公式中的Ai包括了每一卷积核经过第i层卷积层得到的输出向量,例如,第1层卷积层包括卷积核a和卷积核b,则A1包括第1层卷积层按照卷积核a得到的输出向量1和第1层卷积层按照卷积核b得到的输出向量2。Bi与Ai类似,此处不再赘述。
[0053] 还需要说明的是,第一训练数据输入第一识别模型进行特征提取时采用的方法可以是最大均值差异映射”(Maximum Mean Discrepancy Embedding MMDE)法,第二训练数据输入中间识别模型进行特征提取时采用的方法可以是最大均值差异映射”(Maximum Mean Discrepancy Embedding MMDE)法。
[0054] 第六,当第一特征向量与第二特征向量未满足预设收敛条件时,用更新后的中间识别模型代替第一识别模型、用更新后的初始卷积核和第一卷积核代替第一卷积核,并执行上述步骤,直到当前的第一特征向量与当前第二特征向量满足预设收敛条件,得到更新后的第二卷积核。
[0055] 在本发明实施例中,当第一特征向量与第二特征向量未满足预设收敛条件时,需要对该卷积层继续增加初始卷积核,用当前更新后的中间识别模型替代第一识别模型、用更新后的初始卷积核和第一卷积核代替第一卷积核,执行上述第一至第六的步骤,直至满足预设收敛条件,得到更新后的第二卷积核,例如,以卷积层1为例,第一次为卷积层1新增一个初始卷积核,为卷积核1,并对卷积核1进行了更新,此时未满足预设收敛条件,再为卷积层 1新增一个初始卷积核,为卷积核2,并对卷积核2进行了更新,此时满足了预设收敛条件,此时,得到更新后的第二卷积核,更新后的第二卷积核由更新后的卷积核1和更新后的卷积核2组成。
[0056] 至此,得到的第二识别模型是针对特征提取进行的训练,尚未对分类能力即第一分类网络的参数进行更新,为了达到较好的分类效果,本发明实施例中还包括步骤S104。
[0057] 步骤S104,将第二训练数据输入第二识别模型,保持第一参数和第二参数不变的情况下进行训练,以更新第一分类网络的参数,得到训练后的第二识别模型。
[0058] 在本发明实施例中,第一分类网络包括至少一个第一全连接层,在保持第一参数和第二参数不变的情况下,对第一分类网络的参数进行微调,实际上是对第一分类网络的至少一个第一全连接层的参数进行微调。
[0059] 在本发明实施例中,当第二识别模型的第一分类网络的输出结果不满足预设分类条件时,为了得到较好的分类结果,本发明实施例中还包括步骤S105。
[0060] 步骤S105,当第二识别模型的第一分类网络的输出结果不满足预设分类条件时,向第二识别模型新增第二分类网络、并保持第一参数和第二参数不变的情况下重新对第二识别模型再次进行训练。
[0061] 在本发明实施例中,第二分类网络包括至少一个第二全连接层,保持第一参数和第二参数不变的情况下对第二识别模型进行训练,实际上是保持第一参数和第二参数不变的情况下,首先为第二分类网络的第二全连接层的参数确定一个初始值,然后将第二训练数据输入第二识别模型,对该初始值进行调整。
[0062] 如果调整初始参数后,得到训练后的第二识别模型仍未能满足预设分类条件,可以在当前训练后的第二识别模型的基础上,继续在第二分类网络中新增预设个数的第二全连接层,保持第一参数、第二参数、第二分类网络中除当前新增的预设个数的第二全连接层的参数之外的其他第二全连接层的参数不变的情况下,继续进行训练,对当前新增的预设个数的第二全连接层的参数进行调整,直至满足预设分类条件。
[0063] 需要说明的是,此处步骤S105的第二识别模型可以是由步骤S104直接得到的,也可以是在步骤S104的基础上经过若干次训练后得到的。
[0064] 在本发明实施例中,由于经过步骤S101~S103之后的第二识别模型中增加了第二卷积核,在增加的第二卷积核过多的情况下,会降低特征提取的处理效率,为了降低增加的第二卷积核对特征提取的处理效率的影响,还可以对第二识别模型进行稀疏化处理,以裁剪第二卷积核,因此,本发明实施例中还包括步骤S106和步骤S107。
[0065] 请参照图3,图3示出了本发明实施例提供的识别模型稀疏化处理的方法流程图,该方法包括以下步骤:
[0066] 步骤S106,将第二训练数据输入第二识别模型,得到多个输出向量。
[0067] 在本发明实施例中,将第二训练数据输入第二识别模型,利用每个卷积层新增的每个第二卷积核进行卷积均可以得到一个输出向量。
[0068] 步骤S107,根据每个输出向量,对第二识别模型进行稀疏化处理,得到稀疏化后的识别模型。
[0069] 在本发明实施例中,为了提高第二识别模型的处理效率,对第二识别模型进行稀疏化处理,也可以认为是对第二卷积核进行裁剪,裁剪过程可以是:首先根据每个输出向量更新第二识别模型的损失函数,然后将第二训练数据输入第二识别模型进行训练,得到每个卷积层依据每个第二卷积核卷积得到的特征向量,当此特征向量满足预设删除条件时,将对应的第二卷积核删除,由此保证因删除第二卷积核对特征提取的影响控制在可接受范围内。作为一种具体的实施方式,稀疏化的方法可以是:
[0070] 首先,获取每一卷积层利用该卷积层的每个第二卷积核输出的特征向量。
[0071] 其次,根据所有卷积层的所有第二卷积核输出的特征向量,更新第二识别模型的损失函数;
[0072] 在本发明实施例中,可以更新后的损失函数的计算公式如下:
[0073]
[0074] 其中,Ls为更新后的损失函数,Lt为第二识别模型更新前的损失函数,μ为平衡化参数,Bi为第i个卷积层依据第二卷积核输出的特征向量,Bμ为n个卷积层依据各自的第二卷积核输出的特征向量的平均值,n为卷积层的层数。
[0075] 第三,将第二训练数据输入第二识别模型进行训练,将训练中满足预设删除条件的特征向量的卷积层的卷积核删除,得到第三识别模型。
[0076] 在本发明实施例中,将第二训练数据输入第二识别模型进行训练,训练时保持第一参数和第一分类网络的参数不变,每个卷积层依据该卷积层的第二卷积核得到对应的特征向量,将每个卷积层的该特征向量做平均化处理得到平均值,将小于预设阈值的平均值对应的卷积层的第二卷积核删除,需要说明的是,预设删除条件也可以是平均值在预设范围内,即将平均值在预设范围卷积层的第二卷积核删除,另外,此处的平均值也可以用方差等代替。
[0077] 最后,将第二训练数据输入第三识别模型进行训练,得到稀疏化后的识别模型。
[0078] 在本发明实施例中,将第二训练数据输入第三识别模型进行训练,训练时保持第一参数和第一分类网络的参数不变,对稀疏化处理后保留的第二卷积核进行微调,得到稀疏化后的识别模型。
[0079] 至此,得到的训练后的第三识别模型是针对特征提取进行的训练,尚未对分类能力即第一分类网络的参数进行更新,为了达到较好的分类效果,本发明实施例中还包括步骤S108。
[0080] 步骤S108,当稀疏化后的识别模型的第一分类网络的输出结果不满足预设分类条件时,向稀疏化后的识别模型新增第二分类网络、并保持第一参数和第二参数不变的情况下对稀疏化后的识别模型进行训练。
[0081] 在本发明实施例中,本步骤中向稀疏化后的识别模型新增第二分类网络并进行训练的过程与步骤S105中向第二识别模型新增第二分类网络并进行训练的过程类似,此处不再赘述。
[0082] 需要说明的是,当对训练后的稀疏化后的识别模型的第一分类网络的输出结果满足预设分类条件时,则可以在保持第一参数和第二参数不变的情况下,对第一分类网络的参数进行微调,以达到较好地分类效果。
[0083] 还需要说明的是,虽然上述步骤只是描述了第一识别模型进行更新、扩展得到的第二识别模型的方法,事实上,经过上述步骤得到的第二识别模型、训练后的第二识别模型、稀疏化后的识别模型、训练后的稀疏化后的识别模型均可以再次作为第一识别模型,在此基础上继续扩展,用于识别新的目标领域,即本发明实施例中的步骤可以不断地继续扩展、更新,以不断地扩充可以识别的目标领域。
[0084] 与现有技术相比,本发明实施例具有以下有益效果:
[0085] 第一,在保持第一识别模型的参数不变的情况下,新增第一识别模型的参数,并只对新增的参数进行训练更新,实现了保持了原有分类任务识别效果不变的同时,减少了更新识别模型的消耗的训练时间和训练资源的效果。
[0086] 第二,通过动态扩展第一识别模型的参数,可以对目标领域的数据新增加特征的提取,保证目标领域的数据识别的效果。
[0087] 第三,通过对第一识别模型扩展参数后得到的第二识别模型进行稀疏化处理,删除一部分对识别结果影响不大的新增参数,可以在目标领域的数据的识别效果可控的情况下提高第一识别模型优化的效率。
[0088] 第四,无需将原领域数据和目标领域数据合并在一起对第一识别模型进行重零开始的训练,提高了第一识别模型优化的效率。
[0089] 第五,第二识别模型可以不断继续扩展、更新,以不断地扩充识别的目标领域,实现模型的终身学习。
[0090] 基于上同一发明思路,本发明实施例还提供了一种识别模型更新装置,请参照图4,图4示出了本发明实施例提供的识别模型更新装置200的方框示意图。识别模型更新装置
200包括第一获取模块201、第二获取模块202、第一更新模块203、训练模块204、第二更新模块205及稀疏化模块206。
[0091] 第一获取模块201,用于获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数。
[0092] 第二获取模块202,用于获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标。
[0093] 第一更新模块203,用于保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。
[0094] 具体地,特征提取网络包括多个卷积层和与多个卷积层对应的多个池化层,每个卷积层包括至少一个第一卷积核,所有第一卷积核和所有池化层的参数构成第一参数,第一更新模块203具体用于:依次对每一卷积层新增至少一个第二卷积核,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,更新新增的至少一个第二卷积核,得到更新后的至少一个第二卷积核;用更新后的至少一个第二卷积核和第一卷积核替代第一卷积核,并执行上述步骤,直至所有卷积层新增的至少一个第二卷积核均更新完毕,得到第二识别模型,其中,所有更新后的第二卷积核构成第二参数。
[0095] 具体地,第一更新模块203执行依次对每一卷积层新增至少一个第二卷积核,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,更新新增的至少一个第二卷积核,得到更新后的至少一个第二卷积核的步骤还包括:新增预设个数的初始卷积核,得到中间识别模型;将第二训练数据输入中间识别模型,保持所有第一卷积核、所有池化层的参数及第一分类网络的参数不变,对预设个数的初始卷积核进行更新,得到更新后的中间识别模型和更新后的初始卷积核;获取第一训练数据输入第一识别模型后得到的第一特征向量;将第二训练数据输入更新后的中间识别模型,得到第二特征向量;当第一特征向量与第二特征向量满足预设收敛条件时,得到更新后的第二卷积核;当第一特征向量与第二特征向量未满足预设收敛条件时,用更新后的中间识别模型代替第一识别模型、用更新后的初始卷积核和第一卷积核代替第一卷积核,并执行上述步骤,直到当前的第一特征向量与当前第二特征向量满足预设收敛条件,得到更新后的第二卷积核。
[0096] 训练模块204,用于将第二训练数据输入第二识别模型,保持第一参数和第二参数不变的情况下进行训练,以更新第一分类网络的参数,得到训练后的第二识别模型。
[0097] 第二更新模块205,当第二识别模型的第一分类网络的输出结果不满足预设分类条件时,向第二识别模型新增第二分类网络、并保持第一参数和第二参数不变的情况下重新对第二识别模型再次进行训练。
[0098] 稀疏化模块206,用于将第二训练数据输入第二识别模型,得到多个输出向量;根据每个输出向量,对第二识别模型进行稀疏化处理,得到稀疏化后的识别模型。
[0099] 具体地,特征提取网络包括至少一个卷积层,第二参数包括与至少一个卷积层对应的至少一个第二卷积核,稀疏化模块206具体用于:获取每一卷积层利用该卷积层的每个第二卷积核输出的特征向量;根据所有卷积层的所有第二卷积核输出的特征向量,更新第二识别模型的损失函数;将第二训练数据输入第二识别模型进行训练,将训练中满足预设删除条件的特征向量的卷积层的卷积核删除,得到第三识别模型;将第二训练数据输入第三识别模型进行训练,得到稀疏化后的识别模型。
[0100] 具体地,稀疏化模块206还用于当稀疏化后的识别模型的第一分类网络的输出结果不满足预设分类条件时,向稀疏化后的识别模型新增第二分类网络、并保持第一参数和第二参数不变的情况下对稀疏化后的识别模型进行训练。
[0101] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的识别模型更新装置200的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0102] 请参照图5,图5示出了本发明实施例提供的电子设备10的方框示意图。电子设备10可以是通用计算机或者特殊用途的计算机,例如,电子设备10 可以是手机、平板电脑、主机或者服务器等。电子设备10包括存储器101、通信接口102、处理器103和总线104,所述存储器101、通信接口102和处理器103通过总线104连接,处理器103用于执行存储器101中存储的可执行模块,例如图4所示的识别模型更新装置200。
[0103] 其中,存储器101可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口102(可以是有线或者无线)实现电子设备10与外部存储设备之间的通信连接。
[0104] 总线104可以是ISA总线、PCI总线或EISA总线等。图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0105] 其中,存储器101用于存储程序,所述处理器103在接收到执行指令后,执行所述程序以实现本发明上述的识别模型更新方法。
[0106] 本发明实施例还揭示一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的识别模型更新方法。
[0107] 综上所述,本发明实施例提供了一种识别模型更新方法及相关装置,所述方法包括:获取第一训练数据及由第一训练数据训练得到的第一识别模型,第一识别模型包括特征提取网络和第一分类网络,特征提取网络包括第一参数;获取第二训练数据,其中,第二训练数据和第一训练数据包含相同类型的目标;保持特征提取网络的第一参数和第一分类网络的参数不变,对特征提取网络增加第二参数,并对第二参数进行更新,得到第二识别模型。在保持原有识别模型的参数不变的情况下,新增原有识别模型的参数,并只对新增的参数进行训练更新,在保持了原有分类任务识别效果不变的同时,减少了更新识别模型的消耗的训练时间和训练资源。
[0108] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。