本文主要是介绍基于部分注意力的人脸识别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ATTENTION-BASED PARTIAL FACE RECOGNITION
创新点
通过将ResNet的中间特征图的注意力池与单独的聚合模块相结合。
网络模型
分为三个模块:提取、注意力和聚合。提取模块从输入图像中提取特征图F ∈ R20×20×1024和注意图A ∈ R20×20×K,K表示注意图的个数。在Attend模块中,使用重新校准的注意力图将特征图汇集成K个中间特征向量。聚合模块将这些中间特征向量映射到一个联合特征空间,在该空间中得到最终的特征向量f ∈ R256。
1.提取
利用截断的ResNet-50架构,该架构在第四个块之后结束。因此,只执行了三次空间下采样,并获得了大小为20×20的特征图,其中区域仍然可以很好地区分。与ResNet-50架构不同,在第三个块之后分离ResNet,以允许两个分支专注于各自的任务。虽然在第四个ResNet块之后直接获得F,但添加了一个额外的1 × 1卷积与ReLU激活函数以获得A。
生成的注意力地图应该满足以下两个关键属性:
1)注意力地图应该是互斥的,即,不同的注意力图聚焦于人脸图像的不同区域;
2)注意力地图的激活应该与其各自区域的可见性相关。值得注意的是,隐式定义的注意力地图激活不一定遵循与人类定义的面部标志(例如眼睛或鼻子)相同的直觉。
2.注意力
注意力图A需要重新校准,基于集合的FR的注意力池,分别对集合内的所有图像进行归一化A,从而确保从A中具有最大激活的图像中提取相应的信息。然而,对于部分FR,只考虑单个图像,并期望不同的注意力图根据面部的区域而相关,即,如果眼睛被遮挡,则相应的注意力图应该包含低激活。因此,使用无参数重新校准:
首先,我们通过应用sigmoid函数fnorm(·)= sigmoid(·)来规范化A。通过这种方式,每个注意力图中的每个像素都被分别归一化为(0; 1)。此外,通过应用全局平均池(GAP)和fex(·)= softmax(·)来计算表示每个注意力图重要性的向量s ∈ RK:
其中索引i、j和k表示第k个注意力图的第i行和第j列中的像素。
通过结合GAP,获得了所有注意力地图的全局信息,并使用softmax函数将其转换为表示各个注意力地图重要性的概率分布。接下来,将第k个自归一化注意力图Ak与其相应的重要性sk相乘,以获得最终的重新校准的注意力图Ak:
因此,将每个注意力图中的联合局部信息与整个注意力图中的全局信息结合在一起。
应用注意力池,以获得K个特征描述符vk ∈ R1024:
以这种方式,第k个特征描述符包含在相应的注意力图Ak的激活时的F的信息。
3.聚合
由于所有特征描述符vk取决于它们对应的注意力图Ak而集中在F内的不同区域上,直接聚合是不可能的。因此,分别利用单个全连通层将每个vk映射到联合特征空间fk ∈ R256。注意,由于每个vk都在不同的特征空间中,因此权重不被共享。由于fk同样编码身份信息,因此计算均值以获得最终特征向量f ∈ R256:
这篇关于基于部分注意力的人脸识别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!