本发明涉及活体检测,具体涉及基于线性注意力机制的人脸活体检测模型的构建方法。
背景技术:
1、随着人工智能和人脸识别技术的进步,人脸活体检测在人脸识别系统中的重要性日益凸显,然而,现有的人脸活体检测方法存在一些问题,如用户体验不佳、复杂度高、依赖性强等,需要追求一种新的人脸活体检测方法,以解决这些问题;目前,主流的人脸活体检测方法可分为需要利用辅助信息的方法和不需要利用辅助信息的方法;前者需要用户做出特定动作反馈,虽然结果可靠,但用户体验差且效率低;而后者则更符合未来的发展趋势,只利用可见光下的人脸图像进行检测;
2、然而,现有的深度学习方法在参数量庞大时,其检测速度慢,精度低,为了解决这些问题,通常都是引入双重注意力机制网络的方案构建模型,从而可以高效的处理复杂多样的场景,并通过自注意机制来捕捉特征图中的空间和通道依赖关系,进一步增强特征表示,但是引入双重注意力机制网络会存在计算复杂度高、计算精度低的问题,亟需改善;
3、因此,发明基于线性注意力机制的人脸活体检测模型的构建方法来解决上述问题很有必要。
技术实现思路
1、本发明的目的是提供基于线性注意力机制的人脸活体检测模型的构建方法,在经典的点乘注意力机制的基础上,对软最大化函数进行线性优化,此外基于矩阵乘法结合律,改变矩阵因子乘法顺序,使得原始复杂度为o(n2)降为o(n),使得该线性注意力机制的人脸活体检测模型的构建在保证识别性能的前提下,可以有效的减少计算复杂度。
2、为了实现上述目的,本发明提供如下技术方案:基于线性注意力机制的人脸活体检测模型的构建方法,包括以下步骤:
3、步骤1、从数据集中提取包含人脸的人脸图像,进行数据预处理;
4、步骤2、构建基于卷积神经网络的特征提取人脸图像的基础模型,得到特征图;
5、步骤3、通过构建通道注意力层和位置注意力层,构成完整的特征提取网络,将特征图通过特征提取网络进行特征融合,得到进阶特征图;
6、步骤4、将进阶特征图接入全连接网络进行分类识别,完成对真人脸与假人脸的识别能力,使进阶特征图转化为二维向量,自此,人脸活体检测模型构建完毕;
7、步骤5、基于全连接层输出的二维向量结果,利用二元交叉熵损失得到分类结果,并进行反向传播,完成该人脸活体检测模型的网络参数更新;步骤6、使用训练得到的模型参数在未知测试集上进行验证,并用召回率、准确率对该人脸活体检测模型性能进行综合评测。
8、前述的基于线性注意力机制的人脸活体检测模型的构建方法,在步骤1中,从数据集中提取包含人脸的人脸图像,进行数据预处理,具体步骤为:
9、1.1、创建一个人脸图像的4维通道,对人脸图像的红、绿、蓝三个通道的像素求取整体平均值,具体公式如下:
10、
11、其中,r为red,表示人脸图像的红;g为green,表示人脸图像的绿;b为blue,表示人脸图像的蓝;
12、n为训练集图片总数;
13、μr为计算所有人脸图像的r通道的平均值;
14、μg为计算所有人脸图像的g通道的平均值;
15、μb为计算所有人脸图像的b通道的平均值;
16、i为图片序数;
17、1.2、将每个像素值减去平均值,具体公式如下:
18、
19、其中,σ为加入的比例因子,表示训练集上的标准偏差,具体的,σ=1;
20、1.3、对经过光照处理的每张图片进行随机的漂移、翻转、旋转、缩放,增加数据的数量。
21、前述的基于线性注意力机制的人脸活体检测模型的构建方法,构建基于卷积神经网络的特征提取人脸图像的基础模型,得到特征图,该基于卷积神经网络的特征具有以下特点:
22、卷积神经网络由四个基础卷积块和一个最大池化层组成,每个基础卷积块有一个卷积层和一个批归一化层组成;
23、卷积层的卷积核大小为3×3,个数为128,步长为1,激活函数为线性整流函数,填充方式为same;
24、池化层的卷积核为2×2,步长为2。
25、前述的基于线性注意力机制的人脸活体检测模型的构建方法,在步骤3中,通过构建通道注意力层和位置注意力层,构成完整的特征提取网络,将特征图通过特征提取网络进行特征融合,得到进阶特征图;
26、其中,构建位置注意力层的具体步骤为:
27、3.1.1、根据点积注意力机制,记卷积神经网络得到的特征图为a,且将a分别通过三个卷积层,得到查询向量q,且键向量k,且值向量v,且
28、其中,h为特征高度,
29、w为特征宽度,
30、c为通道数;
31、其中,该点注意力机制的公式如下:
32、s(q*k,v)=(q*k)tv
33、其中,q为查询向量,k为键向量,v为值向量;
34、3.1.2、将a、q、k、v的维度变换为使用点积运算作为注意力打分函数,并使用软最大化函数,按行进行归一化,计算出注意力分布且具体计算公式如下:
35、s=softmax(qkt)
36、3.1.3、将注意力分布s与v进行点积运算得到输出向量且具体计算公式如下:
37、h=sv=softmax(qkt)v
38、3.1.4、将输出序列h乘以一个可学习的比例参数α,并使它与特征图a进行逐元素求和运算,输出后变换维度为且具体计算公式如下:
39、mpa=αh+a
40、其中,α被初始化为0,并逐渐学习分配更多的权重,
41、mpa为原本的通道注意力机制,
42、其中,构建通道注意力层的具体步骤为:
43、3.2.1、直接使用a与其转置矩阵at和软最大化函数计算出通道注意力分布图且具体计算公式如下:
44、x=softmax(ata)
45、3.2.2、将x映射到a上,乘以一个可学习参数β,再加上a得出结果,并将结果进行维度变换为且具体变换公式为:
46、eca=β(ax)+a
47、其中,β是一个从0开始学习的参数,
48、eca是加权的所有通道的特征与原始特征的总和,
49、其中,构建通道注意力层和位置注意力层,构成完整的特征提取网络的具体步骤为:
50、3.3.1、将mpa软最大化函数摘除,并将q的行和k的列做软最大化操作,根据矩阵乘法结合律的特点,计算后两项,得到一个c×c的矩阵,再左乘q得到最终结果,具体公式为;
51、epa=αsoftmax(q)·(softmax(kt)·v)+a
52、3.3.2、将eca和epa进行维度变换由n×c重新变为h×w×c,并进行特征融合,具体公式为:
53、fa=fca+fpa;
54、其中,fa是两种注意力机制融合后的结果。
55、前述的基于线性注意力机制的人脸活体检测模型的构建方法,在步骤4中,使用全连接层将进阶特征图映射到目标空间上,使进阶特征图转化为二维向量,具体过程为:
56、将前层网络层提取到的进阶特征图,经非线性变化后,再提取特征之间的关联特征,最后映射到目标特征空间上,使进阶特征图转化为二维向量,自此,人脸活体检测模型构建完毕。
57、前述的基于线性注意力机制的人脸活体检测模型的构建方法,在步骤5中,基于全连接层输出的二维向量结果,利用二元交叉熵损失得到分类结果,并进行反向传播,完成该人脸活体检测模型的网络参数更新;
58、其中,二元交叉熵损失计算公式如下:
59、
60、其中,n为批次大小,
61、yi为该数据对应的标签,
62、p(yi)为网络对该数据的预测结果,是一个概率值。
63、前述的基于线性注意力机制的人脸活体检测模型的构建方法,在步骤6中,使用训练得到的模型参数在未知测试集上进行验证,并用召回率、准确率对该人脸活体检测模型性能进行综合评测;
64、其中,召回率的计算公式如下:
65、
66、其中,tp是预测为正,实际为正的样本数量,
67、tn是预测为负,实际为正的样本数量。
68、与现有技术相比,本发明的有益效果是:
69、本发明通过在经典的点乘注意力机制的基础上,对软最大化函数进行线性优化,即将mpa软最大化函数摘除,对原始的两个因子分别进行各自维度的归一化操作,此外基于矩阵乘法结合律,改变矩阵因子乘法顺序,使得原始复杂度为o(n2)降为o(n),对计算复杂度进行了优化,降低了由于引入双重注意力机制网络而带来的复杂计算,从而构建出一种全新的基于线性注意力机制的人脸活体检测模型,该模型在处理数量庞大的人脸数据集时,人脸识别的精度高,并降低了计算资源的消耗,从而在保持高性能的同时,提高了人脸活体检测的效率,检测速度快、精度高。