基于肌电信号和孪生神经网络的智能手机用户认证方法和系统转让专利
申请号 : CN202010140395.0
文献号 : CN111371951B
文献日 : 2021-04-23
发明人 : 牛建伟 , 范博宇 , 张一帆
申请人 : 北京航空航天大学
摘要 :
权利要求 :
1.一种基于肌电信号和孪生神经网络的智能手机用户认证系统,其特征在于,包括:用户佩戴的Myo臂环,用于采集用户拿取手机过程中的肌电信号;
安装在智能处理设备上的肌电信号分段处理模块、孪生神经网络训练模块和臂环旋转无关性设计模块;
以及安装在智能手机上的解锁系统;
所述的肌电信号分段处理模块将Myo臂环采集到的肌电信号提取为肌电信号矩阵;所述的Myo臂环采集用户的有效动作时间为2秒,所述的肌电信号分段处理模块设置采样率为
200Hz,从一条2秒的肌电信号中提取到一个8×400的肌电信号矩阵;
所述的孪生神经网络训练模块用于训练孪生神经网络;每个神经网络包括三个过滤器卷积层和一个全连接层;神经网络的输入是肌电信号矩阵,神经网络的输出是全连接层的输出向量;计算两个神经网络的输出向量的欧氏距离,距离取值范围是[0,1],0代表两个肌电信号矩阵来自不同的用户,1代表两个肌电信号矩阵来自同一用户;利用训练数据对孪生神经网络进行训练,对训练好的孪生神经网络进行等错误率分析,找到最佳分类阈值;孪生神经网络训练模块将训练好的孪生神经网络和最佳分类阈值输出给智能手机上的解锁系统;
所述的孪生神经网络训练模块的每个神经网络包括三个过滤器卷积层和一个具有128个单元的全连接层;其中,第一卷积层用于学习Myo臂环的八个肌电信号采集通道之间的特征,第一卷积层的内核大小为8×1;第二卷积层的内核大小为1×3,用于提取用户拿取手机过程中的动作序列在时间维度上的卷积特征;第三卷积层的内核大小为1×1;
所述的臂环旋转无关性设计模块使用数据增强的方法获取孪生神经网络的训练数据,具体是:旋转Myo臂环,移动传感器的位置,顺时针旋转Myo臂环8次,每次旋转使当前一个传感器的位置由上一个传感器替代,每旋转一次就采集一次用户拿取手机过程中的肌电信号,得到8组不同的肌电信号,将从同一用户获取的8组肌电信号矩阵的标签设置为同一个认证身份;
所述的解锁系统包括肌电信号分段处理模块、注册模块和认证模块;用户通过注册模块采集用户拿取手机过程中的肌电信号,输入肌电信号分段处理模块提取肌电信号矩阵,添加用户的认证身份标签,并保存在本地;认证模块存储训练好的孪生神经网络以及最佳分类阈值;需要认证时,认证模块对实时采集的肌电信号通过肌电信号分段处理模块提取肌电信号矩阵,将实时的肌电信号矩阵与保存在本地的肌电信号矩阵输入孪生神经网络,计算两个肌电信号矩阵对应的输出向量的欧氏距离,并与最佳分类阈值进行比较,如果小于阈值,则认证成功,否则,认证失败。
2.如权利要求1所述的智能手机用户认证系统,其特征在于,所述的孪生神经网络训练模块,所获取的每个训练样本包括一组肌电信号矩阵和对应的配对值;在获取训练样本时,根据认证身份,对来自同一个用户的一组肌电信号矩阵设置配对值为1,对来自不同用户的一组肌电信号矩阵设置配对值为0,将配对后的肌电信号矩阵输入到孪生神经网络中进行训练。
3.一种基于肌电信号和孪生神经网络的智能手机用户认证方法,其特征在于,包括如下步骤:
步骤1,采集肌电信号训练数据;
用户佩戴Myo臂环,采集用户拿取手机过程中的肌电信号,并为采集的肌电信号添加用户身份标签;Myo臂环包括8个传感器通道,采集训练数据时,顺时针旋转Myo臂环8次,每次旋转使当前一个传感器的位置由上一个传感器替代,每次旋转后测量一次肌电信号,得到8组不同的肌电信号,设置8组肌电信号的标签为同一个用户身份;
步骤2,对采集的肌电信号进行分割,提取肌电信号矩阵;
用户拿取手机过程中的有效动作的时间为两秒,在Myo臂环的8传感器通道、采样率为
200Hz的条件下,提取到的肌电信号矩阵的大小为8×400,矩阵中的行代表传感器通道,列代表采集的肌电信号值;
步骤3,对不同的肌电信号矩阵进行成对匹配,以形成训练样本;进行成对匹配时,将来自同一个人的两个肌电信号矩阵的匹配值设置为1,将来自不同人的两个肌电信号矩阵的匹配值设置为0;
步骤4,利用训练样本对孪生神经网络进行训练;
训练时,孪生神经网络的输入是两个肌电信号矩阵,计算孪生神经网络的两个输出向量的欧式距离,作为输入的两个肌电信号矩阵的相似度,最小化相似度与训练样本的匹配值,调整孪生神经网络的参数;对孪生神经网络进行等错误率分析,找到最佳的分类阈值;
所述的孪生神经网络训练模块的每个神经网络包括三个过滤器卷积层和一个具有128个单元的全连接层;其中,第一卷积层用于学习Myo臂环的八个肌电信号采集通道之间的特征,第一卷积层的内核大小为8×1;第二卷积层的内核大小为1×3,用于提取用户拿取手机过程中的动作序列在时间维度上的卷积特征;第三卷积层的内核大小为1×1;
步骤5,将训练好的孪生神经网络和最佳分类阈值移植到智能手机的解锁系统中;
步骤6,用户使用解锁系统进行注册;
用户佩戴Myo臂环,按照预设引导信息执行动作,采集肌电信号;对采集的肌电信号进行分割,提取肌电信号矩阵;将提取的肌电信号矩阵保存在手机本地,并添加用户身份标签;
步骤7,用户使用解锁系统进行身份认证;
用户佩戴Myo臂环,在拿起智能手机过程中产生新的肌电信号,解锁系统实时保存来自Myo臂环的肌电信号,对该实时的肌电信号进行分割,提取肌电信号矩阵;将提取的肌电信号矩阵与用户注册时存储的肌电信号矩阵进行两两配对,将每一对矩阵输入到训练好的孪生神经网络中,计算两个肌电信号矩阵的相似度,当相似度小于最佳分类阈值时,将成功授权用户并解锁智能手机,否则拒绝用户。
说明书 :
基于肌电信号和孪生神经网络的智能手机用户认证方法和
系统
技术领域
背景技术
渐取代了传统的基于密码的方法。与密码方法相比,基于生物特征的方法可以实现安全便
捷的身份验证。但是,这些方法仍然有一些缺陷。例如,可以用特殊材质获取指纹,从而解锁
智能手机;3D打印的头部模型和胶带眼镜可以轻易地欺骗苹果的FaceID身份验证系统。
发明内容
络的智能手机用户认证方法和系统,用户通过佩戴Myo臂环,只需拿起手机,即可实现身份
认证。
无关性设计模块,以及安装在智能手机上的解锁系统。其中,用户佩戴Myo臂环,采集用户拿
取手机过程中的肌电信号。肌电信号分段处理模块Myo臂环采集到的肌电信号提取为肌电
信号矩阵。孪生神经网络训练模块利用肌电信号矩阵训练一种卷积孪生神经网络,该网络
有两个输入,网络输出两个输入值的相似程度,并根据该相似程度实现用户认证。
类阈值输出给智能手机上的解锁系统。
旋转Myo臂环,移动传感器的位置,每旋转一次就采集一次用户拿取手机过程中的肌电信
号,将从同一用户获取的肌电信号矩阵的标签设置为同一个认证身份。
阵,添加用户的认证身份标签,并保存在本地;认证模块存储训练好的孪生神经网络以及最
佳分类阈值;需要认证时,认证模块对实时采集的肌电信号通过肌电信号分段处理模块提
取肌电信号矩阵,将实时的肌电信号矩阵与保存在本地的肌电信号矩阵输入孪生神经网
络,计算两个肌电信号矩阵对应的输出向量的欧氏距离,并与最佳分类阈值进行比较,如果
小于阈值,则认证成功,否则,认证失败。
每次旋转使当前一个传感器的位置由上一个传感器替代,每次旋转后测量一次肌电信号,
得到8组不同的肌电信号,设置8组肌电信号的标签为同一个用户身份;
道,列代表采集的肌电信号值;
阵的匹配值设置为0;
匹配值,调整孪生神经网络的参数;对孪生神经网络进行等错误率分析,找到最佳的分类阈
值;
标签;
电信号矩阵与用户注册时存储的肌电信号矩阵进行两两配对,将每一对矩阵输入到训练好
的孪生神经网络中,计算两个肌电信号矩阵的相似度,当相似度小于最佳分类阈值时,将成
功授权用户并解锁智能手机,否则拒绝用户。
置位置和重量的影响。经过试验验证,具有较高识别准确率(92.06%)和较高真实接受率
(91.81%)的同时,具有较低的错误接受率(7.43%)和错误拒绝率(8.29%)的,具有较短的
安卓系统响应时间(0.16s)。
现有的指纹认证和人脸认证相比,本发明由于肌电信号无法复制,安全性更高,同时用户在
使用过程中,只需要拿起手机,即可实现认证,不需要做任何多余的动作,更加方便。
经网络中进行训练,这样孪生神经网络可以学习到Myo的旋转,从而实现旋转不变性,用户
无需在每次佩戴Myo臂环时对其进行校准。
附图说明
具体实施方式
智能手机时的速度、腕部运动、手指运动以及他们抓取智能手机的位置通常因人而异。而且
对于一个人来说,由于长时间积累的肌肉记忆,这个人拿起智能手机时的动作通常是相似
的。本发明提供了一种基于肌电信号和孪生神经网络的智能手机用户认证方法和系统,通
过佩戴Myo臂环采集用户拿取手机过程中的肌电信号,然后使用肌电信号数据训练了一种
孪生神经网络,通过该网络的输出来进行智能手机用户认证。
生神经网络训练模块和臂环旋转无关性设计模块,以及安装在智能手机上的解锁系统。Myo
臂环采集的肌电信号输入肌电信号分段处理模块进行处理。解锁系统是安装在智能手机上
的APP(应用程序)。
为一条基本肌电信号矩阵。肌电信号矩阵的行代表通道标号,列代表采样的肌电信号数据。
合于肌电信号的特点。孪生神经网络的输入为两个8×400的肌电信号矩阵,输出值为两个
输入矩阵之间的相似程度。如图1所示,本发明实施例中,设置的孪生神经网络模型的四层
结构具体如下:
电信号数据的融合。
距离是一个0到1之间的数值,越接近1,则认为两个肌电信号矩阵越有可能来自同一个人。
在训练孪生神经网络时用损失函数最小化模型来预测输出与已知匹配值之间的差异。每个
训练样本包括一组肌电信号矩阵和对应的配对值。在获取训练数据时,根据认证身份将肌
电信号矩阵分为不同的组,对来自同一个用户的数据配对值设置为1,来自其他不同用户的
数据配对值设置为0,配对后的数据输入到孪生神经网络中进行训练。再利用训练好的孪生
神经网络模型输入解锁系统中。
对应的标签设为同一个值,输入到神经网络中进行训练,这样神经网络可以学习到Myo的旋
转,从而实现旋转不变性,用户无需在每次佩戴Myo臂环时对其进行校准。数据的标签是给
用户身份认证的唯一标识。
用程序中,使智能手机应用程序利用优化后的模型进行身份认证。用户通过注册模块,使用
Myo臂环采集肌电数据并利用手机端的肌电信号分段处理模块对数据进行分段处理,生成
肌电信号矩阵,然后以用户身份信息为标签,与用户身份信息配对保存在手机本地的数据
库中。在身份认证阶段,认证模块对实时采集的肌电信号进行保存,并通过手机端的肌电信
号分段处理模块对两秒的时间窗口内执行分割,分割后得到的肌电信号矩阵与先前存储在
手机本地的肌电信号矩阵,同时输入到训练好的孪生神经网络中,输出两肌电信号矩阵的
欧式距离。如果输出的欧式距离小于最佳分类阈值,则认为认证成功,解锁手机;否则,认证
失败。
号数据由Myo臂环采集并通过蓝牙通信实时传输到智能手机,用户通过单击相应的按钮来
标记不同的动作。得到标记的数据后,将数据进行分割成肌电信号矩阵以提取有效的肌电
信号,并进行成对分配准备训练数据,同时进行数据扩充以扩展数据集。接下来,在模型训
练步骤中,将所有成对数据输入神经网络以训练孪生卷积神经网络。右侧显示了在线身份
验证的步骤,将训练好的孪生神经网络模型移植到安卓智能手机中,以便评估本方法在实
际场景中的性能。本发明设计相应的应用程序安装在智能手机中,利用应用程序来采集数
据和用户认证。
据,图中显示了五个相似的分波,这些波代表了五次拿起和放下智能手机的动作。
肌电信号传感器,每个传感器对应一个特定的皮肤区域,这使得Myo臂环不能旋转,使用不
便。根据Myo臂环的环型结构,如果第一个传感器旋转到第二个传感器的位置,则其余七个
传感器将按顺序移动,最后一个传感器将替换第一个传感器的位置,因此,本发明借鉴图像
领域数据增强的方法,通过旋转Myo臂环来扩展采集的肌电信号数据集。在本发明的数据集
中,八个肌电数据通道对应于Myo臂环的八个肌电传感器,每次旋转通道时,都会创建一个
新的数据集。图5的第一张图片显示了旋转一个通道的结果,一共旋转八次完成一个圆圈旋
转,旋转一圈后可以得到一个八倍于原始数据的数据集,将这八个数据集对应的标签设为
同一个用户身份标签。从图5的第二张图片中,可以看到两个传感器之间存在间隙,当用户
戴上臂环时,无法保证该位置只是本发明扩展的八个位置之一,并且当旋转小于一个通道
时,传感器可能会覆盖间隙区域。但是,此间隙的距离远小于传感器的宽度,所以间隙对本
发明系统的影响可以忽略。在图像分类任务中,翻转,裁剪和缩放是常见的数据增强技术。
完成这些操作后,图像的标签不会更改。本发明还通过数据增强技术,扩展训练数据。与数
据增强技术相似,Myo臂环的通道交换后,扩展后的数据集仍属于同一个人。通过这种方式,
无论用户如何佩戴Myo臂环以及是否旋转它,本发明的孪生神经网络模型都可以学习足够
的特征并做出可靠的决策。
积孪生神经网络模型提取特征。
信号值,每个通道在2秒内共采集400个值。
匹配值设置为1,将来自不同人的两个肌电信号矩阵的匹配值设置为0。每对匹配的肌电信
号矩阵作为一个训练样本输入到孪生神经网络模型。
化所得到欧式距离与训练样本对应的匹配值的差异,调整孪生神经网络的参数,找到损失
函数最小的最佳参数组合,获得训练好的孪生神经网络。对孪生神经网络模型进行等错误
率分析,找到最佳的分类阈值。
面,解锁系统APP将这些动作的肌电信号按照步骤2中方式提取成肌电信号矩阵保存到数据
库中,并通过用户名和相应的动作作为标识符对其进行命名。用户的名字作为肌电信号数
据的索引。
间窗口内执行分割,提取肌电信号矩阵,与先前用户注册时存储的肌电信号矩阵进行两两
配对,将每一对矩阵输入到训练好的孪生神经网络中,孪生神经网络计算输入的肌电信号
数据对的距离。如果输出小于最佳的分类阈值,则将成功授权用户并解锁智能手机,否则将
拒绝用户。
7所示,为本实施例中Myo臂环佩戴的位置示意图。安卓智能手机运行数据采集程序,并将肌
电信号记录到csv文件中。本实施例设计了一个调查表以记录志愿者在学习或工作时的智
能手机位置,如图8所示,本实施例中调查到的手机放置的常用位置,右上角标记了调查的
频数。可以看到,志愿者通常将智能手机放在左侧P1,前方P4和右侧P3。图8中,志愿者坐在
桌子前,将智能手机放在桌子上。如图9所示,为本发明中数据采集步骤示意图。志愿者要做
的只是拿起他们的智能手机并像往常一样观看屏幕。四个场景之间的唯一区别是智能手机
和手的位置。两个初始位置,在前两个子图中显示。根据图8中显示了四个智能手机位置。在
位置P1,P2和P3中,要求志愿者重复动作20次,而位置P4重复10次,共70次。有效时间从志愿
者开始移动手臂开始比到查看屏幕结束,并且该时间通常少于两秒。具体来说,采样率是
200Hz,臂环有8个传感器通道,因此一条有效数据是一个8×400的矩阵。本发明实施例有40
名志愿者,每个人采集70个数据,所以数据集共有2800个有效数据。
模型,并使用学习率为0.002且批次大小为32的Adam优化器。损失函数选择对比损失函数而
不是交叉熵损失函数。在训练过程中,使用y来标记两个输入矩阵的关系。如果两个矩阵相
似,则y等于0;否则,y等于1。损失函数定义为:
为本发明实施例中不同阈值的DET(检测错误权衡图)曲线图。该EER点的相应阈值为0.55。
集与测试集的比率为4:1,并将准确性作为评估的唯一指标。如图11所示,为本发明实施例
中使用不同距离函数的ROC(接受者操作特性曲线)曲线图,欧氏距离的ROC曲线下面积最
大。实验测试最好的超参数集合为:CNN层数为3,对应的三个过滤器数量为16,32和32,学习
率为0.002,丢弃率dropout为0.1,0.2和0.2,批处理大小30,周期数20,使用欧几里得距离
来计算两个肌电信号特征向量的相似度。
号。如图12所示,为本发明实施例中随机放置手机的认证结果图。圆形标记是本系统正确身
份验证的位置,而三角标记是本发明的系统错误检测到的位置。本发明实施例仅有一个位
置认证错误,准确率达到93.33%。该结果说明本系统能够较好的提取用户肌电信号的特
征,并具有较好的泛化性。
左手惯用者也有良好的泛化性能。
据集来测试当人们站立而不是坐着时,系统是否可以解锁智能手机。首先,本发明实施例将
注册数据和身份验证数据的数据集分开,其比例为1:4。然后进行配对并将这些配对放入系
统。本实施例中的正确接受率为98.43%,这意味着系统可以处理用户的站立情况。
误拒绝率为8.49%。
机上运行时,身份验证时间约为0.048s。在小米8中运行的身份认证验证时间约为0.16s,结
果满足实时智能手机解锁的要求。
限,在其范围内的各个实现方案均受本发明之约束。