APP下载

基于DTW的注意力机制BLSTM在线手写签名认证

2023-07-15王乐乐栾方军师金钢

小型微型计算机系统 2023年7期
关键词:手写注意力特征

王乐乐,栾方军,师金钢,袁 帅

(沈阳建筑大学 信息与控制工程学院,沈阳 110168)

1 引 言

目前计算机网络已走进人们生产生活的各个领域,如何方便快捷、安全可靠地对用户身份进行认证成为亟待解决的问题.手写签名作为一种重要的身份验证手段,近年来得到了广泛和深入的研究.在线签名能够通过用户输入笔迹的图像、压力和时序等信息,捕捉用户的书写习惯以鉴别用户签名的真伪,具有较高的正确性和安全性.因此,深入研究在线手写签名识别方法对身份验证技术的发展具有重要意义.

传统在线手写签名识别方法以签名整体进行认证研究,近年来为了在认证精度上有所突破,许多研究人员进行了签名稳定段研究.Mohammad A.U.Khan[1]等人通过签名的速度函数进行分割,以200个真签名训练确定中速为签名稳定部分,并保留中速部分认证.尽管这种方式在总体上提高了认证精度,但是在部分英文签名用户中存在稳定部分过少的现象,这导致中英文认证差距过大.Yahyataba[2]等人提出保留大于平均速度的笔段作为稳定部分,使用卷积神经网络(CNN)作为分类器改善了问题.然而,仅仅靠速度提取稳定部分导致签名分段过于细碎,这增加了分类的复杂性.随着深度学习的发展,研究人员发现人工神经网络可以访问上下文信息,这在手写签名认证领域产生了巨大的影响.Manfei Liu[3]等人提出深度长短期记忆网络(PS-LSTM)捕获签名信息,在离线手写签名识别领域取得良好的效果,但是在线场景中表现欠佳.陆鑫益[4]等人提出双通道深度神经网络模型,第1通道使用卷积神经网络(CNN),第2通道使用长短期记忆网络(LSTM),对于第1通道识别效果较差的签名输送到第2通道.该方法尽管使得深度学习与手写签名识别的融合效果更加出色,但是由于使用整体签名特征作为模型的输入,导致在训练部分所需要的时间过长.同时,该方法应用于作者自行采集的数据库和其他数据库上时,结果略有差距.综上所述,神经网络应用于手写签名识别领域虽然是可行的,但是外界因素导致的用户的固有签名习惯改变会对签名认证算法的精度造成极大的影响,对算法的具体部署与实际应用也极为不利[4].

针对上述存在的问题,本文提出了基于稳定笔段的注意力机制与BLSTM网络结合的在线手写签名认证方法;采用DTW算法提取稳定度,通过结合注意力机制的BLSTM网络提取稳定笔段集合,实现较高的认证率.最后本文在公开数据集上进行测试,验证了本算法的有效性.

2 基于DTW的稳定笔段提取

签名认证处理的整体模型如图1所示,在签名匹配前,对样本进行平滑和归一化处理,并采用IMP(important points)算法[5]分割签名.

图1 在线手写签名认证流程图Fig.1 Flow chart of online handwritten signature verification

签名时间序列中,通常包含着一些不稳定的干扰因数,如果不对这些干扰因素进行处理会导致识别不能达到预期效果.所以理论上,使用其中的稳定部分会比整体签名具有更高的认证率[6].首先,要明确稳定笔段即一个人在多次签名的过程中都具有较高相似度的部分,即具有相同变化趋势的笔段集合.

为了实现精准的稳定笔段选取,需要对笔段进行匹配;在此基础上,计算笔段稳定度;最后,将稳定信息输入双向长短期记忆网络训练,得到每个用户的稳定签名集合.

2.1 笔段匹配

笔段匹配可描述为:对于模板和测试签名笔段序列,在时序性约束条件下,在所有可能的笔段对应关系序列中,寻找一个使笔段间累计差异值之和最小的笔段对应关系序列,因此笔段匹配存在极大的复杂性.

由于签名经分段后会出现分段点多或漏提取的现象,因此本文采用一种基于迭代的动态规划方法,并将合并规则和跳跃规则引人迭代过程计算累计差异值矩阵D,如式(1)所示.

