一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车载控制器局域网络入侵检测方法及设备与流程

2022-03-22 20:02:25 来源:中国专利 TAG:
一种车载控制器局域网络入侵检测方法及设备与流程

本发明属于车联网安全技术领域,具体涉及一种车载控制器局域网络入侵检测方法及设备。

背景技术

随着5G技术、人工智能技术等新兴技术的发展,传统的汽车产业也在逐渐向智能化和网联化的方向转型。车联网作为智能网联汽车主要的通信框架,使车辆与其他车联网实体之间能够进行可靠的通信。 车联网将车内网、车际网、车载移动互联网进行融合,实现人-车-路-云等多方位的网络链接。车内网主要通过控制器局域网络(CAN)传送CAN消息和执行操作。然而,随着车联网技术的智能化、网联化进程加快,传统互联网所面临的网络攻击也逐渐出现在车联网环境中。在车内网中,受限于CAN的兼容性,传统的网络安全机制,如某些身份验证机制、安全通信策略和加密技术在车内网环境中并不适用,因此很容易受到网络攻击。工信部指出在2020年整车企业车联网信息服务提供商等相关企业平台遭受的恶意攻击达到280余万次,这些潜在的网络攻击严重危害了智能网联汽车用户的生命安全。传统的网络安全技术,如数据加密、杀毒软件,大多属于被动的防范技术,无法做到及时掌握网络安全状况并进行实时保护,显然不适用于车联网环境。入侵检测作为一种主动安全技术,由于能够在网络受到攻击之前进行拦截,逐渐成为车联网安全研究中的重要内容。

针对车载控制器局域网络入侵检测问题,相关研究人员已经提出了多种方案,其中大多数为基于统计学或机器学习、深度学习模型的入侵检测方法。Song等提出了一种基于CAN消息时间间隔分析的入侵检测方法,该方法可以准确的检测出车载控制器局域网络中的消息注入攻击。Ghaleb等提出了一种基于前馈反向传播人工神经网络 (ANN)的车载控制器局域网络入侵检测模型,并在车联网真实入侵数据数据集NGSIM上进行了仿真实验,实验结果表明,与现有基线模型相比,该模型具有较好的检测效果。Alshammari等通过传统机器学习算法KNN和SVM对车载自组网中的数据进行分析,预测其是否为网络入侵。Yang等提出了一种多层混合入侵检测系统(MTH-IDS)用于车联网的入侵检测,该系统在准确性和低误报率方面有较好的表现。

伴随人工智能技术的发展,深度学习逐渐被用于车载控制器局域网络入侵检测上,深度学习方法通常具有较高的精度,但由于模型的复杂性,它们的计算成本往往很高,很显然不适用于计算能力较低的车载系统上。相比深度学习,机器学习往往具有较高的效率,并且机器学习和数据挖掘算法已经被公认为是设计入侵检测系统的有效模型。因此如何以机器学习为基础,设计一个高效、准确的车载控制器局域网络入侵检测方法将成为迫切需求。



技术实现要素:

本发明目的是:针对现有技术的不足,提供一种车载控制器局域网络入侵检测方法及设备,用于高效、准确地检测出中车载控制器局域网络出现的入侵信息,防止由于车载控制器局域网络被入侵导致的车联网安全事件。

具体地说,本发明是采用以下技术方案实现的。

一方面,本发明提供一种车载控制器局域网络入侵检测方法,其特征在于,所述方法包括:

对采集的原始数据进行数值化和归一化处理,得到预处理后的数据,并划分为训练集和测试集;

采用PSO-LightGBM双向特征选择方法对所述预处理后的数据进行特征筛选;

使用Stacking集成模型对经过预处理和特征筛选之后的测试集数据进行分类,得到入侵检测结果;

所述PSO-LightGBM双向特征选择方法为:

