注意力机制在活体检测中的应用

1、注意力机制

意力模型(Attention Model)被广泛使用在自然语言处理、图像识别及语音识别等各种不同类型的深度学习任务中。注意力机制的概念来源于人体的视觉观察系统,针对一幅图像,大脑很快速的判断出与目标相关的感兴趣的区域(ROI),并将大量的注意力资源集中在区域,而抑制其他无关的信息。

2、encoder-decoder 模式
在这里插入图片描述图1抽象的文本处理领域的Encoder-Decoder框架

注意力机制是一种通用算法,并不依赖于特定的框架。深度学习领域的注意力模型大多基于encode-decoder模式。

图中的模式可以理解为由一个句子生成另一个句子的通用模型。

对于句子对,我们期待source通过encoder-decoder模型,可以生成target。source和target分别由单词序列组成。
在这里插入图片描述
encoder对输入进行非线性变换,转化为中间语义,得到C
在这里插入图片描述

decoder根据中间语义C和历史输出y1,…,yi-1来得到y时刻要得到的单词yi
在这里插入图片描述

每个yi都依次这么产生,那么看起来就是整个系统根据输入句子Source生成了目标句子Target.

基于不同的source和target的decoder-encoder框架,可以得到不同的任务系统。
在这里插入图片描述
3、attention模型

接下来介绍最近广为使用的Self Attention的基本思路。

Soft Attention模型

图1中的decoder-encoder模式并没有体现出“注意力模型”,可看做分心模型,即在生成目标句子的单词时,不论生成哪个单词,它们使用的输入句子Source的语义编码C都是一样的,没有任何区别。这类似于人类看到眼前的画面,但是眼中却没有注意焦点一样。
在这里插入图片描述
比如输入的是英文句子:Tom chase Jerry,Encoder-Decoder框架逐步生成中文单词:“汤姆”,“追逐”,“杰瑞”。

翻译“杰瑞”这个中文单词的时候,分心模型里面的每个英文单词对于翻译目标单词“杰瑞”贡献是相同的,很明显这里不太合理,显然“Jerry”对于翻译成“杰瑞”更重要。

果引入Attention模型的话,应该在翻译“杰瑞”的时候,体现出英文单词对于翻译当前中文单词不同的影响程度,比如给出类似下面一个概率分布值:
Tom,0.3)(Chase,0.2) (Jerry,0.5)

个英文单词的概率代表了翻译当前单词“杰瑞”时,注意力分配模型分配给不同英文单词的注意力大小。

在这里插入图片描述图2引入了attention模型的encoder-decoder模式

生成目标句子单词的过程,也就变成了下面的形式

target中的每个单词对于source中每个单词的概率(Tom,0.3)(Chase,0.2) (Jerry,0.5)是如何获取的呢?

我们对图2中的模型进行细化,decoder和encoder都采用常见的rnn的模型配置,则得到图3的结构
在这里插入图片描述图3注意力分配概率计算

对于采用rnn的decoder来说,在时刻i,要生成单词yi,我们已知i-1时刻的隐含节点状态Hi-1,所以可以将Hi-1与source中的每个rnn隐含节点对应的状态进行对比,即通过F(hi,Hi-1)来获得输出单词yi和每个输入单词的相似性,之后再采用softmax函数对这些相似性值进行归一化。

觉注意力机制的本质是获取输出的每个单词对source中每个单词的权重,输出的每个单词是对每个输入单词进行加权求和的结果。

4、视觉注意力机制在活体检测中的应用

应用于文本和语音的注意力机制的encoder和decoder一般采用RNN模型,而应用于视觉注意力机制,获取图像中感兴趣区域的注意力机制的encoder和decoder一般采用CNN模型。

在分辨活体和假体时,所关注的感兴趣区域是不同的。因此可以采用视觉注意力机制,自动地获取在进行活体和假体分类时对分类效果影响最显著的感兴趣区域。

如,论文《Face Anti-Spoofing: Model Matters, So Does Data 》中引入RAM(region attention mechanism)模块获取到输入图像中的感兴趣区域。

具体实现过程为,采用resnet网络作为encoder,获取res_conv5_block的特征作为编码,通过采用77的深度卷积来获取编码中的空间相关信息,且其参数量仅为传统卷积的1/C(C为通道的数目),再采用11的卷积获得2k个参数的输出,该参数记录了ROI相对于anchor框的偏移。输入M帧图像时,可获得MK2的输出,最后才原始图像上采样可以获取到MK个感兴趣区域。

在网络训练时,为了解决因采用图像中获取的区域的中心点作为anchor位置而导致的网络训练不收敛的问题,作者采用了Grad-Gram 算法对位置进行初始化,得到粗略的定位,再由RAM将这些粗略的定位作为初始初值,进一步精调后得到准确的感兴趣区域的位置。

在获取感兴趣区域后,基于这些感兴趣区域进行再进行后续的活体和假体的分类任务。
在这里插入图片描述由实验结果可看出,真脸的感兴趣区域集中于脸部中心,而假脸的感兴趣区域分散且集中于边缘,这些由视觉注意力机制获取的显著性区域可有效提升真脸和假脸的分类性能。

在这里插入图片描述

备注:

点击下面链接,进入奥比中光开发者社区,了解更多3D视觉技术信息:
https://developer.orbbec.com.cn/

或扫描下方二维码,进入奥比中光开发者社区:
在这里插入图片描述