基于增量学习的车联网恶意位置攻击检测研究

2024-03-12 09:18江荣旺龙草芳
信息安全研究 2024年3期
关键词:增量联网矩阵

江荣旺 魏 爽 龙草芳 杨 明

(三亚学院 海南三亚 572022)

(容淳铭院士工作站 海南三亚 572022)

车联网是一个由车辆自身状态和环境信息组成的庞大交互网络.车辆间传递信息的真实性和有效性可能触发其他车辆采取行动,避免灾难性后果.当前车联网恶意行为检测的研究表明,攻击者的恶意行为往往受到不同原因的驱动[1].这些恶意行为将严重降低车联网的性能,带来巨大的安全隐患.因此,研究者们对减少车辆恶意行为进行了广泛的研究.密码学能够保证消息的完整性,但不能保证消息的真实性和实时性.对此许多研究提出了恶意攻击检测.由于恶意攻击类型众多,没有一种方法可以应对所有攻击.而本文主要针对的是恶意攻击中的恶意位置攻击.车辆恶意位置攻击是指黑客通过操纵车辆定位系统,故意篡改车辆的位置信息,使其显示在错误的位置或者隐藏真实的位置,从而引发安全隐患和潜在的危害.车辆恶意位置攻击会引起交通混乱、车辆安全系统失效等危害,严重的会造成生命财产损失.目前,很多恶意位置攻击检测基于机器学习算法或深度学习算法.虽然这些方法简单易懂,但是存在精度不够、实时性差、扩展性不足等问题[2].针对上述问题,本文提出了一种基于岭回归和增量学习的车辆恶意位置攻击检测方案.该方案在不断增加数据的情况下不断更新旧模型,保证模型的适应性和可用性,减少时间和空间资源消耗.基于岭回归和增量学习的车辆恶意位置攻击检测研究的意义和价值主要体现在以下方面:

1) 提高车联网安全性.恶意位置攻击可能导致交通混乱、车辆安全系统失效等严重后果.通过研究车辆恶意位置攻击检测方案,可以有效识别和防止此类攻击,提高车联网的整体安全性.

2) 减少恶意位置攻击带来的损失.恶意位置攻击可能对交通运行和车辆安全造成损失.通过有效检测减少和防止恶意位置攻击的发生,从而降低潜在的经济和人身损失.

3) 增强恶意攻击检测技术.当前的恶意攻击检测方法存在一些问题.本文提出的基于岭回归和增量学习的检测方案,通过更新旧模型和灵活适应新数据,可以提高精度、实时性和扩展性,为恶意攻击检测技术的发展作出贡献.

本文的主要贡献如下:

1) 创新性地将岭回归和增量学习算法应用于车辆恶意位置攻击检测中,提出了一种新的检测模型,用于实时、准确检测车辆恶意位置攻击;

2) 拓展了增量学习算法的应用场景,对增量学习算法的研究起到推动作用;

3) 为车联网恶意攻击检测提出新的思路,推动了车联网的落地应用.

1 相关工作

车联网提高了道路安全和效率.车辆之间交换数据的正确性对于保证车联网的正常运行至关重要,因此车联网需要恶意攻击检测来保证车联网数据的正确性.一般车辆恶意攻击检测的方法包括机器学习算法和深度学习算法2种.

许多研究根据不同的机器学习算法特征构建不同的检测系统,用于检测车联网场景下的恶意行为:文献[3]最早提出将机器学习应用于车联网恶意位置攻击检测研究;文献[4]提出一种基于多种机器学习算法集成的方法来检测车联网中的恶意行为,该方法可以利用不同分类器的优点,将单个分类器的结果合并为一个最终结果,从而达到更高的检测精度;文献[5]分析了检测车联网中恶意行为的监督学习算法,比较了监督学习算法的性能,并识别了监督学习算法的局限性,此外,文献[5]还提出一种新的以数据为中心的有监督的机器学习恶意位置攻击检测模型,对攻击类型进行分类,以支持验证性对策.虽然这些基于机器学习算法的方法简单易懂,但都存在实时性差和检测精度有限等问题.