首先使用PSO算法对LightGBM进行参数寻优,使模型整体效果最优;然后使用LightGBM对特征重要性进行降序排列,对排序后的全部特征集合进行筛选,每次从当前的特征集合中删除重要程度最低的特征,构成新的特征子集,对数据按照新的特征子集进行特征删减,通过所述Stacking集成模型进行分类预测,如果预测结果的精确度未降低,则删除该重要程度最低的特征,循环此过程,对所述新的特征子集进行特征删减;如果预测结果的精确度降低,则撤回此次特征删减,特征删减结束,返回只含特征删减后特征的数据集。

进一步的,所述车载控制器局域网络入侵检测方法,还包括:

对预处理后的训练集数据,通过聚类混合采样方法进行混合采样,去除冗余,同时生成少数类攻击样本;采用PSO-LightGBM双向特征选择方法对经聚类混合采样处理后的数据进行特征筛选,使用特征筛选的训练集数据对Stacking集成模型进行训练;所述聚类混合采样方法包括:

对所述预处理后的训练集数据进行分析,判断各类别是否极度不平衡;

如果样本不存在极度不平衡现象,则使用Kmeans对所有训练集数据所有类别进行聚类,从聚类中心挑选设定比例的数据,形成一个具有高度代表性的数据子集,对所述数据子集使用TomekLink方法进行数据清洗,把清洗之后的数据作为新的训练集;

如果出现各类别数据极度不平衡,对于多数类,从各聚类中心采集设定比例的数据,去除冗余;对于少数类,通过 SMOTE方法根据其聚类中心进行插值来生成额外的样本,插值生成方法如下:

其中表示新生成的样本,表示聚类中心样本点,为选出的K近邻点,是一个随机数;

对采样后的多数类样本和通过SMOTE生成的少数类样本进行拼接,得到待定数据集;使用Tomek Link采样法消除待定数据集中存在的噪音样本点,得到聚类混合采样后的训练集数据。

进一步的,所述通过 SMOTE方法根据其聚类中心进行插值来生成额外的样本为,生成少数类的聚类中心为在第一次聚类基础上,进行二次聚类,根据二次聚类的聚类中心使用SMOTE生成同一类型的少数类数据。

进一步的,所述极度不平衡指多数类与少数类的样本比例大于100:1。

进一步的,所述Stacking集成模型分为两层,第一层分别使用XGBoost模型 、LightGBM模型以及CatBoost模型通过五折交叉验证得到初步分类结果,将所述初步分类结果作为特征进行横向拼接,得到新的训练集;第二层使用所述新的训练集对MLP模型进行训练,得到最终的Stacking集成模型。

另一方面,本发明还提供车载控制器局域网络入侵检测设备,所述设备包括存储器和处理器;所述存储器存储有实现上述车载控制器局域网络入侵检测方法的计算机程序,所述处理器执行所述计算机程序。

再一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述的计算机程序被处理器执行时实现上述车载控制器局域网络入侵检测方法的步骤。

本发明的车载控制器局域网络入侵检测方法及设备的有益效果如下:

本发明的车载控制器局域网络入侵检测方法及设备,如果出现各类别数据极度不平衡,则对多数类进行聚类,选取多个聚类中心,对每个聚类中心进行采样,这样既保证了多数类数据的多样性,又能去除多数类的冗余,在一定程度上能提高模型预测的准确性。对于少数类,首先进行聚类,得到少数类的多个聚类中心,通过 SMOTE方法根据其聚类中心进行插值来生成额外的样本,生成的新样本不会与原样本产生很大的偏差。对采样后的多数类样本和通过SMOTE生成的少数类样本进行拼接,得到待定数据集。使用Tomek Link采样法清洗掉待定数据集中类间重叠样本,使得互为最近邻的样本均属同一类别,从而能更好的进行预测。

