一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法技术

技术编号:38686708 阅读:19 留言:0更新日期:2023-09-02 23:00
本发明专利技术公开了一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法,该方法通过年龄标签做标签平滑,在优化函数中使用了类别权重联合均方差损失蒸馏训练第一年龄识别模型,提高而预测的精准度。并且,为了在上面模型训练的基础上进一步减少模型参数量,获取更小的年龄识别模型,同时保证模型精度,综合考虑模型速度精度和硬件支持问题,设计更小的第二年龄识别模型去学习第一年龄识别模型的输出结果,更有利于硬件部署。更有利于硬件部署。更有利于硬件部署。

【技术实现步骤摘要】
一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法


[0001]本专利技术涉及图像识别领域,更具体地,本专利技术涉及一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法。

技术介绍

[0002]随着图像识别领域的不断发展,年龄识别技术目前广泛应用于美容医疗、商场智能导购机器人、美图秀秀中,并且具有相当广泛的使用需求。
[0003]年龄识别技术主要是基于图像识别,通过获取使用者的脸部信息,进而识别出使用者的年龄。但目前年龄识别技术会受到拍摄图像的质量,目标的检测距离以及某个年龄阶段年龄难识别的问题影响,导致模型精度降低。
[0004]现有的年龄识别方法存在以下问题:1、识别存在年龄偏差误差影响,假设真实年龄为5岁,那么预测成6对就比预测成9岁精度高;2、训练出更优的年龄识别模型可能存在参数量多或特殊层影响,在实际应用部署中存在问题。

技术实现思路

