一种人脸识别模型的训练方法、装置及存储介质制造方法及图纸

技术编号:37362574 阅读:18 留言:0更新日期:2023-04-27 07:10
本发明专利技术提供了一种人脸识别模型的训练方法、装置及存储介质,该方法包括:S1,获取训练数据集;S2,将训练数据集拆分成N个数据集;S3,将N个数据集中的每一个分别输入主干网络模型,获得N个数据集中每一数据集的人脸主干模型特征值;S4,将每一数据集的人脸主干模型特征值分别输入预置的分类模型,获得每一个数据集的分类特征值;S5,根据分类模型的损失函数值进行反向传播,更新每一个数据集的分类特征值;S6,在分类特征值更新完成之后,合并N个数据集的损失函数值,并更新每一个数据集的主干模型特征值。利用上述技术方案,降低了大规模人脸数据的清洗和ID合并复杂度,有效提高了模型训练精度,且提高了训练效率。且提高了训练效率。且提高了训练效率。

【技术实现步骤摘要】
一种人脸识别模型的训练方法、装置及存储介质


[0001]本专利技术涉及人工智能
,特别是涉及一种人脸识别模型的训练方法、装置及存储介质。

技术介绍

[0002]近年来,随着硬件资源的发展,深度学习技术也得到了飞速发展,其在很多领域都取得了不错的效果,特别是在计算机视觉领域。而人脸识别是计算机视觉领域一个重要的研究方向。人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部识别的一系列相关技术,通常也叫做人像识别、面部识别。
[0003]目前现有的人脸识别训练方法大都为单一数据集多GPU并行训练的方法,如:开源insightface中的arcface训练方法。图1为现有技术的人脸识别模型训练方法的示意图。如图1所示,现有技术的人脸识别模型训练方法包括如下步骤:输入训练数据集,多个GPU通过共享的主干网络模型提取该数据集的特征值FC1;将通过主干模型提取出的特征值FC1输入包含Linear+Softmax的分类模型,输出分类特征值FC2,以进行人脸ID转换;计算损失函数Loss,根据计算的损失函数值进行反向传播,更新主干模型特征值FC1和分类特征值FC2,继续进行人脸识别模型的训练直到达到训练停止条件。
[0004]单一数据集训练时需要确保数据集内的人脸ID不重复,重复率越大,算法训练精度越低。因此单一数据集在数百万人脸ID以上的数据整理和清洗的难度巨大,需要耗费巨大的人力物力,导致训练的效率较低;如果采用算法自动清洗,则对清洗算法精度要求非常高,最终训练出来的模型精度无法高于清洗算法。

技术实现思路