深度学习在恶意位置攻击检测问题上表现比机器学习技术好得多:文献[6]将堆叠式去噪自编码器与一种改进的稠密轨迹相结合,提出一种新的恶意位置攻击检测方法;文献[7]提出一种有效的基于卷积神经网络(CNN)的恶意位置攻击检测方法,该方法利用卷积神经网络的结构和基于马氏距离的损失函数来提取和估计车联网流量,最后利用强化学习实现恶意位置攻击检测;文献[8]提出一种将CNN和卡尔曼滤波器相结合的方法,在连通和自动车辆中检测异常并识别异常车辆.然而,深度学习的方法存在以下问题:1)实时性差;2)可扩展性差;3)资源要求高.这使得目前已有的基于深度学习的车辆恶意位置攻击检测方案不太可行,缺乏实用价值.

针对上述问题本文提出一种基于增量学习和岭回归算法相结合的方法.增量学习是指一个学习系统能不断地从新样本中学习新的知识,并能保存大部分以前已经学习到的知识[9].增量学习能够解决车联网中车辆每时每刻都在产生新数据的建模问题.而岭回归是一种专用于共线性数据分析的有偏估计回归方法.岭回归是一种经典的线性回归方法,它通过加入L2正则化项来解决普通最小二乘法中存在的过拟合问题.在车辆恶意位置攻击检测中,岭回归算法可以用于建立检测模型,预测车辆的位置信息,并判断是否存在恶意攻击.首先,岭回归算法能够很好地处理特征间的多重共线性问题.在车辆恶意位置攻击检测中,可能存在多个相关的特征,而这些特征之间存在较强的相关性.岭回归通过引入正则化项能够有效地降低特征之间的共线性,并提高模型的稳定性和可靠性.其次,岭回归算法能够减小模型的方差,降低过拟合的风险.在车辆恶意位置攻击检测中,如果模型过于复杂可能会导致对样本数据过拟合,进而影响模型的泛化能力.岭回归通过控制正则化参数可以有效地限制模型的复杂度,减小过拟合的风险,并提高模型在未知数据上的预测能力.此外,岭回归算法具有较好的数学性质和计算效率.相较于其他复杂的回归方法,岭回归算法的求解过程相对简单,可以通过解析解或迭代优化算法快速求解.这使得岭回归算法在处理大规模车辆数据时具有一定的优势.

本文通过将增量学习和岭回归相结合,可以有效解决车联网恶意位置攻击检测中模型扩展性差、检测资源要求高等问题.

2 系统模型

本文将基于增量学习算法的恶意位置攻击检测方案设计为4个步骤:1)从车辆在车联网中传输的消息中提取特征;2)利用算法挖掘不同属性之间的关系并训练网络;3)建立恶意位置攻击检测模型并应用于车联网场景;4)在系统中采集一定量的新数据后对模型进行更新.图1示出恶意位置攻击检测系统框架.恶意位置攻击检测系统部署在车辆、移动设备和边缘服务器中.采集周围车辆信息,识别危险源后发出预警信号.

图1 恶意位置攻击检测系统框架

图2示出所提出的恶意位置攻击检测模型的框图.该模型由4个模块组成:1)数据采集与共享模块;2)特征提取模块;3)检测模型建立及决策模块;4)模型更新模块.数据采集共享模块负责车辆数据信息的采集和共享.特征提取模块的功能包括从采集到的信息中提取特征,对提取的特征进行归一化处理,并用2维向量对消息的真实性标签进行归一化处理.检测模型建立和决策模块训练基于地理位置信息,并实时检测车辆发送的消息的真实性.模型更新模块的功能是当系统中采集到的新数据积累到一定数量后,利用新数据和增量学习算法对模型进行自动更新.

