欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2021106525713
申请人: 杭州电子科技大学
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.物联网下基于长短期记忆自编码分类器的入侵检测方法,其特征在于,包括如下步骤:步骤1:对网络流量数据进行预处理,具体步骤为:

步骤1.1,将网络流量数据作为数据集,将数据集的字符特征数据转换成数值,再对该特征数值进行one‑hot编码;

步骤1.2,分别对每个特征数值进行归一化,公式如下:

其中xmin为该特征的最小值,xmax为该特征的最大值;

步骤1.3,分割数据集,对整个数据集以8:2的比例分成训练集和测试集;

步骤1.4,分别取出训练集和测试集中的Label字段,并逐条流量数据进行判断,若Label字段值为‘Benign’,则标注为0,否则标注为1,即正常样本标注为0,异常样本标注为

1;

步骤1.5,将训练数据保存为Train_X,训练标签保存为Train_Y;测试数据保存为Test_X,测试标签保存为Test_Y;

步骤2:设计搭建长短期记忆自编码分类器;

步骤2.1,LSTM‑AutoEncoder‑Classifier由三个分模型组成,分别是LSTM‑Encoder模型、LSTM‑Decoder模型和Encoder‑Classifier模型;

步骤2.2,搭建LSTM‑Encoder模型,该模型由一层输入层、四层隐藏层和一层输出层组成;输入层为60个隐藏神经元的LSTM层,其激活函数是Relu函数,初始化权值满足高斯分布,该层的输出保留时间戳序列;第一层隐藏层为50个隐藏神经元的LSTM层,激活函数是Tanh函数,初始化权值和bias都满足高斯分布,输出时间戳序列;第二层隐藏层为随机丢弃权值概率50%的Dropout层;第三层隐藏层为30个隐藏神经元的LSTM层,激活函数是Tanh函数,初始化权值和bias满足高斯分布,同时权值和bias存在L2约束,输出时间戳序列;第四层隐藏层是随机丢弃权值概率50%的Dropout层;

步骤2.3,搭建LSTM‑Decoder模型,该模型包含一层输入层、三层隐藏层和一层输出层;

输入层为50个隐藏神经元的LSTM层,其激活函数是Relu函数,初始化权值满足高斯分布,输出时间戳序列;第一层隐藏层为60个隐藏神经元的LSTM层,其激活函数是Tanh函数,初始化权值和bias满足高斯分布,输出时间戳序列;第二层隐藏层为随机丢弃权值概率50%的Dropout层;第三层隐藏层是LSTM层且隐藏神经元为原始数据集特征数,激活函数是Tanh函数,初始化权值和bias满足高斯分布,同时权值和bias存在L2约束,输出时间戳序列;输出层是随机丢弃权值概率为50%的Dropout层;

步骤2.4,搭建Encoder‑Classifier模型;该模型是由全连接层和sigmoid函数组成的;

该模型由一层输入层,四层隐藏层和一层输出层组成;输入层是神经元数量为20的全连接层,权值和bias满足正态分布以及He初始化,激活函数是Relu函数;第一层隐藏层为神经单元数量为10的全连接层,权值和bias满足正态分布以及He初始化,激活函数是Relu函数;第二层隐藏层为随机丢弃权值概率60%的Dropout层;第三层隐藏层为神经单元数量为10的全连接层;第四层隐藏层为随机丢弃权值概率为60%的Dropout层;输出层为含有一个神经元的全连接层,激活函数是sigmoid函数;

步骤2.5,搭建LSTM‑AutoEncoder模型;该模型由LSTM‑Encoder模型和LSTM‑Decoder模型组成;模型上部为LSTM‑Encoder模型,下部为LSTM‑Decoder模型;

步骤3:设计搭建门控循环单元自编码分类器GRU‑AutoEncoder‑Classifier;

步骤3.1,将LSTM‑AutoEncoder‑Classifier模型中的LSTM层改成GRU层得到GRU‑AutoEncoder‑Classifier;

步骤4:搭建BGRU和BLSTM模型;

步骤4.1,BGRU模型由两层双向GRU网络层和一层全连接层组成;第一层的GRU层含有60个神经元,激活函数是Relu函数,输出时间戳序列;第二层的GRU层含有10个神经元,激活函数是Relu函数,输出最后一个时间戳;全连接层含有一个神经元且激活函数是sigmoid函数;

步骤4.2,BLSTM模型与BGRU模型区别在于将GRU替换成LSTM;

步骤5:配置模型的优化器、损失函数和迭代次数;

步骤5.1,LSTM‑AutoEncoder和GRU‑AutoEncoder这两个模型的优化器为Adam,损失函数是均方误差(MSE),迭代次数都为30次;MSE的公式如下:其中yi是真实数据, 是预测的数据,m为流量数据数量;

步骤5.2,Encoder‑Classifier模型的优化器为Adam,损失函数是binary_crossentropy函数,迭代次数为10次;

步骤5.3,BGRU和的模型的优化器为Adam,损失函数是binary_crossentropy函数,迭代次数为5次;

步骤6,利用训练数据集对模型进行训练;

步骤6.1,一次训练所抓取的数据样本数量为256;

步骤6.2,每次训练将训练集中的20%数据当作验证集,对训练中的模型进行实时验证;

步骤6.3,训练LSTM‑AutoEncoder‑Classifier,共有两个过程,第一个过程训练LSTM‑AutoEncoder模型,第二个过程训练AutoEncoder‑Classifier模型;

步骤6.4,训练GRU‑AutoEncoder‑Classifier模型和BGRU、BLSTM模型;

步骤6.5,记录各个模型训练的时间;

步骤6.6,保存训练之后的模型;

步骤7,评估模型;

步骤7.1,用训练好的模型对测试集的数据进行预测,记录下各个模型预测的结果;

步骤7.2,根据预测的结果数据和测试集标注的数据进行模型评估,绘制出各个模型在二分类情况下的ROC曲线并计算模型的准确率ACC、误报率FAR和检测率DR,精准率Precision、召回率Recall和F1‑Measure;

TP:分类器识别正确,分类器认为该样本为正样本;

TN:分类器识别正确,分类器认为该样本为负样本;

FP:分类器识别结果错误,分类器认为该样本是正样本;所以实际上该样本是负样本;

FN:分类器识别结果错误,分类器认为该样本是负样本;所以实际上该样本是正样本;

步骤7.3,记录模型的评估指标并进行比较。