李竟铭 赵明杰 翟 会 丁国如 张小飞
(1.南京航空航天大学电子信息工程学院,南京,210016; 2.浙江理工大学信息学院,杭州,310018; 3.陆军工程大学通信工程学院,南京,210007)
考试是教学活动的重要环节,是选拔优秀人才、检验教学质量和考察学生理解程度的主要手段。近年来,为彰显国家对考试公平性的重视,考试作弊首次纳入刑法。考试作弊所造成的危害极大,它不仅破坏了考试公平,侵犯了其他学生的利益,损害了学校的声誉,更降低了高等教育的公信度,因此成为高校教学管理研究的热点问题。随着无线电通信的广泛应用,考试作弊的手段也趋于隐性化、智能化,作弊者通常使用磁共振耳机、骨感耳机和针孔摄像头等先进的作弊器材与外界进行试题及答案的传递。由于便于隐藏、不需要人为取出且具有强大的收发功能,无线电作弊设备已成为大型考试中的作弊利器。目前常见的用来考试防作弊的措施大致有以下几种:(1)人脸识别指纹验证;(2)使用金属探测仪进行安检;(3)使用屏蔽设备;(4)视频监控等。
室内定位是一种对室内环境的位置估计技术[1,2]。由于受到复杂的室内电波传播环境、室内建筑布局和人员移动性等因素的影响,室内信号衰落模型无法准确建立,因此其发展远滞后于室外定位技术。通常室内定位技术通过采集收发机之间无线链路的到达时间 (Time of arrival, TOA)、到达时间差(Time difference of arrival, TDOA)、到达角 (Angle of arrival, AOA)[2]和接收信号强度 (Receive signal strength indicator, RSSI)[3]来估计收发机之间的距离,以此来构建位置估计模型,从而获取终端的位置信息。但是基于TOA,TDOA和AOA的定位技术需要进行相对时间和角度的测量,这大大增加了硬件成本,并不适用于广泛普及,因此本文采用RSSI来构建位置估计模型。
指纹识别[4,5]方法专注于有效地比较实时的频谱扫描信息与室内预先记录的扫描数据库,因此对于本地信号干扰更为稳健。文献[6]采用最近邻插值法(K-nearest neighbor,KNN)方法,从指纹数据库中查询与其最相似的K个位置数据,对其位置进行平均。文献[7]对其进行了改进,使用了加权KNN方法。文献[8]中,随机森林算法也得到了很好的定位精度。然而,传统的机器学习方法对数据敏感度较高,往往需要对数据进行归一化、滤波等预处理,且容易过拟合导致泛化能力较弱,随时间推移网络的预测性能会受到影响。但随着定位精度的需求越来越高,数据量也随之增大,深度学习是一个很有前途的解决方案[9]。深度学习[10]可以直接学习提取数据隐含的结构特征而不需要预处理,并且可以有效避免过拟合等问题,从而提高网络泛化能力。因此,使用深度学习与自动编码器,将数据进行特征提取和降噪处理。文献[11]中,就利用深度学习算法通过WiFi实现了室内定位;文献[12]提出了一种对信道状态信息(Channel state information,CSI)进行深度学习的室内指纹系统,验证了深度学习在室内定位领域的广阔前景。
为了构建智慧考场,本文在室内定位和频谱监测技术的基础上,设计了基于深度学习的无线电作弊信号发现与定位系统,系统实现了无线电作弊设备判决、定位、告警以及移动终端实时显示等功能。本文的主要贡献为:(1)构建了基于通用软件无线电外设(Universal software radio peripheral,USRP)平台的无线电作弊信号发现与定位系统,实现了告警、移动终端实时显示等功能; (2)设计了基于深度学习的定位算法,实现了对电磁频谱数据的训练和学习,使平均定位精度达到0.178 8 m。
为使考场工作人员方便、直观、远程和实时地了解所监测环境的安全情况,无线电作弊信号发现与定位系统利用物联网的思想,在互联网基础上,将网络延伸到现实环境中,进行频谱和视频信息的采集与共享,实现对频谱监测信息的呈现,并且在网页中为用户提供了无线电作弊信号的定位与告警服务,并结合视频信息混合判决。 如图1所示,整个系统架构包含电磁频谱数据采集、数据处理中心和网页端实时显示3个部分,分别完成对应的工作。
图1 系统构架图Fig.1 System architecture diagram
为了解当前检测的室内环境的电磁辐射情况,利用频谱监测设备USRP和4根天线测量并收集当前环境的电磁能量值。考虑到无线电作弊信号工作周期及工作频段,将采样率设为1 MHz,采样点数5 000,监测中心频率设为2.09 MHz。为了有助于数据的训练和学习,将室内环境进行网格化分割,网格大小为20 cm×20 cm,取7行20列共计140个测试点,开启发射源,反复在这140个测试点上进行测试,采集4根天线测得的频谱数据。
系统采样频谱图如图2所示,图中横坐标表示频率,纵坐标表示幅度。4幅图分别对应4根天线采集到的数据。当频谱图出现如图3所示的情况时,说明当前检测环境有信号发出,即有存在无线电作弊信号的可能。
图2 系统时域采样结果Fig.2 System sampling results on time domain
图3 作弊信号的发现Fig.3 Discovery of cheating signal
同时在监测环境中布设视频监控设备,用于发现无线电作弊信号时,可以实时传输视频数据到电脑上,便于监考人员查看该考生有无作弊行为并留存证据。
将采集到的数据进行存储和集成,为使测得的样本数据更加精确,对样本数据利用窄带滤波器的方法,有效提高了信噪比。为了对无线电作弊设备进行精确定位,应用基于深度学习的室内定位算法,继而利用样本数据对模型进行训练,得到模型后便可通过数值匹配的方法确定小范围的精确位置。最后,对定位性能进行评估。本文将精确度和精密度作为评估标准,即精确度越高,定位效果越好,同等精确度时,精密度越高越好。
(1)精确度
精确度是定位系统的关键评估指标,通常用平均定位精度来衡量,即估计位置和实际位置的均方根误差(Root mean squared error, RMSE),即
(1)
(2)精密度
与精确度不同,精密度考虑的是系统所获取的精确度的分布概率,是对精确度鲁棒性的度量。一般情况下,精密度可由几何精度因子(Geometric dilution of precision, GDOP)或者累计概率分布(Cumulative probability functions, CPF)表示。本文使用累计概率分布表示精密度,在同等精确度时,当定位精确度在0.2 m范围内,精密度越高越好。
当发现异常信号信息时,软件界面和网页终端适时发出告警,上报给终端用户,终端用户可立刻通过查看考场监控视频,来综合判决当前环境和告警位置上有无作弊的隐患,并且通过视频回放功能留存作弊证据。
深度学习基本模型类似于传统神经网络的3层结构[13],是由输入层、隐藏层和输出层组成的多层网络。深度学习通过逐层训练方法使得梯度能够有效传播,因此深度神经网络通常含有多隐藏层,提高了网络表达能力。如图4所示,本系统所采用模型主要分为以下3个部分:自编码器、多层感知机、深度学习回归预测模型。
图4 系统模型图Fig.4 System model diagram
自编码器(AutoEncoder)[14]可以用于压缩数据,提取特征或者降噪。利用深度学习的基本思想和网络的特性直接构建一个能够表达原始数据的网络结构,通过设定输入输出近似相等,学习网络的参数权值,进而构建自编码模型。文献[15]中提出了一种新颖的基于去噪自编码器的室内定位方法,验证了自编码器可以提高定位精度。
多层感知机(Multilayer perceptron, MLP),又称深度前反馈网络,是典型的深度学习模型。MLP具有多层节点,其中每层与下一层完全连接,隐藏层的每个节点都使用非线性激活函数进行操作,并且利用反向传播模型训练网络。
(1)激活函数
Sigmoid函数:即S型函数,在神经网络中被广泛采用。Sigmoid函数可以将实数压缩到 [0,1]区间,具有强大的解释力,但在神经元趋于0或者1的时候会产生饱和导致梯度弥散,因此权值需要小心初始化,其公式为
(2)
Tanh函数:该函数拥有良好的数据控制力,其将实数映射到 [-1,1]区间,但依旧存在饱和问题。Tanh函数公式为
(3)
Relu函数:是线性修正单元,当x<0时为0,当x>0时斜率为1。Relu收敛速度更快,但是Relu也更加脆弱,大的梯度流可能导致神经元永久失效,选择合适的学习率或者层间批正则化可以避免这种情况的出现。其公式为
f(x)=max(0,x)
(4)
(2)反向传播算法
训练样本集为{(x(1),y(1)),…,(x(m),y(m))},其中m为样本的个数,用该样本集训练神经网络。实验中的损失函数为
(5)
梯度下降法的关键步骤是计算偏导,对于网络的权值W和偏置项b,其迭代公式分别为
(6)
(7)
其中α为学习速率。
采用室内指纹定位方案只能对离散指纹点进行预测估计,为了实现更高精度的连续预测定位,利用深度学习搭建一个回归预测模型。该线性回归模型可表示为
f(x)=wTx+b
(8)
式中:x表示输入,w表示权重,b表示偏差。w和b训练成最小化的目标函数,该模型首先处理输入数据,然后执行预训练;当到达输出层时,模型会反向传播;算法达到收敛时停止。文献[16]采用了回归预测模型来对基因数据进行学习。
图5 深度学习分类仿真结果Fig.5 Simulation results of deep learning classification
室内定位场景通常采取基于指纹的定位方式。对室内环境的140个指纹点进行采集学习,从而估计出新的定位点。基于指纹的定位是一个多分类问题,传统机器学习对于二分类问题可以取得较好的效果,但是随着多分类问题数据维数的增高,机器学习问题变得相当困难。为了更好的泛化,机器学习方法往往会提出很强的针对特定任务的假设。同时,S函数的饱和特性使隐含层数受到限制,因此导致神经网络表达能力的不足。而深度学习的核心思想是假设数据由因素或特征组合,这些通用假设提高了深度学习算法。深度学习旨在克服机器学习中的‘维数灾难’‘梯度弥散’等一系列困难,从而在多分类问题中取得更好的效果。
针对室内定位场景的多分类任务,本文采用深度学习框架搭建一个具有五隐含层的深度神经网络分类器。为了防止梯度弥散,采用Relu作为隐含层激活函数,并利用Xavier初始化权重。对测试集分类效果进行仿真验证的结果如图5所示,其中实心圆为成功定位点,方框为实际测试点,三角为错误预测定位点。测试集样本数量为100,仿真结果显示定位精度可以达到90%的准确率。
(1)单隐含层和三隐含层对比
两个网络均不进行AutoEncoder且隐含层均采用Relu作为激活函数,对测试集进行回归拟合来预测坐标点的结果如表1所示。从表中可以看出多隐含层预测效果明显优于单层,但是在定位误差上依旧较大。
表1 单隐含层和三隐含层对比结果
表2 AutoEncoder定位结果对比
表3 不同隐含层激活函数定位精度对比
(2)AutoEncoder
从数据分布可以看出,为了提高定位精度有必要将数据进行特征提取并降噪处理,为此在将数据输入深度学习回归网络之前先进行自编码处理,用于提取数据的高维特征并减小噪声影响。表2列出了采用Tanh激活函数的三隐含层深度回归预测网络是否进行AutoEncoder的定位精度的对比结果。
(3)不同隐含层激活函数对比
隐含层激活函数的选择也会在很大程度上响应定位的精度。在分类任务中表现良好的Relu函数由于其对数据的控制能力较弱,在数据分布不均匀的情况下效果并不如Sigmoid等函数好。由于Tanh相当于Sigmoid函数的扩展形式,其中心是关于零点对称的,所以Tanh往往能取得比Sigmoid更好的效果,具体结果如表3所示。
图6 仿真结果Fig.6 Simulation result
根据实验结果,采用三隐藏层的深度学习回归网络对室内定位场景进行预测。将训练参数保存后利用实测数据对实验环境定位效果进行仿真验证,结果如图6所示。由图6可知,通过本系统,利用三隐藏层的深度学习回归网络对室内无线电作弊信号进行定位,其定位的精确度可达到0.170 07 m,符合考场实际场景对定位精度的需求。
本系统以无线电作弊信号的发现与定位为出发点,通过部署USRP频谱监测设备对室内环境中电磁信号进行检测,了解目标区域的电磁安全情况。通过部署视频监控设备对室内环境进行实时监控,并将采集的实时数据收集起来,联网进行处理,运用深度学习算法将平均定位精度提高到0.170 07 m,系统融合频谱监测设备结果与视频监控设备结果,混合判决是否存在作弊现象。最后结果以网页及APP形式直观地展现出来,可使监考和巡考人员可以方便、直观、远程和实时地了解所监测环境的安全情况。