针对多提取现象,在累计差异值矩阵计算中引人合并规则.如式(1)中[a]-[j]项所示,如果符合某一合并规则,使按该规则得到的对应笔段间差异值小于阈值,则本轮累计差异矩阵的取值由那个使对应笔段差异值与上轮累计差异矩阵取值之和最小的合并规则而定.

(1)

针对漏提取现象,引人跳跃规则,如式(1)中[k]、[l]项所示,其中Dij表示累计差异值矩阵中第i行第j列元素,1

笔段差异度量主要计算采样点各种差异特征的累计加权求和[7].分析发现:1)至少包含大小、位置、方位角以及笔段形态等方面的差异,仅用其中一种特征对差异的描述显然不够全面;2)转折处差异淹没在其他多数平缓的运笔中,使本应有的差异体现不出来;3)采样点特征易受噪声、抖动的干扰.为克服这些问题,本文依据由分段点分得的笔段特征计算差异.

首先计算笔段间的大小差异(D)[7]、位置差异(Dg)[7]、方位角差异(Dα)[7].其次对笔段进行缩放[8]、旋转和平移变换[9],进行形状差异度量(Dt)[7].最后按式(2)对所求的4种差异值进行融合:

(2)

其中,μ、σ分别表示在签名笔迹数据库上某用户计算得到的所有对应笔段间关于大小、位置、方位角和笔段形状差异的均值和方差.

采用式(1)从i=1、j=1开始,迭代计算累计差异值矩阵D,设初值D00=0.最后,从DNN开始,依据被选取的合并规则和跳跃规则,回溯得到笔段对应关系.

2.2 DTW稳定度计算

为了将每个笔段的关键程度具象化,采用DTW算法计算其稳定度.算法通过选取一对匹配笔段,将X坐标、Y坐标、X方向速度、Y方向速度、压力5个特征作为输入,使用DTW[10]算法进行计算.

给定一个用来表示签名笔段的特征序列(例如,签名的X和Y坐标),由DTW产生的耦合序列表示两个特征序列之间的最优对齐.耦合序列中的直接匹配样本(DMS)代表了两个输入签名段之间没有明显失真的片段[11].因此,可以利用从耦合序列中提取的DMSs来得到表示两个签名段之间相似度的权重向量[12].为了获取签名的不变性,在每对用户的真实签名之间重复上述比较,在签名池中对所有的权向量进行平均,提取出一组真实签名之间具有较高相似性的关键段.

图2 稳定度算法流程图Fig.2 Stability algorithm flow chart

(3)

(4)

选取训练样本中的14个真签名采用式(5)计算,取均值得到笔段最终的稳定度.

(5)

3 基于注意力机制的BLSTM改进

计算每段签名的稳定度的目的是得到该用户的稳定笔段集合stable_s=(seg1:sta1,seg2:sta2,…,segj:staj).jminsta,即一定稳定度以上的笔段集合.为了得到阈值minsta,本文使用BLSTM网络来得到每个点的注意力权重.每次输入一对匹配笔段且输入特征为x、y、p,对该段上所有点的注意力权重求平均值,从而得到每段的权重;根据经验选取权重0.6以上的笔段集合,得到集合中最低稳定度的笔段,设定其为minsta.如图3所示,最终实现稳定段集合筛选的目的.

图3 稳定笔段集合提取结果示例Fig.3 An example of the extraction result of a stable set of segments

3.1 双向长短期记忆网络(Bidirectional LSTM)

传统的前馈神经网路(RNN)具有极深的深度,存在梯度消失和爆炸问题,阻碍了RNN在序列数据中学习长期上下文信息[13].长短期记忆网络(long-short memory,LSTM)是RNN的延伸,它可以抵抗消失梯度问题,并可以学习长期依赖性[14].LSTM的核心是一个存储单元c,有3个门,即输入门(i),遗忘门(f)和输出门(o).

输入门控制数据的输入,遗忘门决定是否记住过去的内存动态,输出门允许信息流出单元.形式上,LSTM的底层机制可以表示为:

ft=σ(Wfxt+Ufht-1+bf)

(6)

it=σ(Wixt+Uiht-1+bi)

(7)

ot=σ(Woxt+Uoht-1+bo)

(8)

(9)

(10)

ht=ot⊙tanh(Ct)

(11)