图2 恶意位置攻击检测模型架构

2.1 数据采集与共享模块

每个车辆从自己的消息日志和传感器单元(如GPS定位传感器、运动传感器等)获取历史轨迹数据和相应的上下文信息,包括车速、加速度等信息方向和位置.车辆信息采集完成后采用广播的方式与周围其他车辆共享信息.在此过程中,每辆车与其他车辆通信的同时,从相邻车辆收集移动性信息,如广播速度和传输时延等.

2.2 特征提取模块

在此阶段,基于前一阶段采集到的车辆信息,提取如表1所示的6个重要特征(包括车辆状态和通信状态),特征1~4表示车辆的行驶状态,特征5和6表示车辆之间的通信状态.

表1 车辆关键特征

获取上述6类特征后,将最终的车辆特征记为矩阵X,为p×6个元素的矩阵(有p行6列),其中p为样本总数,6为样本特征的维数.具体如式(1)所示:

(1)

对于一个乱码的真实性标签的标准化,用一个2维向量(y1,y2)表示消息的真实性.在表示真消息的标签中,y1=1,y2=0,而在表示假消息的标签中,y1=0,y2=1,即真消息和假消息的标签分别标准化为向量(1,0)和0,1).最后,将所有样本的真伪标签记为p×2的矩阵Y.

2.3 检测模型的建立和决策模块

车联网中的错误行为检测是一个有监督学习分类问题.分类器通过使用提取的特征和标记训练模型,这些标记分为有恶意行为和没有恶意行为.在检测模型的建立和决策模块主要工作是训练分类器,用于检测车辆的恶意位置攻击.

如图3所示,检测模型的建立和决策模块由3部分组成:1)映射特征(从原始输入的映射);2)增强节点(映射特征的映射);3)输出节点(映射特征和增强节点的联合映射).

图3 检测模型的建立和决策模块

首先,通过6维输入、随机权重Wai、随机偏移βai和线性函数φi,得到s组(s的值可以根据具体情况指定)的映射特征,如式(2)所示:

Zi=φi(XWai+βai),i=1,2,…,s,

(2)

其中Wai为6×e矩阵,e为一组特征节点的节点数.为了获得更好的功能,通常使用线性稀疏自编码器对Wai进行微调.βai是一个随机偏移值,Wai和βai的值一般服从(0,1)之间的随机分布.φi是一个线性函数,可以针对不同的映射特征组选择不同的函数.

得到的映射特征Zi是一个p×e矩阵.然后,将上述过程迭代s次得到s组特征节点,Zs∈[Z1…Zs]表示从原始输入中得到的所有映射特征,即p×(e×s)矩阵.

然后,通过Zs、随机权重Wbj、随机偏差βbj和非线性函数φi计算t组的增强节点,如式(3)所示:

Hj=ξj(ZsWbj+βbj),j=1,…,t,

(3)

其中Wbj是e×(s×f)的矩阵,f是1组增强节点的节点数.βbj是一个随机偏移值,Wbj和βbj的值一般服从(0,1)之间的随机分布.ξj是一个非线性函数,对于不同的增强节点组可以选择不同的函数.得到的增强节点Hj是p×f的矩阵.然后,对上述过程进行t次迭代,得到第t组增强节点,Ht≡[H1…Ht]表示从映射特征中得到的所有增强节点,其矩阵为p×(f×t).

将映射特征Zs和增强节点Ht按列合并成矩阵Q.Q=[Zs|Ht]是p×(e×s+f×t)的矩阵,作为输出层的输入.学习参数W是连接Zs和Ht输出节点的权值,基于增量学习模型的检测模型表示为式(4)所示:

Y=[Zs|Ht]W=QW,

(4)

Q+代表Q的伪逆,可以通过使用岭回归方法计算得出:

(5)

其中I是(e×s+f×t)的单位矩阵,通常是γ→0.由于输出矩阵Y已知,因此可以直接利用Q的伪逆Q+得到:

W=Q+Y.

(6)

当需要对检测到的消息进行真实性预测时,首先要根据式(1)从待检测消息中提取并标准化特征.最终的特征记为q×6矩阵X,其中q为待检测消息的个数,6为特征的维数.然后,将X送入检测模型,根据式(2)和式(3)计算出映射特征Zs和增强节点Ht,其中Zs是q×(e×s)的矩阵,Ht是q×(f×t)的矩阵.最后,利用权值W得到预测值Y′:

Y′=[Zs′|Ht′]W,

(7)

其中Y′为q×2矩阵,矩阵Y′的每一行对应一个检测结果.每个检测结果用2维向量(y1,y2)表示.如果y1>y2,则该消息是真实消息;否则,该消息是虚假消息.

算法1给出基于增量学习模型的车辆恶意位置攻击检测的算法步骤.

算法1.基于增量学习检测算法.

输入:6维原始特征;

输出:预测Y*.

步骤1.根据式(1)获取z-score标准化特征;

步骤2.分别根据式(2)和式(3)计算Z和H;

步骤3.根据式(5)和式(6)计算基于增量学习模型的权重W;

步骤4.根据式(2)、式(3)和式(7)计算预测标签Y*.

2.4 模型更新模块

(8)

(9)

其中H是a×(f×t)的矩阵.

Ynew=QnewWnew.

(10)

将式(10)用伪逆矩阵表示,可以得到新的权重:

(11)

在式(11)中:

(12)

(13)

(14)

经过式(11)操作后得到了一个新的连接权值Wnew,它是(e×s+f×t)×2的矩阵,并完成了模型更新.更新车辆恶意位置攻击检测模型的算法步骤如算法2所示.

算法2.更新车辆异常行为检测模型的算法.

输入:提取的6维新特征;

输出:权重Wnew.

步骤1.根据式(1)获取z-score标准化特征;

步骤2.分别根据式(8)和式(9)计算Z和H;

步骤3.根据式(11)~(14)计算基于增量学习模型的权重Wnew.

可以看出,在更新模型权重时只需要对新数据进行伪逆运算,其他部分只涉及矩阵基本运算;因此,旧的检测模型可以快速更新.随着数据的增加,可以连续执行更新过程,而无需重建整个网络.

3 实验结果及性能分析

针对所提出的模型,本文采用以下3个真实数据集进行性能评估:1)VeReMi数据集是在2018年提出的可扩展、公开可用的数据集,主要包括模拟每辆车的消息日志和指定攻击者行为的地面真实文件;2)NGSIM是由FHWA收集的公开数据集,提供了南行美国101号公路等地区每辆车辆轨迹数据(每1/10s精确定位);3)PeMS是一个包含车辆里程、行驶时间和从高速公路性能测量系统通过传感器收集的实时交通数据生成的性能度量数据集.

本文研究从每个数据集中随机选择了2万个样本作为训练集来训练提出的异常行为识别模型,另外再选取1.55万个独立于训练集的样本作为测试集来评估模型的性能.本文学习模型的结构设置为s=10和t=20,总共有6×10个映射特征和6×20个增强节点.φi是ReLU激活函数,ξj是Sigmoid激活函数.本文使用10折交叉验证方法用于调整不同算法的模型最佳超参数设置.然后,使用整个训练集来训练每种算法的最佳模型,并使用测试集评估这些模型.评估指标主有要加权准确率、加权F1-score、训练时间和推理时间.准确率是正确预测的总数与实例总数的比率.F1-score是精确度和召回率的调和平均数.训练时间是每种算法完成模型训练所需的总时间.推理时间是经过训练的模型在测试集上进行预测所需的时间,为每种分类算法的性能提供效率度量.实验重复3次以避免偶然因素,给出平均结果.表2的实验结果示出增量学习算法与其他算法的性能比较:

一方面,在与传统机器学习方法的比较中,增量学习在综合性能方面表现更佳.以VeReMi数据集为例,与传统机器学习方法相比,基于增量学习模型的准确率平均提高了3.52%,F1-score平均提高了3.44%.同样地,针对NGSIM数据集,基于增量学习模型的准确率和F1-score平均提高8.54%和8.75%,而对于PeMS数据集,基于增量学习模型的准确率和F1-score平均提高9.60%和9.47%.尽管基于增量学习模型的训练时间(分别为数据集的2.339s,1.781s和1.615s)高于大多数传统机器学习方法,但也处于一个特别低的水平.此外,基于增量学习模型仅需要0.127s,0.169s和0.146s即可完成3个数据集的1.55万个样本的预测,这表明基于增量学习模型完全能够进行实时检测任务.

另一方面,与深度学习方法相比,基于增量学习模型在训练时间和推理时间方面具有明显优势.与深度学习方法相比,在3个数据集上,基于增量学习模型的训练速度平均提高970,1475和1098倍,推理速度平均提高733,568和437倍.此外,基于增量学习模型的性能也优于大多数深度学习方法.具体而言,与深度学习方法相比,基于增量学习模型的平均准确率和F1-score在VeReMi数据集上分别提高0.33%和0.33%,在NGSIM数据集上分别提高2.88%和3.05%,在PeMS数据集上分别提高1.20%和1.09%.

此外,还测试了带有新添加样本的模型更新模块.设定初始网络是在VeReMi数据集中随机选择5000个样本进行训练.模型更新阈值a设为3000,这意味着应用增量算法来动态添加3000个样本以更新模型.基于增量学习模型的结构仍然设置为s=10和t=20,总共有6×10个映射特征和6×20个增强节点.表3示出每次更新模型所需的准确率、F1-score和时间:

表3 样本数量与模型性能指标随训练次数的变化情况

实验证明,使用新添加的数据更新现有模型非常有效.一方面,每添加3000个新样本,模型的准确率和F1-score逐渐增加.在5次更新后模型的准确率达到90.4%,F1-score达到91.1%,非常接近直接用2万个样本训练的模型准确率(90.6%)和F1-score(91.4%).另一方面,每次更新所花费的时间约为2s,因此模型可以高效地进行更新.因此,已知该模型具有良好的可扩展性,可以在不重新构建整个网络的情况下及时反映系统的真实性和完整性.

4 结论与未来工作

随着车联网的不断发展,车辆恶意位置攻击检测仍然是一个具有挑战性的话题.本文提出了一种基于增量学习方法的快速渐进式恶意位置攻击检测模型.在3个真实数据集上的实验中,通过与各种其他机器学习和深度学习模型进行比较得知,基于增量学习的恶意位置攻击检测模型的准确性高于传统机器学习方法,并且与深度学习方法相似,而基于增量学习的恶意位置攻击检测模型的计算速度远快于深度学习模型.另一方面,本文测试了所提出模型的更新模块,并通过逐步向模型添加新数据来分析模型的更新效率和准确性变化.实验证明,本文所提出的方法可以快速构建高精度的车辆恶意位置攻击实时检测模型,并能有效且高效地执行具有强健性和可扩展性的实际应用.在此研究中,本文仅考虑在增量学习中使用一些简单的车辆状态和环境状态信息来检测车辆的恶意位置攻击.下一步将探索将增量学习模型与更复杂的多模态数据(如声音和图像信息)相结合的算法,以实现车联网中的恶意位置攻击检测.

猜你喜欢
增量联网矩阵
“身联网”等五则
提质和增量之间的“辩证”
“价增量减”型应用题点拨
抢占物联网
初等行变换与初等列变换并用求逆矩阵
基于均衡增量近邻查询的位置隐私保护方法
矩阵
矩阵
矩阵
德州仪器(TI)发布了一对32位增量-累加模数转换器(ADC):ADS1262和ADS126