本发明的车载控制器局域网络入侵检测方法及设备,对测试集合以及经过聚类混合采样之后的训练集进行特征选择,使用PSO-LightGBM双向特征选择方法筛选出使模型整体效果最好的特征组合,综合特征的重要程度和模型的准确率进行考虑,可确保留下的特征子集中不含无用特征且模型的准确率较高。通过车载控制器局域网络数据验证,经过本发明的车载控制器局域网络入侵检测方法中聚类混合采样和PSO-LightGBM双向特征选择处理后的数据在检测准确率上有一定的提升, 同时所用训练时间大幅降低。

本发明的车载控制器局域网络入侵检测方法及设备通过对训练数据进行聚类混合采样,大幅降低数据的冗余,同时对少数类别的数据进行过采样,确保模型能够准确的识别少数类攻击,通过特征选择方法,进一步提高模型的训练速度和准确率,最后通过Stacking集成模型对多个模型进行融合,提升了检测的稳定性和准确率,可以在计算能力受限的情况下,较好、较快的检测出车载控制器局域网络中出现的入侵信息。本发明方法在车载控制器局域网络入侵检测上与其他现有方法相比,具有更高的检测准确率和检测精确度、更低的检测漏报率,在一定程度上说明本发明方法可以更好的识别入侵信息,具有较好的实际可行性。

附图说明

图1是本发明的车载控制器局域网络入侵检测方法流程图。

图2是本发明的聚类混合采样的算法流程图。

图3是本发明的PSO-LightGBM双向特征选择的算法流程图。

图4是本发明的Stacking集成模型训练方法流程图。

图5是本发明的训练集和测试集示意图。

图6是本发明的分别采用原始数据集和经过聚类混合采样、双向特征选择处理后的数据集进行训练和检测的训练时间和检测准确率对比示意图。

图7是本发明的分别采用原始数据集和经过聚类混合采样与双向特征选择处理后的数据集进行测试的各类别精确度示意图。

图8是本发明方法与现有方法(ANN、KNN、SVM、MTH-IDS)在检测准确率上的对比示意图。

图9是本发明方法与现有方法(ANN、KNN、SVM、MTH-IDS)在各类别检测漏报率上的对比示意图。

图10是本发明方法与现有方法(ANN、KNN、SVM、MTH-IDS)在各类别检测精确度上的对比示意图。

具体实施方式

下面结合实施例并参照附图对本发明作进一步详细描述。

实施例1:

本发明的一个实施例,为一种车载控制器局域网络入侵检测方法。如图1所示,包括以下步骤:

一、对采集的原始数据进行数值化和归一化处理,得到预处理后的数据,并划分为训练集和测试集,如图2所示

本实施例以HCR实验室的车载控制器局域网络入侵检测数据集为例,对采集原始数据进行数值化处理,筛选数据字段长度为8的数据。该数据集的特征包括时间戳、ID、DLC以及Data数据。其中,ID为CAN消息的标识符,十六进制数;DLC为数据的字节数;Data数据为CAN消息数据,0-8个字节。为了避免因特征量纲不同对模型造成的影响,对数据进行归一化去除量纲,其计算公式为:

其中,表示经过归一化之后的数据,为特征的原始数据,表示该特征数据中的最小值,表示该特征数据中的最大值。

对预处理后的数据划分训练集和测试集。

通过聚类混合采样方法对所述预处理后的训练集数据进行混合采样,去除冗余,同时生成少数类攻击样本,得到经聚类混合采样的训练集数据。采用PSO-LightGBM双向特征选择方法对经聚类混合采样处理后的数据进行特征筛选,使用特征筛选的训练集数据对Stacking集成模型进行训练,得到训练好的Stacking集成模型,用于对测试集数据进行预测。本发明的聚类混合采样方法包括以下步骤。

首先对预处理后的训练集数据进行分析,判断各类别是否极度不平衡。