双向长短期记忆网络(BLSTM)将正向(从左到右)和反向(从右到左)LSTM层结合起来,保留上下文的双向信息[15].

(12)

利用反向传播算法最小化负对数似然损失,可以有效地训练整个模型.

3.2 注意力机制

注意力机制可以被描述为一个查询向量(Query)与一系列键值对(Key-Value)之间的函数映射关系,如图4所示[16].注意力机制的执行主要分为3步.首先将签名段序列Query和Key进行相似度的计算,常见的相似度计算方式有点积、拼接以及感知机等方式,如式(13)所示:

(13)

图4 Query和Key-Value的的映射关系Fig.4 Mapping relationship between Query and Key-Value

其中Q为查询向量矩阵,K为键向量矩阵,V为值向量矩阵,每个输入向量向量都是通过对原始输入向量(笔段的三维特征序列)进行线性变换得到.W与U为可学习的权重矩阵.

其次将上一步计算得到的结果使用Softmax函数进行权重的归一化,得到的即是模型对各个Value的注意力权重,如式(14)所示:

(14)

最后将得到的权重值与Value进行加权求和得到最终的经过注意力机制调整的结果,如式(15)所示:

(15)

注意力机制的特点是Query,Key和Value均相同,目标是通过序列自身的特性来挖掘序列内部各个时刻点之间的相互联系,捕获序列内部的结构特征.本文使用了一种按比例调整的点积自注意力模型,如式(16)所示:

(16)

其中,Q、K、V与上文含义相同,dk为输入信息的维度.

3.3 模型配置

将注意力机制模块加入BLSTM模型,通过输入匹配笔段提取时序特征,实现筛选稳定集合的目的,模型配置如图5所示.

图5 注意力机制-BLSTMFig.5 Attention-BLSTM

本文初始化BLSTM中所有的权重矩阵(W*和U*),并使用从标准差0.01的零均值高斯分布中抽取的随机值进行逻辑回归.除了LSTM中的遗忘门之外,所有的偏差项都初始化为零.根据文献经验建议,将遗忘门偏置设为一个较大的值5.这样做的目的是确保的遗忘门初始化接近1(这意味着没有遗忘),并且可以在训练的开始就可以更好地进行长期依赖学习.BLSTM的单元格和隐藏状态初始化为零.本文使用基于低阶矩的自适应估计的一阶梯度方法Adam进行优化.

4 特征计算及分类器

提取稳定笔段集合stable_s=(seg1,seg2,…,segj)后,将集合内的所有点看作整体,计算全局特征,输入到全连接网络分类器实现分类的目的.

本文提出的在线签名认证系统是基于时间函数的.对于每个采集到的签名,使用与X和Y坐标和压力相关的信号来提取22个特征值.所有时间函数均包含在表1中.最终每个签名可以表示为包含22个特征的一维数组s=(feature1(stable_s),…,featuret(stable_s)),t=22.

表1 特征列举表Table 1 Feature list

将特征输入到全连接网络分类器,输入层22个神经元隐藏层3个分别是256、256、128个神经元,输出层是一个神经元(对应每个签名输出的概率结果).输出层的激活函数是Sigmoid(也就是分类层).得到0~1之间的输出结果.阈值设定为0.5,即结果>0.5判定为真签名,否则为假签名.

5 实验分析

5.1 实验数据集

使用SVC2004数据库进行实验.数据库包含40个用户,每个用户包含40个签名,其中20个真实签名和20个熟练伪造签名.其中每个用户的14个真签名和14个假签名用于训练,其余签名用于测试.并且在训练签名中的真签名用于在BLSTM网络中训练得到稳定笔段.训练方式采用单个签名随机输入的方式,即分类算法.通过学习真实签名与伪造签名的特征实现分类的目的.

5.2 实验结果分析

通过对40个用户的训练并生成适用于用户的模型,最终的测试结果达到了97.08%的准确率.其中多数用户的认证达到了完全准确,只有8个用户存在误拒和误识的情况.其中,一个用户的等误率为EER=10.71%,3个用户的等误率为EER=7.14%,4个用户的等误率为EER=3.57%,具体的误识签名个数如表2所示.

表2 误识用户结果Table 2 Misrecognize the user result

另外,本文还进行了多项对比试验来体现该方法的合理性.在选取稳定笔段的网络部分,从两个维度进行了对比实验.

