1.一种基于大数据的计算机网络安全分析方法,包括:采集用户的行为数据和交互数据,形成用户数据集;其中,行为数据包含用户的头部姿态、键盘输入和鼠标移动轨迹;交互数据包含用户点击网页的位置;
对采集的用户数据集进行预处理,将预处理后的用户数据集存储至分布式数据库HDFS;
采用联邦学习架构,以预处理后的用户数据集为训练样本,在用户端本地训练机器学习模型,用于用户状态分析;
将训练后的机器学习模型的参数上传至云服务器,在云服务进行全局聚合,得到全局机器学习模型;其中,采用集成学习方法,根据多个本地机器学习模型的判断结果,得到全局聚合后的全局机器学习模型;
根据全局机器学习模型和交互数据,采用基于异常检测的无监督学习方法,对用户的计算机网络行为进行安全分析;
预处理,包括:
采用统计分析方法获取用户数据集的统计特征;
根据提取的统计特征,计算每个统计特征对用户异常行为检测任务的信息增益;
选择信息增益大于第一阈值的特征,构成关键特征子集;
从用户数据集中随机选择样本子集,并从关键特征子集中随机选择特征,根据选择的特征递归地划分样本子集,构建孤立树;
构建多个孤立树,生成孤立森林;
对用户数据集中的每个数据点,计算数据点在所有孤立树中的平均路径长度,将平均路径长度小于第二阈值的数据点,标记为异常值;
其中,计算信息增益,包含:
计算用户数据集的经验熵;
计算每个统计特征对用户数据集的条件熵;
将经验熵和条件熵的差值作为对应统计特征的信息增益;
预处理,还包括:
根据获得的关键特征子集,对用户数据集进行建模,采用高斯混合分布拟合用户数据分布,通过期望最大化算法估计高斯混合分布的参数;
计算标记为异常值的数据点,在高斯混合分布中的后验概率;
根据异常值的后验概率的排序分位点设置第三阈值;
将后验概率小于第三阈值的异常值过滤,得到过滤后的用户数据集;
将过滤后的用户数据集,作为预处理后的用户数据集;
得到本地机器学习模型,包括:
在云服务端初始化全局机器学习模型的参数,将初始化的模型参数分发至各个用户端;
在每个用户端,将预处理后的用户数据集划分为训练集、验证集和测试集;
利用训练集,训练神经网络BiLSTM,作为本地机器学习模型;
计算损失函数相对BiLSTM模型中每个参数的梯度,并累积梯度的平方和;
根据累积梯度的平方和,对每个参数的学习率进行调整;
利用调整后的学习率,更新BiLSTM模型的参数,直至模型收敛或达到预设的迭代次数;
利用验证集,评估BiLSTM模型的性能指标,性能指标包含准确率和F1分数;
将训练得到的BiLSTM模型的参数和性能指标上传至云服务器,参与全局聚合;
利用训练集,训练神经网络BiLSTM,作为本地机器学习模型,包括:将训练集中的行为数据和交互数据,转化为时间序列数据,作为BiLSTM网络的输入序列;其中,BiLSTM网络由前向LSTM和后向LSTM组成;
前向LSTM根据当前时间步的输入和前一时间步的隐藏状态,调整当前时间步的前向隐藏状态;
后向LSTM根据当前时间步的输入和后一时间步的隐藏状态,调整当前时间步的后向隐藏状态;
将前向和后向的隐藏状态拼接,得到当前时间步的BiLSTM输出;
将BiLSTM最后一个时间步的隐藏状态作为用户状态的查询向量;用户状态包含用户的行为模式和异常程度;
采用多层感知机MLP作为注意力函数,根据BiLSTM的输出和用户状态的查询向量,计算每个时间步的注意力权重;
对BiLSTM的输出序列进行注意力加权求和,得到聚合特征向量;
将聚合特征向量输入到全连接层,计算用户状态的概率分布:根据用户状态的概率分布,计算交叉熵损失函数,并采用AdaGrad优化算法对BiLSTM模型的参数进行调整,得到训练后的本地机器学习模型;
计算用户状态的概率分布,通过如下公式:其中,pi为第i个用户状态的归一化概率值,xi为聚合特征向量经过全连接层变换后得到的第i个输出值,μ为对全连接层输出进行Batch Norm归一化后的均值,σ为Batch Norm归一化后的标准差,ε为一个很小的正数,N为用户状态的类别总数。
2.根据权利要求1所述的基于大数据的计算机网络安全分析方法,其特征在于:得到全局机器学习模型,包括:
在云服务器端,根据每个本地机器学习模型的准确率和F1分数,计算本地机器学习模型的权重;
根据权重,对各个本地机器学习模型的参数进行加权平均,得到全局机器学习模型的参数;
利用测试集,对聚合后的全局机器学习模型进行评估;
将聚合后的全局机器学习模型的参数分发至各个用户终端,作为下一轮本地训练的初始参数;
将训练得到的全局机器学习模型部署到云服务端和用户端,用于对用户的计算机网络行为进行安全分析。
3.根据权利要求2所述的基于大数据的计算机网络安全分析方法,其特征在于:通过如下公式计算权重:
其中,acci、f1i、auci分别为第i个本地模型的准确率、F1分数和AUC值;a、b、c为权重系数;ε为平滑项;N为本地模型总数;表示点乘。
4.根据权利要求3所述的基于大数据的计算机网络安全分析方法,其特征在于:采用基于异常检测的无监督学习方法,对用户的计算机网络行为进行安全分析,包括:提取交互数据中用户点击网页的位置信息,利用预训练的CNN神经网络对位置信息进行编码,获取用于异常检测的位置特征向量;
将提取的位置特征向量和获得的统计特征进行拼接,作为风险特征向量;
利用预训练的SVM分类器对获得的风险特征向量进行分类,得到预测风险等级;
根据预测风险等级,调整全局机器学习模型的权重系数a、b和c;
将调整后的模型参数下发至各个用户端的本地机器学习模型;
在用户端,利用下发的参数更新本地机器学习模型,并利用更新后的本地机器学习模型,对用户的计算机网络行为进行安全分析。