[0005]本专利技术克服了现有技术的不足,提供一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法,以期望可以解决现有技术存在的问题。
[0006]为解决上述的技术问题,本专利技术一方面提供了一种基于蒸馏学习的人脸图像年龄识别模型训练方法:
[0007]一种基于蒸馏学习的人脸图像年龄识别模型训练方法,其特征在于,包括以下步骤,
[0008]准备步骤:制作训练数据、读取训练数据、读取训练模型配置参数、对年龄训练图像进行预处理;
[0009]第一年龄识别模型训练:采用特征提取模块作为第一年龄识别模型,使用平滑标签结合类别权重、均方差联合损失优化训练所述第一年龄识别模型,直至Loss下降到稳定状态,停止第一年龄识别模型训练;
[0010]第二年龄识别模型训练:采用另一特征提取模块作为第二年龄识别模型,由第一年龄识别模型训练第二年龄识别模型,直至第二年龄识别模型的Loss下降到稳定状态,停止训练。
[0011]进一步的技术方案为,所述制作训练数据,包括数据清洗和人脸校正;
[0012]所述读取训练数据,可以使用清理好的公司提供数据集,也可以使用公开数据集;
[0013]所述读取训练模型配置参数,包括学习率,迭代次数;
[0014]所述对年龄训练图像进行预处理包括人脸校正、图像增强处理、等比例扩大处理。
[0015]更进一步的技术方案为,所述第一年龄识别模型训练具体包括以下步骤:
[0016]所述特征提取模块为轻量级MobileNetV2,MobileNetV2作为年龄识别模型
backbone,模型的通道参数alpha设置为1.4,表示模型每一个block的输出通道数为c*alpha,提取年龄识别特征;
[0017]采用softmax层作为年龄识别模型的输出,输出维数为71;
[0018]使用均方差函数监督年龄识别训练所述第一年龄识别模型,直至Loss下降到稳定状态,停止第一年龄识别模型训练。
[0019]更进一步的技术方案为,在使用均方差函数监督年龄识别训练所述第一年龄识别模型时,针对数据不均衡问题可以在模型训练过程中添加类别权重,也可以使用平滑标签结合互补熵。
[0020]结合互补熵可以在最大化真实年龄类别的似然性的同时,中和除真实年龄对应类别之外其他年龄类别的预测概率,该方法通过抵消错误类别上的最高softmax得分,少数类别上的样本能够获得更好的训练机会。还可以防止对大多数类别的样本进行过度拟合或在类别不平衡的数据集中降低性能。
[0021]更进一步的技术方案为,训练所述第一年龄识别模型时,使用Nadam优化器对模型进行方向梯度迭代优化,并设置初始学习率,观察Loss收敛下降情况,分阶段调整学习率大小。
[0022]更进一步的技术方案为,所述第二年龄识别模型训练具体包括以下步骤:
[0023]可以将第一年龄识别模型的输出f1作为学生模型的标签,训练学生模型;
[0024]也可以采用第一年龄识别模型和第二年龄识别模型相互学习的方式训练模型,这时两个模型输出可以互为标签训练模型。
[0025]更进一步的技术方案为,所述第二年龄识别模型训练采用蒸馏训练年龄识别模型,在优化损失中加入硬标签损失,输出loss为两种标签所得到的均方差加权求和。
[0026]本专利技术另一方面还提供了一种基于蒸馏学习的人脸图像的年龄识别方法,其特征在于,将优化好的第二年龄识别模型softmax输出结果取top5,并将top5输出归一化后与对应年龄类别标签值加权求和,作为最终的估计年龄值。
[0027]进一步的技术方案为,所述年龄评价指标mae计算公式如下:
[0028][0029][0030]其中,μ
i
为年龄平滑标签;
[0031]δ
i
为跟μ
i
同维度的向量,用于截取模型输出p
i
,截取区间与软标签的区间对应;
[0032]δ
i
为平滑标签对应的softmax输出区间提取函数;
[0033]p
i
为模型softmax输出。
[0034]与现有技术相比,本专利技术至少具有以下有益效果:本专利技术提供了一种基于蒸馏学习的人脸图像年龄识别模型训练方法及年龄识别方法,通过年龄标签做标签平滑,在优化函数中使用了类别权重联合均方差损失蒸馏训练第一年龄识别模型,提高而预测的精准度。并且,为了在上面模型训练的基础上进一步减少模型参数量,获取更小的年龄识别模型,同时保证模型精度,综合考虑模型速度精度和硬件支持问题,设计更小的第二年龄识别模型去学习第一年龄识别模型的输出结果,更有利于硬件部署。
附图说明
[0035]图1为实施例一的流程示意图;
[0036]图2为实施例一的年龄属性训练数据分布图;
[0037]图3为实施例一的第一年龄识别模型的年龄识别网络图;
[0038]图4为实施例一的蒸馏训练网络图;
[0039]图5为实施例二的蒸馏训练与原模训练损失优化对比图;
[0040]图6为实施例二的蒸馏训练与原模训练精度优化对比图;
具体实施方式
[0041]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0042]实施例一
[0043]一种基于蒸馏学习的人脸图像年龄识别模型训练方法,参见图1,包括以下步骤:
[0044]S1:准备步骤:制作训练数据、读取训练数据、读取训练模型配置参数、对年龄训练图像进行预处理;
[0045]S11:制作训练数据,包括数据清洗和人脸校正;
[0046]对年龄训练图像进行校正处理,包括使用STN进行人脸倾斜校正,也就是设计简单的人脸检测模型,同时检测人脸检测框和人脸的关键点信息,并根据获取的关键点信息通过STL做标准位置映射,以对检测框做本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于蒸馏学习的人脸图像年龄识别模型训练方法,其特征在于,包括以下步骤,准备步骤:制作训练数据、读取训练数据、读取训练模型配置参数、对年龄训练图像进行预处理;第一年龄识别模型训练:采用特征提取模块作为第一年龄识别模型,使用平滑标签结合类别权重、均方差联合损失优化训练所述第一年龄识别模型,直至Loss下降到稳定状态,停止第一年龄识别模型训练;第二年龄识别模型训练:采用另一特征提取模块作为第二年龄识别模型,由第一年龄识别模型训练第二年龄识别模型,直至第二年龄识别模型的Loss下降到稳定状态,停止训练。2.如权利要求1所述的一种基于蒸馏学习的人脸图像年龄识别模型训练方法,其特征在于,所述制作训练数据,包括数据清洗和人脸校正;所述读取训练数据,可以使用清理好的公司提供数据集,也可以使用公开数据集;所述读取训练模型配置参数,包括学习率,迭代次数;所述对年龄训练图像进行预处理包括人脸校正、图像增强处理、等比例扩大处理。3.如权利要求1所述的一种基于蒸馏学习的人脸图像年龄识别模型训练方法,其特征在于,所述第一年龄识别模型训练具体包括以下步骤:所述特征提取模块为轻量级MobileNetV2,MobileNetV2作为年龄识别模型backbone,模型的通道参数alpha设置为1.4,表示模型每一个block的输出通道数为c*alpha,提取年龄识别特征;采用softmax层作为年龄识别模型的输出,输出维数为71;使用均方差函数监督年龄识别训练所述第一年龄识别模型,直至Loss下降到稳定状态,停止第一年龄识别模型训练。4.如权利要求3所述的一种基于蒸馏学习的人脸图像年龄识别模型训练方法,其特征在于,在使用均方差函数监督年龄识别训练所述第一年龄识别模型时,可以在模型训练过程中添加类...

【专利技术属性】
技术研发人员:刘淑敏邹军高岚
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:

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

1