改变输入的签名特征维数,将X、Y、P三维特征缩减到X、Y二维特征.如表3所示,当系统仅使用原始序列数据X和Y作为输入时,签名识别率为92.62%,存在个别用户识别率过低现象.当使用X、Y、P三特征时,系统的识别率会大大提高,有效改善单个用户识别效果,更具有实际应用性.

表3 不同输入特征选取稳定签名集合Table 3 Different input features select stable signature sets

考虑到训练成本与训练迭代次数,对比了两者不同的基于RNN的系统,即长短期记忆网络(LSTM)和其双向方案(即BLSTM).图6中两个RNN系统都包含一条垂直线,表

图6 LSTM和BLSTM 的对比Fig.6 Comparison of LSTM and BLSTM

示在评估数据集上提供最佳系统性能的训练迭代情况.从该图形的两个方面进行分析.首先,普通方案(即LSTM)与双向方案(即BLSTM)之间所需训练迭代次数的差异.例如,最好的LSTM配置是在140次训练迭代后得到的,而BLSTM系统只需要50次左右的迭代.这表明了同时考虑过去和未来情境的重要性,以便更快地训练,并降低训练成本.此外,BLSTM内存块训练参数的数量较低,因此,选择训练效果更好,且迭代次数更少的BLSTM系统.

综上所述,BLSTM可以综合签名在序列数据学习中的优点,提高识别率.

除了在模型上进行对比以外,还对比了在同样的分类系统下,使用整体签名和提取稳定集合认证的情况.由图7所示,点集部分为用户签名整体验证的结果,可见大多数用户具有良好的验证效果,但个别用户的验证结果存在剧烈抖动,最低用户验证率至66.7%.相对比而言,使用稳定笔段验证方法使用户验证精度明显提高,抖动现象明显改善,说明稳定笔段集合提取了签名中相对稳定的信息.

图7 整体认证和取稳定部分认证的对比Fig.7 Comparison of overall certification and stable partial certification

本文进行了不同特征数量的分类实验,结果如图8所示,当采用本文选取的22个特征时等误率最小,特征增加时误拒率会增高,特征减少时误识率会增加.实验说明特征选取会对最终的分类效率造成影响,同时验证了本文分类方法的有效性.

图8 选取不同特征认证结果对比Fig.8 Comparison of selecting different features to verify

表4给出了不同方法在SCV2004数据库上的实验结果.所有方法都在相同级别进行比较,并在相同的数据库上进行评估.前两种方法都是基于整体签名提取的特征,而第3种和第4种方法采用部分笔段进行认证.本文没有重新实现这4种方法,它们的准确性可以在文献中找到.据图表显示,本文方法实现了较高的性能,即97.08%的准确率及1.16的等误率.从认证方式上分析,本文方法相较前两种的准确率分别提高了4.53%、2.74%;这说明使用稳定笔段集合分类效果更优,仅仅对签名整体的特征提取方式进行改进虽然有助于提高分类结果,但提升有限.从认证模型上分析,CNN关注的是签名作为图像的局部特征,对于签名点之间的依赖特征没有把握.BLSTM与RNN、LSTM相比在高效学习正向时序特征的同时也会进行反向学习,同时本文在此基础上增加了注意力机制,充分发挥出BLSTM在序列中获取信息的能力.因此,本文方法明显优于其他比较方法.

表4 本文方法于其他方法的对比Table 4 Comparison of the method in this article with others

6 结 论

本文提出一种新的在线签名认证方法,即基于双向长短期记忆(BLSTM)递归神经网络实现提取稳定笔段认证.该方法第一次将签名分段与BLSTM网络相结合,并论证了其在签名识别问题中的重要意义.在本文实验中,评估了不同的变量提取以及应用不同网络对签名认证的影响,BLSTM网络可以提高认证并将等误率降低到1.16.这表明稳定笔段提取与BLSTM网络结合的杰出能力.此外,系统现在只专注基于用户的识别.如何将该方法应用于实现独立于用户的签名识别,值得在今后的工作中进一步研究.

猜你喜欢

手写注意力特征
让注意力“飞”回来
我手写我心
抓住身边事吾手写吾心
如何表达“特征”
不忠诚的四个特征
基于集成学习的MINIST手写数字识别
抓住特征巧观察
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
深度学习在手写汉字识别中的应用综述