l如果样本不存在极度不平衡现象,则直接使用Kmeans对所有训练集数据所有类别进行聚类,从聚类中心挑选设定比例的数据,形成一个具有高度代表性的数据子集,直接对该数据子集使用TomekLink方法进行数据清洗,把清洗之后的数据作为新的训练集。Kmeans聚类采样与随机采样、同比例采样不同,聚类的目的是最小化每个数据点到相应聚类中心的距离平方和,因此相似的数据会被划分为同一个聚类,从不同聚类中进行采样,丢弃的大多是冗余数据,因此Kmeans聚类采样可以在不损失重要信息的情况下减少数据规模。

l如果样本出现各类别数据极度不平衡,则对多数类和少数类分别进行处理,最后对采样后的多数类样本和通过SMOTE生成的少数类样本进行拼接,得到待定数据集。具体包括:

对于多数类,从各聚类中心采集设定比例的数据,去除冗余。

对于少数类,通过 SMOTE方法根据其聚类中心进行插值来生成额外的样本,插值生成方法如下:

其中表示新生成的样本,表示聚类中心样本点,为选出的K近邻点,是一个随机数。

优选的,在另一个实施例中,对于少数类,在对少数类进行第一次聚类形成的聚类中心基础上进行二次聚类,依据二次聚类的聚类中心使用SMOTE方法生成同种类别的少数类数据。

此时待定数据集并不能直接使用,因为使用SMOTE生成的数据集会含有一些类间重叠样本,此类样本点的存在往往会导致分类困难。本发明使用Tomek Link采样法消除待定数据集中存在的噪音样本点,得到聚类混合采样后的训练集数据。其基本思想是:当距离最近的两个样本分属不同类别时,那么这两个样本构成一个Tomek Link对,要么其中的一个样本是噪音,要么两个样本均在边界附近。通过移除Tomek Link对可以清洗掉类间重叠样本,使得互为最近邻的样本均属同一类别,从而能更好的进行预测。

二、采用PSO-LightGBM双向特征选择方法对所述预处理后的数据进行特征筛选。

本发明的车载控制器局域网络入侵检测方法中,采用PSO-LightGBM双向特征选择方法对所述预处理后的数据进行特征筛选。包括入侵检测时对测试集进行特征选择,以及模型训练时对经过聚类混合采样之后的训练集进行特征选择。

本发明使用PSO-LightGBM双向特征选择方法筛选出使模型整体效果最好的特征组合。

如图3所示,本发明的PSO-LightGBM双向特征选择方法,首先使用PSO算法(Particle Swarm Optimization,粒子群优化算法)对LightGBM(Light Gradient Boosting Machine,梯度提升机轻量级框架)进行参数寻优,使模型整体效果最优;然后使用LightGBM对特征重要性进行降序排列,对排序后的全部特征集合进行筛选,每次从当前的特征集合中删除重要程度最低的特征,构成新的特征子集,对预处理后的数据按照新的特征子集进行特征删减,通过Stacking集成模型进行分类预测;如果预测结果的精确度未降低,则删除该重要程度最低的特征,循环此过程,对所述新的特征子集进行特征删减;如果预测结果的精确度降低,则撤回此次特征删减,特征删减结束,返回只含特征删减后特征的数据集。

本发明的PSO-LightGBM双向特征选择方法,综合考虑特征的重要程度和模型的准确率,可确保留下的特征子集中不含无用特征,且模型的准确率较高。

三、使用经过数据预处理和特征选择之后的训练集数据对Stacking集成模型进行训练,保存训练后的Stacking集成模型。训练后的Stacking集成模型用于进行车载控制器局域网络入侵检测。

如图4所示,本发明的Stacking集成模型主要分为两层。第一层分别使用XGBoost模型 、LightGBM模型以及CatBoost模型通过五折交叉验证得到初步分类结果,将所述初步分类结果作为特征进行横向拼接,保存拼接结果,得到新的训练集。第二层使用第一层拼接得到的数据(新的训练集数据)对MLP模型进行训练,得到最终的Stacking集成模型。

