吴纪芸
摘要:传统自动柜员机(ATM)监控系统以摄像为主,不能及时检测用户身份是否异常.提出一种基于行为特征的ATM机用户身份实时识别方法,采集用户输入密码时的触屏行为特征数据,通过SVM分类算法判断该用户行为是否属于合法用户。该方法不仅要求用户输入的账户密码正确,还要求该用户的行为特征与预设定的合法用户行为特征一致。实验结果表明,通过数据顸处理和SVM分类算法参数优化后的ATM机用户身份识别系统识别精确度达到97.9769%,比没通过数据预处理和SVM分类算法参数优化后的识别精确度高出4.5769%。
关键词:ATM机;身份实时识别;行为特征;数据预处理;参数优化
DOI:10.11907/rjdk.191059开放科学(资源服务)标识码(OSID):
中图分类号:TP301文献标识码:A 文章编号:1672-7800(2019)010-0045-05
0引言
自动柜员机(ATM)是各银行必不可少的存取款智能设备,其不仅方便用户使用,而且极大程度地减轻了银行工作人员负担,但其安全隐患也越来越严重,如一些不法分子通过在ATM机的隐蔽位置偷装针孔摄像机窃取用户的账户密码等。
ATM机主要通过摄像机监控,但当用户的卡片信息被盗后,偷盗者就能通过ATM取款机将钱财取走,等监控者判定该人员为偷盗者或警察到来前,偷盗者早已逃之夭夭。因此,实时、准确地识别ATM机用户身份对于降低安全隐患具有十分重要的意义。
近年基于生物特征的行为识别成为热门研究领域,并成功应用于娱乐、医疗、教育等行业。生物特征包括生理特征和行為特征。生理特征指人体的静态特征,如虹膜、指纹、手掌几何特征、脸部特征甚至DNA,而行为特征则是人体活动时产生的特征,如运动轨迹、运动强度、触摸力度等。
文献研究如何利用生理特征识别手机用户身份。在文献中,作者将声音、人脸、签名等多种生理特征用作智能手机的身份认证。利用生物特征进行身份认证较易受环境影响,很大程度上降低了系统准确度和可靠性,如人脸识别容易受到视觉角度和光线强弱影响,语音识别容易受到周边噪音干扰等。研究表明人脸识别具有较高的错误率,大约为28%;声音和签名的错误率也高达15%和18%。生理特征不仅容易受外界环境干扰,还容易被模仿和复制,而且认证成本较高,很难应用于人体行为识别系统。
基于行为特征的行为识别技术是一种相对生理特征而言性能更稳定、成本更低的新兴技术,该技术只需通过可穿戴设备中的传感器便可采集到行为特征,通过分析特征类别便可识别出行为属性。这里所说的可穿戴设备指将相关传感器放置于动物或人体上,通过传感器获取实验需要的数据,通过数据采集达到人机交互。最后根据数据分析,判别该用户或行为是否在预设的行为范围之内,从而判定是否合法。
传统自动柜员机(ATM)监控系统以摄像为主,不能快速有效地检测出用户身份是否异常。本文提出一种基于行为特征的ATM机用户身份实时识别方法,采集用户输密码时的触屏行为特征数据,通过SVM分类算法判断该用户行为是否属于合法用户。该方法不仅要求用户输入的账户密码正确,还要求其行为特征与预设定的合法用户行为特征一致,极大提高了安全性能。相对于生物特征识别而言,基于行为特征的识别技术是一种性能较稳定、成本较低的新兴技术,只需要通过ATM机输码屏幕的内置传感器采集用户在输入账户密码时的触屏行为特征,以此判断该用户是否为合法用户。当且仅当判断结果为合法用户并且输入密码正确时才能进入业务界面。该身份识别方法要求用户输码的设备为电子屏幕而并非现阶段较为常见的金属密码键盘。
1用户身份识别系统
1.1传感数据获取
通过ATM机输码设备的内置传感器可采集到人体活动时的行为样本数据,本文使用的ATM机输码设备一般为电子输码屏幕,可内置丰富的传感器,包括加速度传感器、重力传感器、压力传感器、陀螺仪、光线传感器等,当人的手指在ATM机输码屏幕上输入取款密码时,内置传感器就能实时采集触屏运动的行为特征,无需额外硬件设备支持。
1.2ATM机用户身份识别流程
基于ATM机的用户身份实时识别过程包括训练和识别两个阶段。
在训练阶段,预先采集已知用户的行为数据,包括用户名、密码、触摸力度、触摸速度等,对采集到的数据特征进行预处理,然后用预处理数据训练分类器,并通过优化分类算法进一步提高分类精确性;
在识别阶段,将采集未知用户的行为数据,在核对用户名和密码正确的基础上,通过训练好的分类器对采集到的用户行为数据进行分类,判断用户行为是否合法。其中,未知身份的用户行为数据也需经过行为特征提取和数据预处理过程。图1为身份实时识别系统工作流程。
1.3行为特征提取
触屏操作动作通常可分解为手指按下屏幕阶段、手指在屏幕上静止停留阶段和手指离开屏幕阶段,本文将这3个阶段用Key-Down、Key-Hold和Key-Up表示。
对每次触屏操作提取触屏力度、触屏面积、触屏时间和触屏加速度这4种行为特征。虽然不同用户的行为特征都不相同,但每个用户自身的多次行为特征却具有相似性和持续性。
图2展示了ATM机输码屏幕的三维坐标图,与屏幕较短边平行的轴设为x轴,正方向向右;与屏幕较长边平行的轴设为y轴,正方向向上;与屏幕平面垂直的轴设为z轴,正方向指向屏幕上方。的触屏加速度。
(1)触屏面积。触屏面积大小范围限制在0-1之间。提取每次触屏操作的3个触屏面积子特征:①Z1:处于Key-Down阶段的触屏面积;②Z2:处于Key-Hold阶段的触屏面积;③Z3:处于Key-Up阶段的触屏面积。
(2)触屏力度。触屏力度大小范围在0-1之间,0表示电子屏幕感受不到任何压力,1表示电子屏幕所能承受的最大压力。提取每次触屏操作的3个触屏力度子特征:①Z4:处于Key-Down阶段的触屏力度;②Z5:处于Key-Hold阶段的触屏力度;③Z6:处于Key-Up阶段的触屏力度。
(4)触屏时间。触屏时间包括触屏过程时间和上一触屏操作结束到下一触屏操作开始之间的间隔时间。不同用户的触屏时间不尽相同,而同一用户的多次触屏时间差异较小。
提取每次触屏操作的4个触屏时间子特征:①Z10:处于Key-Down阶段的触屏时间;②Z11:处于Key-Hold阶段的触屏时间;③Z12:处于Key-Up阶段的触屏时间;④Z13:处于上一个Key-Up阶段结束至下一个Key-Down阶段开始的间隔时间。
用户每次触屏,ATM机电子屏幕内置传感器将收集到13维行为特征。对于6位密码而言,输完第6位密码将点击确认按钮,但不采集该确认按钮的任何触屏行为特征,只记录第6位密码Key-Up阶段结束至确认按钮Key-Down开始之间的间隔时间。6位密码的触屏操作可采集到78维行为特征。
1.4数据预处理
对各组行为特征数据进行预处理,预处理操作包括异常值移除处理和归一化处理。
异常值移除处理指在成千上万的数据中移除个别异常样本数据。由于数据中存在各式各样的“脏数据”,也称为“离群点”,即因为采集操作不当等人为因素产生偏差较大的数据,这些少数离群数据往往导致整体特征偏移,所以为了保证数据整体特征的有效性,要移除这些异常样本数据。
归一化思想是事先根据实际情况定义每一维度范围,如正常的触摸屏幕压力值,将其定义在0-1。减少甚至去除异常样本影响,使训练加速、实验数据更加准确。所谓异常样本数据指相对于正常数据过大或过小的特征矢量,如触屏加速度的特征数据达到两位数之大,而触屏压力值只局限在0-1之间,触屏压力特征将会被触屏加速度特征掩盖,那么这两种样本数据则相互称为奇异样本数据。通过归一化处理,不仅可以方便后续数据处理,还能加快程序收敛速度,避免奇异样本数据所代表的特征被掩盖。
1.5分类算法及参数优化
本文研究目的是判断输密码的用户是否为合法用户,因此只需將N类分类问题转化为两类分类方法问题:第一类是由合法用户输入密码时采集的行为特征数据,标记为+1,第二类是由非法用户输入密码时采集的行为特征数据,标记为-1。本文使用SVM训练模型,通过训练找到这两类训练样本的超平面,其中SVM通过径向基(RBF)核函数实现径向基函数神经网络功能。为了提高SVM的识别精确度,需要找到最优的惩罚因子c和核函数参数g。
不同类型的参数组合会影响实验的准确性。为提高实验的准确性,本文运用多参数网格搜索法(Muhi-parame-tcl estimation of waterquality model by network search meth-od)选择SVM参数。多参数网格搜索法是在参数c和g的可行区间上将其划分为一系列小区,即c∈[c1,c2],g∈[g1,g2],依次对每对参数(c,g)进行训练,最后取实验效果最优的一对参数作为该模型参数。
2实验分析
2.1模拟应用程序
为模拟真实ATM机输密码过程,本文将智能手机屏幕虚拟成ATM机输码屏幕,通过手机的内置传感器采集用户在触屏时的行为特征数据,而后通过分析数据判断该用户身份是否合法。为实现这个目标,本文设计一个基于安卓系统的模拟应用程序KeyRecorder用于采集、存储和分析用户的行为特征数据,其密码输入界面如图3所示,该应用程序的采样频率大约为100Hz。
2.2样本数据采集
采集50位年龄平均分布于各个阶段的志愿者数据。由于本文的最终目的是检测基于行为特征的身份识别系统是否能加强ATM机的安全性能,因此不考虑账户密码输入不正确的情况。实验开始前让志愿者牢记统一设置的账户密码,并且能熟练使用设备。
从50位志愿者中随机挑选10位作为A组,该组志愿者为合法用户,要求A组志愿者每天在3个不同的时间段进行输密码操作,持续20天实验后从每个A组志愿者中收集到60组数据。将A组志愿者的60组数据平均分成两个部分,第一部分用于训练分类器,第二部分用于测试阶段。因为在现实情况中无法预先获取非法用户的行为样本,因此测试阶段和训练阶段的非法用户应来自不同群体。将其余40位志愿者随机挑选20位作为训练阶段的非法用户(B组),其余20位作为测试阶段的非法用户(C组)。同样要求B组和C组的志愿者每天在3个不同时间段进行输密码操作,持续20天实验后可从每个志愿者收集到60组数据。
2.3数据预处理
数据预处理工作包括异常值移除处理和归一化处理。
(1)异常值移除处理。本文利用盒图(boxplot)的最小观测点和最大观测点判定数据是否离群,即在最大观测点和最小观测点区间以外的数据都认为是离群,若离群则定义为异常值。如图4所示,盒图由5个部分组成,分别为最大值(max)、上四分位数(Q3)、下四分位数(Q1)、中位数(median)和最小值(min),其中max=Q3+1.5x(Q3-Q1),min=Q1-1.5x(Q3-Q1)。若一个数据大于最大值或小于最小值,就将它视为异常数据。图5为触屏力度传感器采集到的3维数据特征,从图中可很直观地看到“+”点即离群点.
(2)归一化处理数据,使算法收敛。本实验借助MAT-LAB使用其中的premnmx函数实现归一化处理,使数据分布在[-1,1]之间。图6(a)和图6(b)为触屏力度F4-F6特征数据归一化前后的对比图。其中,“*”和“o”分别表示合法用户和非法用户的触屏力度特征数据样本。从图中可以看出,经过归一化处理的数据都被限制在[-l,1]之间,数据特征仍然保留。
2.4身份识别系统性能评估
(1)性能评估标准。通过训练好的分类器判断用户身份是否合法,其考核指标为身份识别精确度,精确度可通过Accuracy衡量。Accuracy是衡量系统正确率的总体情况,其中正确率包括正确接受率(True Acceptance Rate,TAR)和正确拒绝率(True Rejection Rate,TRR),一般0≤Accuracy≤1,当Accuracy=1时系统性能完美。
(2)数据预处理、SVM分类参数优化前后性能对比。由于惩罚因子和核函数参数对于SVM性能影响很大,所以本文运用多参数网格搜索法寻找最优参数值。无数组c、g都对应最高的分类准确度,但为了避免过学习状态,本文采用交叉验证法找出精确度最高的c、g组合。图7和图8分别为数据预处理、SVM分类参数优化前后对应的分类准确度等高线对比图。实验结果表明,通过数据预处理和SVM分类参数优化后的系统识别精确度可达到97.9769%,此时所对应的最佳c和g取值分别是0.03125和2,而没有通过数据预处理和SVM分类参数优化的系统识别精确度仅为93.4%。
3结语
本文研究了一种基于行为特征的ATM机用户身份实时识别方法,通过ATM机输码屏幕的内置传感器采集用户输入账户密码时的触屏行为特征,以此判断该用户是否为合法用户。当且仅当判断结果为合法用户并且输入密码正确时,才能进入业务界面。实验证明,通过数据预处理、SVM分类算法参数优化后的系统识别精确度可提高4.5769%。由于本文提出的是基于有监督学习算法的ATM机用户身份识别系统,需要大量训练数据集才可保证分类器的识别精确度,在现实生活中会很大程度影响用户体验。因此,下一步将研究基于无监督学习算法的ATM机用户身份识别系统,并通过优化算法提高系统识别精确度。