1.一种基于增量学习的车载CAN网络入侵检测系统,其特征在于,包括汽车终端模块、路侧边缘模块、云端服务器和增量学习检测模块;
所述汽车终端模块用于在线采集CAN网络数据,预处理后与车辆身份ID一起发送至所述路侧边缘模块,并接收返回的检测结果,产生异常警报;
所述路侧边缘模块用于部署基于增量学习的入侵检测模型,接收所述汽车终端模块发送的CAN网络数据,进行异常检测,并使用接收的数据对入侵检测模型增量学习;
所述云端服务器用于存储不同车辆对应的入侵检测模型,收到所述路侧边缘模块请求后发送入侵检测模型到路侧边缘模块;
所述增量学习检测模块使用标记的真实车辆数据训练深度神经网络的基础模型,采用无标记数据进行模型更新。
2.根据权利要求1所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,所述汽车终端模块在车辆行驶过程中,依靠无线通信方式不断检测与路侧边缘模块之间的通信信号强度,选择通信信号强度强的路侧边缘模块进行连接,直至通信信号强度不满足条件,而重新选择路侧边缘模块进行连接。
3.根据权利要求2所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,所述汽车终端模块通过网关采集CAN网络数据,对数据进行预处理,按照部署在路侧边缘模块中的入侵检测模型所需要的格式准备数据,并在已处理好的数据中添加车辆身份标识号,将处理过的数据传输到连接的路侧边缘模块,以进行模型下载,或进行入侵检测和模型更新。
4.根据权利要求1所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,若第一次接收到车端发送数据,所述路侧边缘模块将接收到的数据中的汽车身份ID发送至云端服务器,查找对应的入侵检测模型并下载。
5.根据权利要求1所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,所述增量学习检测模块具有离线训练和在线检测与更新两个阶段;在离线训练阶段,采用具有攻击标签的真实车辆数据样本,对深度神经网络进行训练得到初始入侵检测模型,训练好后存入云端服务器;在线检测与更新阶段,入侵检测模型从云端服务器下载后,部署在路侧边缘模块,进行在线入侵检测,同时基于增量学习,使用预测数据对入侵检测模型进行更新。
6.根据权利要求5所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,所述初始入侵检测模型的构建过程为:使用已标记的CAN网络数据样本,选择深度神经网络作为基础分类模型,输入层拥有n个输入结点,负责分批次处理带标签的训练样本数据,组织为输入向量,其中 为训练样本的第j个特征值;
隐藏层负责学习样本的数据特征,隐藏层的计算公式为:
式中, 、 、 分别为第i个隐藏层的权重矩阵、偏置向量和输出向量,当i=1时,为整个模型的输入向量x, 为第i个隐藏层对其输入向量进行线性操作的中间向量,为隐藏层的激活函数: ,实现对输入参数的非线性转换;
输出层根据最后一层隐藏层的输出结果,计算训练样本属于正常数据或异常数据的对应值,其计算公式为:式中, 为最后一个隐藏层的输出向量, 为输出层的权重矩阵, 为输出层的偏置向量, ,其中 、 分别为CAN网络数据正常和异常的对应值;
最后使用softmax函数计算样本数据分别对应正常和异常的概率值,依此概率值判断并输出检验结果。
7.根据权利要求6所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,设置交叉熵损失函数作为离线训练的损失函数,即:由上式计算出处理m条样本数据时的平均损失值,为实现平均损失最小化,在模型训练的反向传播过程中,使用自适应矩估计算法更新权重矩阵与偏置向量:。
8.根据权利要求7所述的基于增量学习的车载CAN网络入侵检测系统,其特征在于,增量学习首先基于概率分布梯度协方差,求得模型参数的重要度矩阵F,该矩阵用于衡量深度神经网络中每一个参数的重要性,进而基于F给损失函数添加正则化项,增量式训练使用的损失函数如下:其中, 为针对新的训练样本集的交叉熵损失函数, 为超参数, 为在线更新训练时第i个参数, 为更新训练前的第i个参数。
9.一种基于增量学习的车载CAN网络入侵检测方法,其特征在于,包括:终端在线采集CAN网络数据,预处理后与车辆身份ID一起发送至边缘端,并接收返回的检测结果,产生异常警报;边缘端第一次接收车端数据后,从云端下载并部署入侵检测模型,接收终端发送的CAN网络数据,进行异常检测,并将检测结果返回终端,同时使用接收的数据对入侵检测模型增量学习,将更新后的不同车辆对应的入侵检测模型储存在云端;云端收到边缘端请求后对边缘端发送入对应的侵检测模型,且收到更新后的入侵检测模型,进行更新存储。
10.根据权利要求9所述的基于增量学习的车载CAN网络入侵检测方法,其特征在于,使用标记的真实车辆数据训练深度神经网络的基础模型,并在边缘端进行在线检测和增量学习,采用无标记数据进行模型更新。