四、使用步骤三训练好的Stacking集成模型对经过预处理和特征筛选之后的测试集数据进行入侵检测预测,得到最终的入侵检测结果。

为了验证本发明中的聚类混合采样和PSO-LightGBM双向特征选择的有效性,采用原始车载控制器局域网络训练集和经过聚类混合采样与PSO-LightGBM双向特征选择的车载控制器局域网络训练集合,通过LightGBM进行训练并预测,训练数据和测试数据如图5所示,结果如图6、图7所示。可以看出经过聚类混合采样和PSO-LightGBM双向特征选择处理后的数据在检测准确率上有一定的提升, 同时所用训练时间大幅降低,表明所提方法有效。

为了验证本发明方法相较于现有方法具有较好的效果和稳定性,使用经过同样处理的车载控制器局域网络数据集进行验证,结果如图8、图9、图10所示。综合上述实验结果分析可知,本发明方法在车载控制器局域网络入侵检测上具有更优、更稳定的检测效果,在一定程度上说明本发明方法可以更好的识别入侵信息,具有较好的实际可行性。

在一些实施例中,上述技术的某些方面可以由执行软件的处理系统的一个或多个处理器来实现。该软件包括存储或以其他方式有形实施在非暂时性计算机可读存储介质上的一个或多个可执行指令集合。软件可以包括指令和某些数据,这些指令和某些数据在由一个或多个处理器执行时操纵一个或多个处理器以执行上述技术的一个或多个方面。非暂时性计算机可读存储介质可以包括例如磁或光盘存储设备,诸如闪存、高速缓存、随机存取存储器(RAM)等的固态存储设备或其他非易失性存储器设备。存储在非临时性计算机可读存储介质上的可执行指令可以是源代码、汇编语言代码、目标代码或被一个或多个处理器解释或以其他方式执行的其他指令格式。

计算机可读存储介质可以包括在使用期间可由计算机系统访问以向计算机系统提供指令和/或数据的任何存储介质或存储介质的组合。这样的存储介质可以包括但不限于光学介质(例如,光盘(CD)、数字多功能光盘(DVD)、蓝光光盘)、磁介质(例如,软盘、磁带或磁性硬盘驱动器)、易失性存储器(例如,随机存取存储器(RAM)或高速缓存)、非易失性存储器(例如,只读存储器(ROM)或闪存)或基于微机电系统(MEMS)的存储介质。计算机可读存储介质可以嵌入计算系统(例如,系统RAM或ROM)中,固定地附接到计算系统(例如,磁性硬盘驱动器),可移除地附接到计算系统(例如,光盘或通用基于串行总线(USB)的闪存),或者经由有线或无线网络(例如,网络可访问存储(NAS))耦合到计算机系统。

请注意,并非上述一般性描述中的所有活动或要素都是必需的,特定活动或设备的一部分可能不是必需的,并且除了描述的那些之外可以执行一个或多个进一步的活动或包括的要素。更进一步,活动列出的顺序不必是执行它们的顺序。而且,已经参考具体实施例描述了这些概念。然而,本领域的普通技术人员认识到,在不脱离如下权利要求书中阐述的本公开的范围的情况下,可以进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的,并且所有这样的修改被包括在本公开的范围内。

上面已经关于具体实施例描述了益处、其他优点和问题的解决方案。然而,可能导致任何益处、优点或解决方案发生或变得更明显的益处、优点、问题的解决方案以及任何特征都不应被解释为任何或其他方面的关键、必需或任何或所有权利要求的基本特征。此外,上面公开的特定实施例仅仅是说明性的,因为所公开的主题可以以受益于这里的教导的本领域技术人员显而易见的不同但等同的方式进行修改和实施。除了在权利要求书中描述的以外,没有意图限制在此示出的构造或设计的细节。因此明显的是,上面公开的特定实施例可以被改变或修改,并且所有这样的变化被认为在所公开的主题的范围内。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献