CN111680636A - 模型训练方法及装置 - Google Patents
模型训练方法及装置 Download PDFInfo
- Publication number
- CN111680636A CN111680636A CN202010526776.2A CN202010526776A CN111680636A CN 111680636 A CN111680636 A CN 111680636A CN 202010526776 A CN202010526776 A CN 202010526776A CN 111680636 A CN111680636 A CN 111680636A
- Authority
- CN
- China
- Prior art keywords
- model
- distance
- training
- loss function
- pair
- 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
- 238000012549 training Methods 0.000 title claims abstract description 164
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000006870 function Effects 0.000 claims description 125
- 238000010276 construction Methods 0.000 claims description 7
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000015654 memory Effects 0.000 description 28
- 238000004590 computer program Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 10
- 238000005457 optimization Methods 0.000 description 7
- 238000013526 transfer learning Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004821 distillation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000000474 nursing effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- 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
-
- 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/047—Probabilistic or stochastic networks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种模型训练方法及装置。其中,该方法包括:确定第一模型和第二模型;确定预定样本对在所述第一模型下的第一距离,以及确定所述预定样本对在所述第二模型下的第二距离;根据所述第一距离和所述第二距离,构造所述第二模型的损失函数;通过优化所述损失函数,对所述第二模型进行训练。本发明解决了在相关技术中,在进行模型的训练过程中,不能控制模型训练的趋势,即不能保证模型训练得越来越好的技术问题。
Description
技术领域
本发明涉及人工智能领域,具体而言,涉及一种模型训练方法及装置。
背景技术
基于深度神经网络的模型训练目前主要有两种方式,以人脸识别为例:一种是基于多分类进行训练,即学习将一张人脸图像,分配到某个类别中,这里类别数量等于 训练数据集中的人数;另一种是基于度量学习,比如学习判定两张人脸图像是否为同 一人(也有基于三张或多张人脸图像进行学习的)。以上两种训练过程,就是模型在学 习如何抽取人脸的特征。在理想情况下,同一个人的不同照片的特征,相互距离很近, 而不同人的照片的特征,相互距离很远。
人脸识别是计算机视觉的一个研究方向,目前已有大量落地应用,比如人脸签到、人脸支付和门禁系统。人脸识别领域目前有多个公开数据集,可以在这些公开数据集 上,训练一个初始模型,进行较为通用的人脸识别。实际中,可能有更特定的场景, 对模型的性能要求也会产生偏向性,比如,在养老院部署人脸识别系统,可能就要模 型对老年人的识别更加准确。此时,可以收集一批场景化的数据,在这批特定的场景 数据上重新训练模型。
为了提升新训练模型的性能,充分利用场景数据以外的公开数据中的信息,当前常见的技术是基于迁移学习,将公开人脸集上,或者其他场景数据上训练的模型的主 干网络的参数权值,作为当前训练网络的参数初始值,然后启动训练。
上述基于预训练模型进行迁移学习的过程,仅提供了一个比随机初始化较好的初始值,并不能控制模型训练的趋势,即不能保证模型训练得越来越好。
因此,在相关技术中,在进行模型的训练过程中,不能控制模型训练的趋势,即 不能保证模型训练得越来越好。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种模型训练方法及装置,以至少解决在相关技术中,在进行模型的训练过程中,不能控制模型训练的趋势,即不能保证模型训练得越来越好的 技术问题。
根据本发明实施例的一个方面,提供了一种模型训练方法,包括:确定第一模型和第二模型;确定预定样本对在所述第一模型下的第一距离,以及确定所述预定样本 对在所述第二模型下的第二距离;根据所述第一距离和所述第二距离,构造所述第二 模型的损失函数;通过优化所述损失函数,对所述第二模型进行训练。
可选地,通过优化所述损失函数,对所述第二模型进行训练包括:通过保持所述损失函数中所述第一模型的参数不变,优化所述损失函数中所述第二模型的参数,对 所述第二模型进行训练。
可选地,据所述第一距离和所述第二距离,构造的所述损失函数用于:在所述预定样本对为正样本对的情况下,要求所述第一距离大于所述第二距离;在所述预定样 本对为负样本对的情况下,要求所述第二距离大于所述第一距离。
可选地,根据所述第一距离和所述第二距离,构造所述第二模型的损失函数包括:通过以下公式构造所述第二模型的损失函数:
其中, Lcdo为所述损失函数的损失值;y为所述预定样本对(Ii,Ij)的标签,y=1表示正样本对,y=0表示负样本对;为所述第二距离;为所述第一距离;为所述预定样本对(Ii,Ij)采用所述第一模型提取的特征对;为所述预定样本对 (Ii,Ij)采用所述第二模型提取的特征对。
可选地,根据所述第一距离和所述第二距离,构造所述第二模型的损失函数包括:确定距离间隔;根据所述第一距离,所述第二距离以及所述距离间隔,构造所述第二 模型的损失函数。
可选地,根据所述第一距离,所述第二距离以及所述距离间隔,构造的所述损失函数用于:在所述预定样本对为正样本对的情况下,要求所述第一距离大于所述第二 距离与所述距离间隔之和,在所述预定样本对为负样本对的情况下,要求所述第二距 离大于所述第一距离与所述距离间隔之和。
可选地,根据所述第一距离,所述第二距离以及所述距离间隔,构造所述第二模型的损失函数包括:通过以下公式构造所述第二模型的损失函数:其中,Lcdo为所述损失函数的损失值;y为所述预定样本对(Ii,Ij)的标签,y=1表示 正样本对,y=0表示负样本对;为所述第二距离;为所述第一距离; 为所述预定样本对(Ii,Ij)采用所述第一模型提取的特征对;为所述预 定样本对(Ii,Ij)采用所述第二模型提取的特征对;σ为所述距离间隔。
可选地,通过优化所述损失函数,对所述第二模型进行训练包括:在优化所述损失函数时结合优化其它损失函数,对所述第二模型进行训练,其中,所述其它损失函 数包括以下至少之一:三元组损失函数,交叉熵损失函数。
可选地,通过优化所述损失函数,对所述第二模型进行训练包括:在所述预定样本对为批量样本对的情况下,对所述批量样本对所包括的多个样本对的损失值求平均, 得到平均损失值,其中,多个样本对中每个样本对的损失值根据所述损失函数得到; 根据所述平均损失值,对所述第二模型进行训练。
可选地,该方法还包括:在所述第二模型训练达到第一预定训练目标后,确定新的第一模型和新的第二模型,其中,所述新的第一模型为达到所述第一预定训练目标 的所述第二模型;重复训练所述第二模型的训练方法,对新的第二模型进行训练,直 到新的第二模型达到第二预定训练目标,其中,所述第二预定训练目标优于所述第一 预定训练目标。
可选地,所述第二模型包括人脸识别模型。
根据本发明实施例的另一方面,还提供了一种模型训练装置,包括:第一确定模块,用于确定第一模型和第二模型;第二确定模块,用于确定预定样本对在所述第一 模型下的第一距离,以及确定所述预定样本对在所述第二模型下的第二距离;构造模 块,用于根据所述第一距离和所述第二距离,构造所述第二模型的损失函数;训练模 块,用于通过优化所述损失函数,对所述第二模型进行训练。
在本发明实施例中,采用确定预定样本对在所述第一模型下的第一距离,以及确定所述预定样本对在所述第二模型下的第二距离的方式,通过根据所述第一距离和所 述第二距离,构造所述第二模型的损失函数,进而通过优化该损失函数,对第二模型 进行训练,达到了能够通过比对第一距离和第二距离来优化第二模型训练的目的,从 而实现了由第一模型显式地引导第二模型训练的技术效果,进而解决了在相关技术中, 在进行模型的训练过程中,不能控制模型训练的趋势,即不能保证模型训练得越来越 好技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图 中:
图1是根据本发明实施例提供的模型训练方法的流程图;
图2是根据本发明实施例提供的模型训练装置的示意性框图;
图3是根据本发明实施例提供的一种计算机终端300的示意性结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例 仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领 域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于 本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这 样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在 这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的 任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方 法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚 地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种模型训练方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并 且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序 执行所示出或描述的步骤。
图1是根据本发明实施例提供的模型训练方法的流程图,如图1所示,该方法包 括如下步骤:
步骤S102,确定第一模型和第二模型;
步骤S104,确定预定样本对在第一模型下的第一距离,以及确定预定样本对在第二模型下的第二距离;
步骤S106,根据第一距离和第二距离,构造第二模型的损失函数;
步骤S108,通过优化损失函数,对第二模型进行训练。
通过上述步骤,采用确定预定样本对在第一模型下的第一距离,以及确定预定样本对在第二模型下的第二距离的方式,通过根据第一距离和第二距离,构造第二模型 的损失函数,进而通过优化该损失函数,对第二模型进行训练,达到了能够通过比对 第一距离和第二距离来优化第二模型训练的目的,从而实现了由第一模型显式地引导 第二模型训练的技术效果,进而解决了在相关技术中,在进行模型的训练过程中,不 能控制模型训练的趋势,即不能保证模型训练得越来越好的技术问题。
针对相关技术的模型训练过程中,没有额外的监督信息,即没有明确引导新训练模型比初始模型有更好的性能的问题,在本发明实施方式中,提出了一种简单有效的 基于比对距离优化的模型训练方法,在训练过程中引入额外的监督信息,引导当前的 新训练模型优于初始模型。以训练识别人脸图像的模型为例,记初始模型为Net-T(即 上述第一模型,或者也可以称之为参考模型),新训练模型为Net-S(即上述第二模型, 或者也可以称之为学生模型),明确引导了Net-S要训练得比Net-T好。
需要说明的是,该模型训练方法可以应用于多种应用场景下的模型训练,例如,可以应用于各种人工智能识别的场景。比如,该方法可以应用于人脸识别模型的训练, 该方法可以应用于手势识别模型的训练,该方法还可以应用于各种语音识别模型的训 练等。
作为一种可选的实施例,确定第一模型和第二模型时,上述第一模型可以是一种参考模型,用于引导第二模型的训练,使得第二模型训练地至少比第一模型要好。鉴 于此,作为参考模型的第一模型可以选择已经训练得较好的模型,例如,以人脸识别 模型为例,该第一模型可以是对人脸识别时,识别准确率为90%的模型。第二模型以 第一模型为标签进行训练,因此,第二模型对人脸进行识别时,识别准确率应该在90% 以上,即第二模型以第一模型为引导,使得第二模型训练得至少比第一模型要优。因 此,选择已经训练得较好的模型为参考模型,可以使得要训练的模型更优。
作为一种可选的实施例,确定预定样本对在第一模型下的第一距离,以及确定预定样本对在第二模型下的第二距离时,可以先采用第一模型提取预定样本对的特征, 得到第一特征对,以及采用第二模型提取该预定样本对的特征,得到第二特征对;之 后,根据该第一特征对确定第一距离,以及根据该第二特征对确定第二距离。
需要说明的是,采用模型提取样本的特征时,一般采用模型的主干网络来提取。深度神经网络一般划分为主干网络(Backbone)和头部网络(Head)。例如,在深度 人脸识别领域,主干网络用于提取人脸图像的特征向量,头部网络仅存在于模型训练 过程中,或者在模型的训练过程中也可以不需要头部网络。例如,基于度量学习的模 型训练,可以不用头部网络,基于多分类方式的模型训练,需要头部网络对特征向量 进行预测分类。人脸识别模型训练完毕后,部署应用时仅需要主干网络。
可选地,采用第一模型提取预定样本对的特征,得到第一特征对,以及采用第二模型提取预定样本对的特征,得到第二特征对时,可以通过以下方式实现:以预定样 本对为两张人脸图像为例,两张人脸图像分别称为第一样本和第二样本,采用第一模 型的主干网络,分别提取第一样本的特征,记为第一特征,和第二样本的特征,记为 第二特征,该第一特征和第二特征形成第一特征对;同样地,采用第二模型的主干网 络,分别提取第一样本的特征,记为第三特征,和第二样本的特征,记为第四特征, 该第三特征和第四特征形成第二特征对。需要说明的是,特征的数学表示可以是向量, 维度比如为512维,同一模型提取的特征是同维度的。但在本实施例中,不要求第一 模型和第二模型提取的特征同维度,即第一模型和第二模型提取的特征可以是不同维 度。
作为一种可选的实施例,根据该第一特征对确定第一距离,以及根据该第二特征对确定第二距离时,上述第一距离和第二距离可以采用多种类型的距离表述方式,例 如,可以是标准化的欧式距离,也可以是简单的余弦距离等,在此不对距离的具体表 现形式进行限定。
作为一种可选的实施例,损失函数是通过第一距离和第二距离构造的,对于具体的预定样本,由于第一距离是预定样本在第一模型下的距离,第二距离是预定样本在 第二模型下的距离,因此,该第一距离可以表述为包括第一模型的参数的形式,第二 距离可以表述为包括第二模型的参数的形式。因此,在通过优化损失函数,对第二模 型进行训练时,可以通过保持损失函数中第一模型的参数不变,优化损失函数中第二 模型的参数,对第二模型进行训练。即,在对第二模型进行训练时,第一模型的参数 保持不变,第二模型的参数在训练过程中不断优化,使得损失函数的损失值最小化, 从而达到优化第二模型的目的,也即是利用第一模型引导第二模型训练的目的。
作为一种可选的实施例,构造的损失函数的作用在于,通过优化第二模型的参数使得第二模型优化,优化第二模型的过程即是最小化损失函数的损失值的过程。例如, 根据第一距离和第二距离,构造的损失函数用于:在预定样本对为正样本对的情况下, 要求第一距离大于第二距离;在预定样本对为负样本对的情况下,要求第二距离大于 第一距离。若由第二模型确定的第二距离不满足上述要求,损失函数会得到较大的损 失值,而在由第二模型确定的第二距离满足上述要求的情况下,损失函数才会得到较 小的损失值,因而得到优化的第二模型的参数,使得第二模型相对于第一模型优化, 实现利用第一模型引导第二模型训练的目的。
作为一种可选的实施例,根据第一距离和第二距离,构造第二模型的损失函数时,可以通过以下公式构造第二模型的损失函数:
其中,Lcdo为上述损失函数的损失值;y为预定样本对(Ii,Ij)的标签,y=1表示 正样本对,y=0表示负样本对;为上述第二距离;为上述第一距离;为预定样本对(Ii,Ij)采用第一模型提取的特征对;为预定样本对 (Ii,Ij)采用第二模型提取的特征对。
从上述公式表示的损失函数中,可以看出,在预定样本对为正样本对的情况下,要求第一距离大于第二距离,在预定样本对为负样本对的情况下,要求第二距离大于 第一距离,若由第二模型确定的第二距离不满足上述要求,损失函数会得到较大的损 失值。因此,最小化损失函数的损失值,可以达到利用第一模型引导第二模型训练得 更优的目的。
以训练人脸识别模型为例,包括:记初始模型为Net-T(同上述第一模型),新训 练模型为Net-S(同上述第二模型),预定样本对为人脸图像对(Ii,Ij),分别用Net-T 和Net-S的主干网络提取图像对的特征,得到图像特征对和若(Ii,Ij) 是正样本对(即两张图像属于同一个人),则希望相反地,若(Ii,Ij) 是负样本对,则希望Net-T计算的比对距离值,充当了Net-S计 算的比对距离值的标签,明确引导了Net-S要训练得比Net-T好。
需要说明的是,上述公式及后续描述中,均以一对人脸对的损失计算为例进行说明,实际训练时,每次可以计算一个批次如128对人脸图像对的损失,并将其平均值 作为最终损失。例如,为使得第二模型的训练更为准确,可以对批量样本对计算损失 值,之后,对批量样本的损失值求平均。例如,先在预定样本对为批量样本对的情况 下,对批量样本对所包括的多个样本对的损失值求平均,得到平均损失值,其中,多 个样本对中每个样本对的损失值根据损失函数得到;之后,根据平均损失值,对第二 模型进行训练。在针对批量样本对,根据损失函数确定的损失值求平均时,该批量样 本对的数量可以结合训练的质量和效率的要求而灵活确定,比如,该批量样本对可以 是128对等。
在相关技术中,基于预训练式的迁移学习,仅仅利用现有的训练好的模型(初始模型)的主干网络的权值,给新训练的模型一个较好的初始状态,但并未在训练过程 中,给新模型任何监督信息,引导新模型在训练过程中不跑偏,最终能超过初始模型 的性能。采用上述比对距离优化损失的方法,明确引导了新模型在训练过程中,要优 于初始模型。另外,在相关技术中,基于预训练式的迁移学习,需要初始模型和新训 练模型的主干网络拥有相同的网络结构,这样前者才能为后者提供权值参数的初始值。 本发明实施例提出的比对距离优化损失,对两个模型的结构无任何要求。
作为一种可选的实施例,根据第一距离和第二距离,构造第二模型的损失函数时,还可以采用以下方式实现:确定距离间隔;根据第一距离,第二距离以及距离间隔, 构造第二模型的损失函数。通过引入距离间隔,结合第一距离和第二距离,构造第二 模型的损失函数。
作为一种可选的实施例,在构造损失函数时引入距离间隔,以此确定第二模型通过训练后比第一模型优化的程度。例如,根据第一距离,第二距离以及距离间隔,构 造的损失函数用于:在预定样本对为正样本对的情况下,要求第一距离大于第二距离 与距离间隔之和,在预定样本对为负样本对的情况下,要求第二距离大于第一距离与 距离间隔之和。若由第二模型确定的第二距离不满足上述要求,损失函数会得到较大 的损失值,而在由第二模型确定的第二距离满足上述要求的情况下,损失函数才会得 到较小的损失值,因而得到优化的第二模型的参数,使得第二模型相对于第一模型优 化一定程度,不仅实现利用第一模型引导第二模型训练的目的,而且优化的第二模型 要优于第一模型一定程度,第二模型优于第一模型的程度的大小取决于距离间隔的大 小。
可选地,根据第一距离,第二距离以及距离间隔,构造第二模型的损失函数时, 可以通过以下公式构造第二模型的损失函数:
其中,Lcdo为损失函数的损失值;y为预定样本对(Ii,Ij)的标签,y=1表示正样 本对,y=0表示负样本对;为第二距离;为第一距离;为 预定样本对(Ii,Ij)采用第一模型提取的特征对;为预定样本对(Ii,Ij)采用第二 模型提取的特征对;σ为距离间隔。
从上述公式表示的损失函数中,可以看出,在预定样本对为正样本对的情况下,要求第一距离大于第二距离与距离间隔之和,在预定样本对为负样本对的情况下,要 求第二距离大于第一距离与距离间隔之和,若由第二模型确定的第二距离不满足上述 要求,损失函数会得到较大的损失值。因此,最小化引入了距离间隔的损失函数的损 失值,不仅可以达到利用第一模型引导第二模型训练得更优的目的,而且可以实现第 二模型训练得更优的程度更高一些。
对应于上述引入距离间隔构造的人脸识别模型的损失函数,对于给定人脸图像对(Ii,Ij)及其标签y,分别计算其特征对和则对应该人脸图像对的损失 为:这 里引入了比对距离间隔σ,其物理意义为若(Ii,Ij)是正样本对,则希望比 至少小σ,若为负样本对,则至少大σ。
上述描述的步骤:根据第一距离和第二距离,构造第二模型的损失函数,仅仅是单独地作为损失函数来对第二模型进行训练。在本发明的可选实施例中,还可以采用 一些结合的其它损失函数来对第二模型进行训练。因此,在通过优化损失函数,对第 二模型进行训练时,可以在优化损失函数时结合优化其它损失函数,对第二模型进行 训练,其中,其它损失函数包括以下至少之一:三元组损失函数,交叉熵损失函数。 下面分别针对结合三元组损失函数和交叉熵损失函数来分别说明。
(1)配合度量学习中的三元组损失函数(triplet loss)使用
三元组损失函数形如Ltri=max(0,||xa-xp||2-||xa-xn||2+α),这里(xa,xp)和(xa,xn) 分别对应正负样本对,α是距离间隔。若参考上述引入距离间隔的公式,并通过简单 的加权求和组合两种损失函数,则组合损失为:
其中,Ltri关注的是距离的相对差异,Lcdo关注的是距离的绝对差异。
基于度量学习的人脸识别模型训练中,往往仅关注了人脸对之间的相对距离差异(如三元组损失triplet loss),或者关注到了人脸对的绝对距离差异,但是所有人脸对 距离,都是跟人为指定的固定阈值进行比较(如比对损失contrastive loss),本发明实 施例中提出的比对距离优化损失,在考虑绝对距离差异的同时,还给不同的人脸对不 同的距离标签(距离阈值),因此将比对距离优化损失和三元组损失结合使用时,会引 导模型同时关注绝对和相对距离差异,便于模型学习到更具判别性的特征。
(2)配合多分类中的softmax交叉熵损失函数使用
记交叉熵损失函数为Lce,通过简单的加权求和组合两种损失函数,组合损失为: L=Lce+λ*Lcdo。与上述实现方式不同,基于多分类的模型训练需要Head头部网络, 每次输入的是人脸图像组成的批量数据,如{I1,I2,I3,...,Ik}(k为批次大小),而不是人 脸图像对组成的批量数据,如{(I1,I2),(I3,I5),...,(Ii,Ij)}。
为了计算Lcdo,可以对{I1,I2,I3,...,Ik}进行排列组合,得到最多个人脸对,为了 减少计算量,可以从中随机挑选固定数量的人脸对,得到{(I1,I2),(I3,I5),...,(Ii,Ij)}及对 应的标签集。训练模型的人脸数据集一般非常大,因此一个批次的数据{I1,I2,I3,...,Ik} 中,可能不存在正样本对,这样会对Lcdo的计算造成影响。此时,可以分开准备两种 批量数据。
作为一种可选的实施例,为使得模型的训练进一步地优化,在第二模型训练完毕后,采用训练好的第二模型作为新的第一模型继续训练新的第二模型,迭代进行训练, 直到新的第二模型满足预定性能要求。例如,在上述各种优选实施方式中,均可以基 于比对距离优化,迭代更新模型。可选地,在第二模型训练达到第一预定训练目标后, 确定新的第一模型和新的第二模型,其中,新的第一模型为达到第一预定训练目标的 第二模型;重复训练第二模型的训练方法,对新的第二模型进行训练,直到新的第二 模型达到第二预定训练目标,其中,第二预定训练目标优于第一预定训练目标。比如, 在Net-T的引导下,Net-S训练完毕,此时,可以将Net-S作为新的Net-T,继续训练 新的Net-S,如此迭代进行,直到最终的Net-S满足性能要求。通过不断的迭代可以使 得模型的识别准确率提高,满足更高的性能要求。
通过上述实施例及优选实施例,有效地实现了以现有的训练模型为引导来对新模型进行训练,以现有模型为标签,使得新模型至少训练得比现有模型要好,因此,有 效地控制了模型训练的趋势,即使得模型向越来越好的方向训练,从而达到能够显式 地引导模型训练的趋势,使得新训练的模型比原有的预训练模型更优的效果。
需要说明的是,在蒸馏学习中,也存在两个模型,可以同样记为Net-T和Net-S, 但两个模型均需要用到头部网络,并且要求头部网络对应的类别一致。可以看到,蒸 馏学习相比预训练式迁移学习,不要求Net-T和Net-S两个模型的主干网络一致,但 要求使用对应同样类别的头部网络,而本发明优选实施方式提出的比对距离优化损失, 对头部网络的使用与否及其结构无要求。
因此,通过上述优选实施方式提出的比对距离优化损失的模型训练方法,可以弥补现有损失仅关注相对距离差异的不足,或者关注绝对距离差异时,采用固定距离阈 值的不足,相比蒸馏学习和基于预训练式的迁移学习,本发明优选实施方式提出的比 对距离优化损失的模型训练方法,拥有更广泛的使用场景。
上文中结合图1,详细描述了根据本申请实施例的模型训练方法,下面将结合图2,描述根据本申请实施例的模型训练装置和计算机终端。
图2是根据本发明实施例提供的模型训练装置的示意性框图,如图2所示,该模 型训练装置200包括:第一确定模块202,第二确定模块204,构造模块206和训练模 块208,下面对该模型训练装置200进行说明。
第一确定模块202,用于确定第一模型和第二模型;第二确定模块204,连接至上述第一确定模块202,用于确定预定样本对在第一模型下的第一距离,以及确定预定 样本对在第二模型下的第二距离;构造模块206,连接至上述第二确定模块204,用于 根据第一距离和第二距离,构造第二模型的损失函数;训练模块206,连接至上述构 造模块206,用于通过优化损失函数,对第二模型进行训练。
可选地,作为一个实施例,上述训练模块208,用于通过保持损失函数中第一模 型的参数不变,优化损失函数中第二模型的参数,对第二模型进行训练。
可选地,作为一个实施例,上述构造模块206根据第一距离和第二距离,构造的 损失函数用于:在预定样本对为正样本对的情况下,要求第一距离大于第二距离;在 预定样本对为负样本对的情况下,要求第二距离大于第一距离。
可选地,作为一个实施例,上述构造模块206,用于通过以下公式构造第二模型 的损失函数:
其中,Lcdo为损失函数的损失值;y为预定样本对(Ii,Ij)的标签,y=1表示正样 本对,y=0表示负样本对;为第二距离;为第一距离;为 预定样本对(Ii,Ij)采用第一模型提取的特征对;为预定样本对(Ii,Ij)采用第二 模型提取的特征对。
可选地,作为一个实施例,上述构造模块206包括:确定单元和构造单元,其中, 确定单元,用于确定距离间隔;构造单元,连接至上述确定单元,用于根据第一距离, 第二距离以及距离间隔,构造第二模型的损失函数。
可选地,作为一个实施例,上述构造模块206根据第一距离,第二距离以及距离 间隔,构造的损失函数用于:在预定样本对为正样本对的情况下,要求第一距离大于 第二距离与距离间隔之和,在预定样本对为负样本对的情况下,要求第二距离大于第 一距离与距离间隔之和。
可选地,作为一个实施例,上述构造单元,还用于通过以下公式构造第二模型的损失函数:
其中,Lcdo为损失函数的损失值;y为预定样本对(Ii,Ij)的标签,y=1表示正样 本对,y=0表示负样本对;为第二距离;为第一距离;为 预定样本对(Ii,Ij)采用第一模型提取的特征对;为预定样本对(Ii,Ij)采用第二 模型提取的特征对;σ为距离间隔。
可选地,作为一个实施例,上述训练模块,还用于在优化损失函数时结合优化其它损失函数,对第二模型进行训练,其中,其它损失函数包括以下至少之一:三元组 损失函数,交叉熵损失函数。
可选地,作为一个实施例,上述训练模块208包括:平均单元和训练单元,其中, 平均单元,用于在预定样本对为批量样本对的情况下,对批量样本对所包括的多个样 本对的损失值求平均,得到平均损失值,其中,多个样本对中每个样本对的损失值根 据损失函数得到;训练单元,用于根据平均损失值,对第二模型进行训练。
可选地,作为一个实施例,上述模型训练装置还包括:迭代训练模块,用于在第 二模型训练达到第一预定训练目标后,确定新的第一模型和新的第二模型,其中,新 的第一模型为达到第一预定训练目标的第二模型;以及重复训练第二模型的训练方法, 对新的第二模型进行训练,直到新的第二模型达到第二预定训练目标,其中,第二预 定训练目标优于第一预定训练目标。
可选地,作为一个实施例,上述模型训练装置应用于人脸识别模型的训练。
应理解,根据本申请实施例的装置中的各个单元的上述和其它操作和/或功能分别 为了实现上述各个方法中的相应流程,为了简洁,在此不再赘述。
图3是根据本发明实施例提供的一种计算机终端300的示意性结构图。图3所示 的计算机终端300包括处理器310,处理器310可以从存储器中调用并运行计算机程 序,以实现本申请实施例中的方法。
可选地,如图3所示,计算机终端300还可以包括存储器320。其中,处理器310 可以从存储器320中调用并运行计算机程序,以实现本申请实施例中的方法。
其中,存储器320可以是独立于处理器310的一个单独的器件,也可以集成在处 理器310中。
可选地,如图3所示,计算机终端300还可以包括收发器330,处理器310可以 控制该收发器330与其他设备进行通信,具体地,可以向其他设备发送信息或数据, 或接收其他设备发送的信息或数据。
其中,收发器330可以包括发射机和接收机。收发器330还可以进一步包括天线,天线的数量可以为一个或多个。
可选地,该计算机终端300可以实现本申请实施例的各个方法中实现的相应流程,为了简洁,在此不再赘述。
应理解,本申请实施例的处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或 者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、 现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、 分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公 开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任 何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码 处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可 以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储 器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器 中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器 (Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、 可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器 (Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性 说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动 态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleData Rate SDRAM, DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、 同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存 取存储器(Direct Rambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储 器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,上述存储器为示例性但不是限制性说明,例如,本申请实施例中的存储器还可以是静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数 据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型 同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存 储器(Synch Link DRAM,SLDRAM)以及直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)等等。也就是说,本申请实施例中的存储器旨在包括但不限于这些 和任意其它适合类型的存储器。
本申请实施例还提供了一种计算机可读存储介质,用于存储计算机程序。
可选的,该计算机可读存储介质可应用于本申请实施例中的计算机终端,并且该计算机程序使得计算机终端执行本申请实施例的各个方法中的相应流程,为了简洁, 在此不再赘述。
本申请实施例还提供了一种计算机程序产品,包括计算机程序指令。
可选的,该计算机程序产品可应用于本申请实施例中的计算机终端,并且该计算机程序指令使得计算机终端执行本申请实施例的各个方法中的相应流程,为了简洁, 在此不再赘述。
本申请实施例还提供了一种计算机程序。
可选的,该计算机程序可应用于本申请实施例中的计算机终端,当该计算机程序在计算机上运行时,使得计算机终端执行本申请实施例的各个方法中的相应流程,为 了简洁,在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分, 可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件 可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所 显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模 块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到 多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案 的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成 的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时, 可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的 形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一 台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所 述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者 光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润 饰也应视为本发明的保护范围。
Claims (12)
1.一种模型训练方法,其特征在于,包括:
确定第一模型和第二模型;
确定预定样本对在所述第一模型下的第一距离,以及确定所述预定样本对在所述第二模型下的第二距离;
根据所述第一距离和所述第二距离,构造所述第二模型的损失函数;
通过优化所述损失函数,对所述第二模型进行训练。
2.根据权利要求1所述的方法,其特征在于,通过优化所述损失函数,对所述第二模型进行训练包括:
通过保持所述损失函数中所述第一模型的参数不变,优化所述损失函数中所述第二模型的参数,对所述第二模型进行训练。
3.根据权利要求2所述的方法,其特征在于,根据所述第一距离和所述第二距离,构造的所述损失函数用于:在所述预定样本对为正样本对的情况下,要求所述第一距离大于所述第二距离;在所述预定样本对为负样本对的情况下,要求所述第二距离大于所述第一距离。
5.根据权利要求2所述的方法,其特征在于,根据所述第一距离和所述第二距离,构造所述第二模型的损失函数包括:
确定距离间隔;
根据所述第一距离,所述第二距离以及所述距离间隔,构造所述第二模型的损失函数。
6.根据权利要求5所述的方法,其特征在于,根据所述第一距离,所述第二距离以及所述距离间隔,构造的所述损失函数用于:在所述预定样本对为正样本对的情况下,要求所述第一距离大于所述第二距离与所述距离间隔之和,在所述预定样本对为负样本对的情况下,要求所述第二距离大于所述第一距离与所述距离间隔之和。
8.根据权利要求1所述的方法,其特征在于,通过优化所述损失函数,对所述第二模型进行训练包括:
在优化所述损失函数时结合优化其它损失函数,对所述第二模型进行训练,其中,所述其它损失函数包括以下至少之一:三元组损失函数,交叉熵损失函数。
9.根据权利要求1所述的方法,其特征在于,通过优化所述损失函数,对所述第二模型进行训练包括:
在所述预定样本对为批量样本对的情况下,对所述批量样本对所包括的多个样本对的损失值求平均,得到平均损失值,其中,多个样本对中每个样本对的损失值根据所述损失函数得到;
根据所述平均损失值,对所述第二模型进行训练。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第二模型训练达到第一预定训练目标后,确定新的第一模型和新的第二模型,其中,所述新的第一模型为达到所述第一预定训练目标的所述第二模型;
重复训练所述第二模型的训练方法,对新的第二模型进行训练,直到新的第二模型达到第二预定训练目标,其中,所述第二预定训练目标优于所述第一预定训练目标。
11.根据权利要求1至10中任一项所述的方法,其特征在于,所述第二模型包括人脸识别模型。
12.一种模型训练装置,其特征在于,包括:
第一确定模块,用于确定第一模型和第二模型;
第二确定模块,用于确定预定样本对在所述第一模型下的第一距离,以及确定所述预定样本对在所述第二模型下的第二距离;
构造模块,用于根据所述第一距离和所述第二距离,构造所述第二模型的损失函数;
训练模块,用于通过优化所述损失函数,对所述第二模型进行训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010526776.2A CN111680636B (zh) | 2020-06-09 | 2020-06-09 | 模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010526776.2A CN111680636B (zh) | 2020-06-09 | 2020-06-09 | 模型训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111680636A true CN111680636A (zh) | 2020-09-18 |
CN111680636B CN111680636B (zh) | 2024-02-06 |
Family
ID=72435307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010526776.2A Active CN111680636B (zh) | 2020-06-09 | 2020-06-09 | 模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111680636B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113705589A (zh) * | 2021-10-29 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182394A (zh) * | 2017-12-22 | 2018-06-19 | 浙江大华技术股份有限公司 | 卷积神经网络的训练方法、人脸识别方法及装置 |
US20190287515A1 (en) * | 2018-03-16 | 2019-09-19 | Microsoft Technology Licensing, Llc | Adversarial Teacher-Student Learning for Unsupervised Domain Adaptation |
CN110598840A (zh) * | 2018-06-13 | 2019-12-20 | 富士通株式会社 | 知识迁移方法、信息处理设备以及存储介质 |
US20200125927A1 (en) * | 2018-10-22 | 2020-04-23 | Samsung Electronics Co., Ltd. | Model training method and apparatus, and data recognition method |
CN111126555A (zh) * | 2018-10-31 | 2020-05-08 | 浙江宇视科技有限公司 | 神经网络模型训练方法、装置、设备及存储介质 |
-
2020
- 2020-06-09 CN CN202010526776.2A patent/CN111680636B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182394A (zh) * | 2017-12-22 | 2018-06-19 | 浙江大华技术股份有限公司 | 卷积神经网络的训练方法、人脸识别方法及装置 |
US20190287515A1 (en) * | 2018-03-16 | 2019-09-19 | Microsoft Technology Licensing, Llc | Adversarial Teacher-Student Learning for Unsupervised Domain Adaptation |
CN110598840A (zh) * | 2018-06-13 | 2019-12-20 | 富士通株式会社 | 知识迁移方法、信息处理设备以及存储介质 |
US20200125927A1 (en) * | 2018-10-22 | 2020-04-23 | Samsung Electronics Co., Ltd. | Model training method and apparatus, and data recognition method |
CN111126555A (zh) * | 2018-10-31 | 2020-05-08 | 浙江宇视科技有限公司 | 神经网络模型训练方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
雷杰 等: "深度网络模型压缩综述", 软件学报, no. 02, pages 31 - 46 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113705589A (zh) * | 2021-10-29 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111680636B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019100724A1 (zh) | 训练多标签分类模型的方法和装置 | |
US20230196117A1 (en) | Training method for semi-supervised learning model, image processing method, and device | |
WO2019100723A1 (zh) | 训练多标签分类模型的方法和装置 | |
US10726313B2 (en) | Active learning method for temporal action localization in untrimmed videos | |
US10055673B2 (en) | Method and device for processing an image of pixels, corresponding computer program product and computer-readable medium | |
US10169683B2 (en) | Method and device for classifying an object of an image and corresponding computer program product and computer-readable medium | |
US11636328B2 (en) | L2 constrained softmax loss for discriminative face verification | |
CN111523621A (zh) | 图像识别方法、装置、计算机设备和存储介质 | |
CN111164601A (zh) | 情感识别方法、智能装置和计算机可读存储介质 | |
CN111767900B (zh) | 人脸活体检测方法、装置、计算机设备及存储介质 | |
US20210334604A1 (en) | Facial recognition method and apparatus | |
CN112784929B (zh) | 一种基于双元组扩充的小样本图像分类方法及装置 | |
JP7089045B2 (ja) | メディア処理方法、その関連装置及びコンピュータプログラム | |
US20220067888A1 (en) | Image processing method and apparatus, storage medium, and electronic device | |
CN111401196A (zh) | 受限空间内自适应人脸聚类的方法、计算机装置及计算机可读存储介质 | |
CN111898735A (zh) | 蒸馏学习方法、装置、计算机设备和存储介质 | |
CN110555439A (zh) | 标识识别方法及其模型的训练方法、装置和电子系统 | |
CN112801054A (zh) | 人脸识别模型的处理方法、人脸识别方法及装置 | |
CN112884147A (zh) | 神经网络训练方法、图像处理方法、装置及电子设备 | |
CN111104852A (zh) | 一种基于启发式高斯云变换的人脸识别技术 | |
CN111680636A (zh) | 模型训练方法及装置 | |
CN111310516A (zh) | 一种行为识别方法和装置 | |
KR20220058915A (ko) | 이미지 검출 및 관련 모델 트레이닝 방법, 장치, 기기, 매체 및 프로그램 | |
CN111680631B (zh) | 模型训练方法及装置 | |
CN108229263B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |