注意力机制的唇动序列数字验证码识别方法

2021-04-11 14:56广东工业大学自动化学院冯省城
电子世界 2021年6期
关键词:唇语注意力维度

广东工业大学自动化学院 冯省城

当前的人脸识别算法发展迅速,已经能够以极高准确率进行人脸验证。但是使用照片也可以有效地通过人脸验证,所以还需要进行人脸活体检测进行验证是否为真人。我们可以让人说出所提供的数字验证码,通过唇动序列识别出所说的数字验证码,然后进行正确性的验证,进而进行活体检测。基于CNN+LSTM+CTC的传统方法对于数据量小的数据集会出现难以收敛,并且准确率不高。本文使用注意力机制对不同位的数字进行分别的分类,这样就把多分类简化为一个10分类问题。实验表明,本文提出的基于CNN+GRU+ATTENTION的方法,对于小数据量的数据集能够更好的收敛,并且有更高的准确率。

唇语识别技术能通过唇动视频序列来理解人说话内容的一种技术。当处于噪声环境之下时,语音识别的准确率会有很大的下降,唇动序列能够帮助我们理解人的说话内容。所以唇语识别技术结合基于声学模型的语音识别技术,能够解决噪声的问题。同时对于人脸活体检测的问题,我们也能够通过人脸识别技术和唇语识别技术相结合来解决。人脸识别技术用于识别进行视频中人的身份认证,唇语识别技术用于进行视频中人的真实性验证,所以一个高效并且高精度的唇语识别算法是至关重要的。

最先进的单个词汇唇语识别方法由一个3D卷积层,接着是一个18层残差网络(ResNet),一个双向门控复发单元(BGRU)网络和一个softmax层。它在LRW和LRW1000数据集实现了最好的性能。而我们的数字验证码唇语识别是无法使用这种方法进行识别的,需要使用基于句子级别的唇语识别,但是句子级别的唇语识别模型因为需要强大的前后语意,需要较为庞大模型参数,对于数字验证码识别唇语识别的应用场景,我们需要一个模型更加小的方法。其中基于CNN+LSTM+CTC的方法是一种可行方法,但是基于数字验证码是固定的特性,本文设计出一种基于注意力机制的唇动序列数字验证码识别方法,有更好的精度和效率。

1 注意力机制模块

注意力机制是一种模仿人类视觉机制的方法,在人类根据所看到的图像里,快速扫描全局图像,然后会根据自己的重点选择性关注对自己有用的信息,忽略其他无用的信息。也就是说注意力机制就是对某一区域给与更大的关注,从而获得关键点更多有用的信息,抑制其他区域无用的信息。从人类进化角度来说,这使得人类极大的提高了视觉处理上的高效性和准确性。注意力机制已经成功的运用在许多领域,如自然语言处理,计算机视觉等。那么在网络中,注意力机制本质上关注的是什么呢。注意力机制我们分为通道注意力机制和空间注意力机制。通道注意力机制是通过对卷积的特征维度通道进行一个权重的计算,因为特征维度通道代表的是各个特征的信息,所以通道注意力机制是筛选出对于结果有用的特征通道,忽略其他无用的特征通道。空间注意力机制顾名思义就是关注空间中重要的信息,忽略空间中无用的信息。两种注意力机制没有本质的区别,只是关注的维度不同而已。这里我们根据我们的唇动序列提出一个注意力机制网络,用于关注唇动序列中哪些序列属于有用信息,哪些序列属于无用信息。如图1所示,输入为经过卷积提取的图像序列特征,维度为N×C,通过两个全连接层FC提取出权重信息,维度为N×1,然后把这个权重信息和输入相乘,从而调整N这个维度的注意重点。因为N这个维度是唇动序列维度,也就是通过注意力机制提取出相对有用的唇动序列信息。

图1 注意力模块结构图

2 基于注意力机制的唇动序列数字验证码识别方法

在基于CNN+LSTM+CTC的传统方法中,我们使用CNN卷积网络对每一帧嘴唇图像进行空间特征的提取,然后使用LSTM循环神经网络提取唇动序列之间的时间信息特征,最后用CTC-Loss对每一帧回归到每一个数字标签,从而实现唇动序列数字验证码的识别。本文在此方法的基础上提出了基于注意力机制的唇动序列数字验证码识别方法。首先,我们仍然使用一样的空间和时间的特征提取网络进行唇动序列的空间时间特征的提取,然后我们使用多个注意力机制模块,对提取出来的特征进行不同帧间的权重改变,使得不同位数的验证码注意力集中在其对应的图像帧上,同时使用损失函数回归每一个数字验证码位,从而实现唇动序列数字验证码识别。

网络基本框架如图2所示,我们使用resnet18作为图像特征的提取,因为嘴唇特征相对简单,所以我们使用层数相对较浅的特征提取网络就能够满足性能要求。使用GRU循环神经网络进行时序特征的提取,GRU相对于LSTM,更加容易收敛,不容易过拟合。我们假设我们的验证码位数是4位,所以使用了四个注意力模块,让不同位置的验证码关注不同的视频帧,从而实现4个位验证码的分类。同时我们使用arcloss损失函数替代一般的交叉熵损失函数,使得不同类的特征间距更加的大,最终获得四位数字验证码结果。

图2 网络框架

通常训练的模型往往会过度拟合数据集场景,目标词总是在其中心位置。在这种有偏差的环境下训练的模型可以记住这些偏差,并对输入的微小变化变得敏感。例如,简单地从输入序列中删除一个随机帧会导致性能显著下降。所以为了避免这种数据集的偏差,我们提出了一种方法,即对每个输入训练序列在目标词边界之前和之后的一个随机点进行随机裁剪。虽然这种变化不会直接改善现有的基准,但我们认为它产生了更健壮的模型。

3 实验结果与分析

本文是基于数字验证码来做唇语识别的实验,并且在实际应用中是可以通过手机摄像头获得清晰的唇动序列,所以综合考虑下,使用OuluVs2数据集作为本文的实验数据集。OuluVs2数据集具有多个视角的唇动序列,并且也有关于数字验证码的相关唇动序列样本,所以我们使用该数据集的正面视角中的数字验证码部分作为实验数据。该数据集是在实验室环境下采集,样本中总共有52个人,每个人说出30个不同的数字验证码,总共有1560个样本,通过随机分配成1400个训练集,160个作为测试集。

我们使用相同的数据集对不同的算法进行性能测试,一种是基于CNN+LSTM+CTC的传统方法,一种是我们提出的基于CNN+GRU+Attention的方法。使用的评测指标为精确度,其中对于一个样本所有数字验证码的位数都对就认为是正确的,有一个数字识别错误了就认为是错误的。

表1 实验结果

实验结果如表1所示,在同样的实验设置下,本文方法在精确度上比传统方法提高了5个百分点的精度。可以看出,我们的方法具有一定的优越性。

猜你喜欢
唇语注意力维度
理解“第三次理论飞跃”的三个维度
让注意力“飞”回来
浅论诗中“史”识的四个维度
碰撞:“唇语”应对媒体vs志愿者自责哭泣
唇语
亲情助力,90后“唇语女博士”名震清华
搜狗推出“唇语识别”技术
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
光的维度