[0005]本专利技术的实施例提供了一种人脸识别模型的训练方法、装置及存储介质,以在保证一定的模型训练精度的情况下,提高大规模数据集下人脸识别模型的训练效率。
[0006]为了实现上述目的,一方面,提供一种人脸识别模型的训练方法,包括:
[0007]S1,获取一用于人脸识别的训练数据集;
[0008]S2,将所获取的训练数据集拆分成N个数据集,其中N为大于1的自然数;
[0009]S3,将N个数据集中的每一个分别输入预置的人脸识别模型中的主干网络模型,获得N个数据集中每一数据集的人脸主干模型特征值;
[0010]S4,将所获得的每一数据集的人脸主干模型特征值分别输入预置的分类模型,获得每一个数据集的分类特征值;
[0011]S5,根据分类模型的损失函数值进行反向传播,分别更新每一个数据集的分类特征值;
[0012]S6,在每一个数据集的分类特征值更新完成之后,合并N个数据集的损失函数值,根据合并后的损失函数值进行反向传播,并更新每一个数据集的主干模型特征值。
[0013]优选地,所述的训练方法,其中,步骤S2中,将训练数据集按照数据量平均拆分成N个数据集。
[0014]优选地,所述的训练方法,其中,分类模型包括:线性层和Softmax层。
[0015]优选地,所述的训练方法,其中,步骤S6中合并N个数据集的损失函数值包括:
[0016]将N个数据集的损失函数值求平均来获得合并后的损失函数值。
[0017]优选地,所述的训练方法,其中,将主干模型的学习率设置成大于分类模型的学习率,其中主干模型的学习率与分类模型的学习率相比的倍数值与N值相关。
[0018]优选地,所述的训练方法,其中,步骤S2中,根据要完成的不同任务来拆分训练数据集,不同的任务使用不同的数据集。
[0019]另一方面,提供了一种人脸识别装置,包括存储器和处理器,存储器存储有至少一段程序,至少一段程序由处理器执行以实现如上文任一所述的方法。
[0020]又一方面,提供了一种人脸识别装置,包括存储器和处理器,所述存储器存储有至少一段程序,所述至少一段程序由处理器执行以实现采用如上文任一所述的训练方法训练好的人脸识别模型。
[0021]又一方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一段程序,至少一段程序由处理器执行以实现如上文任一所述的训练方法。
[0022]又一方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一段程序,至少一段程序由处理器执行以实现采用如上文任一所述的训练方法训练好的人脸识别模型。
[0023]上述技术方案具有如下技术效果:
[0024]本专利技术实施例的技术方案通过将单一的人脸ID训练数据集拆分成相互独立的多个数据集,并根据独立的多个数据集将Loss计算和反向传播进行分解,使得各数据集的Loss反向传播不互相干扰,实现了将FC2和Loss的计算只局限在了各数据集内,使得在训练过程中只需保证拆分后、较小的独立数据集的噪声,而不需要考虑海量的全局数据的噪声问题,降低了大规模人脸数据的清洗和ID合并复杂度,有效提高了模型训练精度;
[0025]进一步地,与现有方案对比,本专利技术实施例的技术方案还具有如下优点:
[0026]1、可把人脸数据划分成小数据集,如:有500万个未标注的人脸ID,我们可以划分成5个100万个人脸ID数据集,只需要每个数据集内100万个人脸ID进行标注,相比对整个500万完整标注工作难度明显降低;
[0027]2、由于分离数据集之间互不干扰,可以把已知未重复的人脸ID重复放置到各个数据集中,增加人脸ID之间的碰撞概率,从而可以在有限数据情况下利用GPU算力提升模型精度;
[0028]3、训练过程中可以先独立快速训练各子数据集FC2,然后再合并Loss进行训练,从而提高了训练效率。
附图说明
[0029]图1为现有技术的人脸识别模型训练方法的示意图;
[0030]图2为本专利技术一实施例的人脸识别模型的训练方法的总体构思示意图;
[0031]图3为本专利技术一实施例的人脸识别模型的训练方法的流程示意图;
[0032]图4为本专利技术一实施例的人脸识别装置的结构示意图。
具体实施方式
[0033]为进一步说明各实施例,本专利技术提供有附图。这些附图为本专利技术揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本专利技术的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
[0034]现结合附图和具体实施方式对本专利技术进一步说明。
[0035]实施例一:
[0036]图2为本专利技术一实施例的人脸识别模型的训练方法的总体构思示意图。如图2,在该实施例中,将单一的训练数据集的人脸ID拆分成了相互独立的多个数据集,并将损失函数Loss计算和反向传播根据拆分的数据集进行分解,使得每个数据集的Loss反向传播不互相干扰。由于人脸识别模型训练完成后,最终使用时,只用到主干网络模型的主干模型特征值即FC1特征值,分类特征值即FC2的值只有在模型训练阶段有价值,因此本发本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种人脸识别模型的训练方法,其特征在于,包括:S1,获取一用于人脸识别的训练数据集;S2,将所获取的所述训练数据集拆分成N个数据集,其中N为大于1的自然数;S3,将所述N个数据集中的每一个分别输入预置的人脸识别模型中的主干网络模型,获得所述N个数据集中每一数据集的人脸主干模型特征值;S4,将所获得的每一数据集的人脸主干模型特征值分别输入预置的分类模型,获得所述每一个数据集的分类特征值;S5,根据分类模型的损失函数值进行反向传播,分别更新所述每一个数据集的分类特征值;S6,在所述每一个数据集的分类特征值更新完成之后,合并所述N个数据集的损失函数值,根据所述合并后的损失函数值进行反向传播,并更新所述每一个数据集的主干模型特征值。2.根据权利要求1所述的训练方法,其特征在于,所述步骤S2中,将所述训练数据集按照数据量平均拆分成所述N个数据集。3.根据权利要求1所述的训练方法,其特征在于,所述分类模型包括:线性层和Softmax层。4.根据权利要求1所述的训练方法,其特征在于,所述步骤S6中合并所述N个数据集的损失函数值包括:将所述N个数据集的损失函数值求平均来获得所述...

【专利技术属性】
技术研发人员:陈杞城张松水苏志坚
申请(专利权)人:厦门狄耐克智能科技股份有限公司
类型:发明
国别省市:

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

1