公开/公告号CN116644298A
专利类型发明专利
公开/公告日2023-08-25
原文格式PDF
申请/专利权人 中国平安财产保险股份有限公司;
申请/专利号CN202310704526.7
发明设计人
申请日2023-06-14
分类号G06F18/21;G06F18/15;G06F18/2135;G06F18/214;G06F18/243;G06F18/2433;G06N3/006;
代理机构深圳市世联合知识产权代理有限公司;
代理人郝少剑
地址 518000 广东省深圳市福田区益田路5033号平安金融中心12、13、38、39、40层
入库时间 2024-04-18 19:56:02
技术领域
本申请涉及金融科技技术领域,应用于安全访问检测领域中,保证信息安全,尤其涉及一种对网络攻击检测模型性能检测的方法及其相关设备。
背景技术
随着人们对互联网的使用越来越频繁,网络中的恶意行为和攻击行为的数量也在增加。非法的网络入侵不仅会造成高额的经济损失,更有可能造成对企业及个人的信息安全产生严重影响。早期人们为了保护信息安全,采用的手段有访问控制、防火墙、流量控制等,随着攻击手段的多样化以及现在网络环境的变化,其实现效果在复杂网络环境中也并不理想。
随着人工智能技术的发展,很多研究人员将机器学习技术应用在入侵检测领域,将机器学习技术与入侵检测技术相结合,使得入侵检测研究有了更深层次的进展,但是目前大多数机器学习参数都采用网格搜索法来确定,或是直接赋予参数;在网络数据处理上,由于真实网络数据中各类数据流量差别较大,导致多数训练模型在处理不平衡数据上的泛化能力不够好,无法对复杂网络环境下的非法入侵进行高效检测问题。因此,现有技术在进行网络攻击检测时,还存在无法对复杂网络环境下的非法入侵进行高效检测的问题。
发明内容
本申请实施例的目的在于提出一种对网络攻击检测模型性能检测的方法及其相关设备,以解决现有技术在进行网络攻击检测时,还存在无法对复杂网络环境下的非法入侵进行高效检测的问题。
为了解决上述技术问题,本申请实施例提供一种对网络攻击检测模型性能检测的方法,采用了如下所述的技术方案:
一种对网络攻击检测模型性能检测的方法,包括下述步骤:
获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果;
采用PCA分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征,其中,所述目标特征指各个网络访问数据的目标分类类型,其中,所述目标分类类型包括:正常访问类型和非正常访问类型;
以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;
按照预设的比例划分所述批量网络访问数据为训练样本集和测试样本集;
将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;
将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;
根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能。
进一步的,所述获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果的步骤,具体包括:
通过数据采集或者数据接收的方式,获取对目标系统待进行访问的批量网络访问数据;
根据预设的数据统计指标,对所述批量网络访问数据进行数值化和归一化处理,获得所述数据预处理结果。
进一步的,所述采用PCA分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征的步骤,具体包括:
将所述数据预处理结果展示为N×M的矩阵阵列,其中,N为行数,表示所述批量网络访问数据的批量值,M为列数,表示所述预设的数据统计指标的指标数量;
对所述N×M的矩阵阵列去中心化,得到新矩阵X,其中,所述去中心化具体实现方式为:所述N×M的矩阵阵列中每一列中各个列值减去其所在列的均值,其中,所述新矩阵X仍然为N×M的矩阵阵列;
计算去中心化后新矩阵X的协方差矩阵C,其中,所述协方差矩阵C为M×M的矩阵阵列;
根据所述预设的数据统计指标,对所述协方差矩阵C进行特征分解,获取所述协方差矩阵的特征值及特征向量;
将特征向量按照对应特征值从左到右进行降序排序,获取降至K维的投影矩阵,其中,K维为所述降维处理的目标维度;
根据所述目标特征对所述投影矩阵中各矩阵点进行划分整理,根据划分整理结果,确定所述批量网络访问数据中正常访问类型和非正常访问类型的网络访问数据。
进一步的,所述以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型的步骤,具体包括:
以所述预设的数据统计指标为以XGBoost算法构建的目标分类决策树的叶子节点;
以所述目标特征为以XGBoost算法构建的所述目标分类决策树根节点的下一级分类节点;
根据所述XGBoost算法对应分类决策树的叶子节点的个数和所述根节点的下一级分类节点个数计算出所述XGBoost算法对应分割树的最大决策深度;
设置基于XGBoost算法的初始化分类决策模型的超参数,其中,所述超参数包括所述最大决策深度、学习率、最小划分损失阈值以及模型复杂度控制参数;
获取预先设置的经验损失函数和目标训练函数;
将所述预设的数据统计指标、所述目标特征、所述最大决策深度、学习率、最小划分损失阈值、模型复杂度控制参数、所述经验损失函数和目标训练函数配置给所述基于XGBoost算法的初始化分类决策模型,完成对所述初始化分类决策模型的构建。
进一步的,在执行所述将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型的步骤之前,所述方法还包括:
以所述预设的数据统计指标为叶子节点和以所述目标特征为根节点的下一级节点,随机构建若干个分类决策树;
获取预设设置的所述改进鲸鱼群算法的种群数量和最大迭代次数,其中,所述改进鲸鱼群算法的种群数量小于等于所述若干个分类决策树的数量;
所述将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型的步骤,具体包括:
步骤A,获取需要优化的XGBoost算法的超参数,并分别设置取值范围,其中,所述需要优化的XGBoost算法的超参数包括所述最大决策深度、学习率、最小划分损失阈值;
步骤B,初始化鲸鱼群优化算法,将所述改进鲸鱼群算法的种群数量和最大迭代次数设置为所述鲸鱼群优化算法的初始参数;
步骤C,将获取的所述训练样本集分别输入进所述若干个分类决策树进行决策训练;
步骤D,获取所述若干个分类决策树中每个分类决策树对应的决策训练结果;
步骤E,根据所述每个分类决策树对应的决策训练结果的数目和所述训练样本集中元素的数目,采用概率值法计算所述若干个分类决策树中每个分类决策树对应的决策度值;
步骤F,筛选出决策度值大于预设阈值时所对应的所有分类决策树,并根据预设的收敛度算法,计算收敛因子;
步骤G,根据所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量,更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数;
步骤H,重复执行步骤C至步骤G,直到满足预设的执行终止条件,停止重复执行;
步骤I,从所述所有执行输出结果内筛选出决策度值大于所述预设阈值,且所述决策度值为最大值时所对应的分类决策树作为最优筛选个体;
步骤J,筛选出所述最优筛选个体对应的分类决策树,即获得训练完成的网络攻击检测模型。
进一步的,所述根据预设的收敛度算法,计算收敛因子的步骤,具体包括:
根据预设的收敛度算法:
所述更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数的步骤,具体包括:
统计每次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量,重新设定为所述改进鲸鱼群算法的种群数量;
每次迭代后,重新设定最大剩余迭代次数,其中,重新设定的最大剩余迭代次数在前一次迭代时设定的最大剩余迭代次数的基础上累减1;
根据所述最大决策深度、学习率、最小划分损失阈值分别对应的取值范围,在每次迭代后,随机动态调整所述最大决策深度、学习率、最小划分损失阈值;
所述预设的执行终止条件包括剩余最大迭代次数为0、当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1,所述直到满足预设的执行终止条件,停止重复执行的步骤,具体包括:
判断所述最大剩余迭代次数是否为0;
判断当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1;
若所述最大剩余迭代次数为0或者当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1,则满足预设的执行终止条件。
进一步的,所述将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据的步骤,具体包括:
获取所述测试样本集输入所述训练完成的网络攻击检测模型中;
根据所述训练完成的网络攻击检测模型筛选出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;
所述根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能的步骤,具体包括:
识别所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;
并根据所述降维处理结果,获取所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据在进行所述降维处理时所对应的目标特征;
统计所述目标特征分别与所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据一致的总数量,并根据所述总数量和所述测试样本集计算输出为真的概率值;
判断所述输出为真的概率值是否大于预设的检测性能阈值;
若大于,则所述改进后的网络攻击检测模型的检测性能达标;
否则,所述改进后的网络攻击检测模型的检测性能不达标,通过重新优化所述XGBoost算法的超参数和调整所述鲸鱼群优化算法的初始参数进行二次优化,直到所述改进后的网络攻击检测模型的检测性能达标,停止二次优化。
为了解决上述技术问题,本申请实施例还提供一种对网络攻击检测模型性能检测的装置,采用了如下所述的技术方案:
一种对网络攻击检测模型性能检测的装置,包括:
数据预处理模块,用于获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果;
特征降维筛选模块,用于采用PCA分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征,其中,所述目标特征指各个网络访问数据的目标分类类型,其中,所述目标分类类型包括:正常访问类型和非正常访问类型;
初始化模型构建模块,用于以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;
样本集划分模块,用于按照预设的比例划分所述批量网络访问数据为训练样本集和测试样本集;
模型训练模块,用于将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;
模型测试模块,用于将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;
模型检测性能分析模块,用于根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现上述所述的对网络攻击检测模型性能检测的方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上述所述的对网络攻击检测模型性能检测的方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:
本申请实施例所述对网络攻击检测模型性能检测的方法,通过获取对目标系统待进行访问的批量网络访问数据,并进行数据预处理;采用PCA分析法对数据预处理结果进行降维处理筛选出目标特征;以目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;将训练样本集输入基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;根据所述测试样本集进行测试,并分析所述改进后的网络攻击检测模型的检测性能。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2根据本申请的对网络攻击检测模型性能检测的方法的一个实施例的流程图;
图3根据本申请的对网络攻击检测模型性能检测的装置的一个实施例的结构示意图;
图4根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving PictureExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的对网络攻击检测模型性能检测的方法一般由服务器/终端设备执行,相应地,对网络攻击检测模型性能检测的装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的对网络攻击检测模型性能检测的方法的一个实施例的流程图。所述的对网络攻击检测模型性能检测的方法,包括以下步骤:
步骤201,获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果。
本实施例中,所述获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果的步骤,具体包括:通过数据采集或者数据接收的方式,获取对目标系统待进行访问的批量网络访问数据;根据预设的数据统计指标,对所述批量网络访问数据进行数值化和归一化处理,获得所述数据预处理结果。
本实施例中,所述归一化处理,可以采用预设的归一化处理公式实现,例如:
本实施例中,所述预设的数据统计指标包括UV(UniqueVisitor指某个时间段内的独立访客数量)值、PV(PageView指某个时间段内的总访问量)值、新访问率、访问页面数、停留时间、跳出率、访问成功记录、访问失败记录等。
本实施例中,所述根据预设的数据统计指标,对所述批量网络访问数据进行数值化和归一化处理的步骤,一种具体的实现方式为:若所述预设的数据统计指标仅包括上述UV值、PV值、新访问率、访问页面数、停留时间、跳出率等数值型数据,直接获取每个数据统计指标对应的数值型数据,再对批量网络访问数据分别对应的每个数据统计指标进行归一化处理;另一种具体的实现方式为:若所述预设的数据统计指标不仅仅只包括上述UV值、PV值、新访问率、访问页面数、停留时间、跳出率等数值型数据,还包括非数值型数据,首先,将所述非数值型数据拟化为数值型数据,同理,采用上述方式进行归一化处理。
通过对各个数据统计指标进行数据预处理,方便后续对所述数据统计指标进行特征分析。
步骤202,采用PCA分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征。
本实施例中,所述目标特征指各个网络访问数据的目标分类类型,其中,所述目标分类类型包括:正常访问类型和非正常访问类型。
本实施例中,所述正常访问类型和非正常访问类型的划分,与具体的网络访问行为有关,例如,在某个页面能够持续访问预设秒值以上,则不被强制踢出,即为正常访问类型,否则为非正常访问类型。
本实施例中,所述采用PCA(Principal Component Analysis,主成分分析)分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征的步骤,具体包括:将所述数据预处理结果展示为N×M的矩阵阵列,其中,N为行数,表示所述批量网络访问数据的批量值,M为列数,表示所述预设的数据统计指标的指标数量;对所述N×M的矩阵阵列去中心化,得到新矩阵X,其中,所述去中心化具体实现方式为:所述N×M的矩阵阵列中每一列中各个列值减去其所在列的均值,其中,所述新矩阵X仍然为N×M的矩阵阵列;计算去中心化后新矩阵X的协方差矩阵C,其中,所述协方差矩阵C为M×M的矩阵阵列;根据所述预设的数据统计指标,对所述协方差矩阵C进行特征分解,获取所述协方差矩阵的特征值及特征向量;将特征向量按照对应特征值从左到右进行降序排序,获取降至K维的投影矩阵,其中,K维为所述降维处理的目标维度;根据所述目标特征对所述投影矩阵中各矩阵点进行划分整理,根据划分整理结果,确定所述批量网络访问数据中正常访问类型和非正常访问类型的网络访问数据。
本实施例中,所述目标特征可以为所述预设的数据统计指标中已包含的某些主要特征,也可以为根据降维处理结果拟定命名的新特征。以上述预设的数据统计指标为例,假设所述预设的数据统计指标仅包含上述UV值、PV值、新访问率、访问页面数、停留时间、跳出率,如果获取的目标特征为停留时间,则所述目标特征为所述数据统计指标中已包含的特征,如果获取的目标特征为正常访问类型和攻击访问类型,显然,上述所述预设的数据统计指标不直接包含正常访问类型和攻击访问类型这两个指标,则需要通过综合分析方式,结合上述UV值、PV值、新访问率、访问页面数、停留时间、跳出率等多维特征,进行降维处理和分析,最终获取新的拟化指标来代表正常访问类型和攻击访问类型。
通过PCA分析法,实现对批量网络访问数据的降维处理,降维是将高维度的数据保留下最重要的一些特征,去除噪声和不重要的特征,从而实现提升数据处理速度的目的,通过降维处理,剔除用于一些表征正常访问类型数据和非正常访问类型数据的非重要特征,仅保留一些重要的特征区分网络访问数据中的正常访问类型数据和非正常访问类型数据,一定程度上降低了过多冗杂特征的影响,提高了数据处理速度。
步骤203,以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型。
本实施例中,所述以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型的步骤,具体包括:以所述预设的数据统计指标为以XGBoost算法构建的目标分类决策树的叶子节点;以所述目标特征为以XGBoost算法构建的所述目标分类决策树根节点的下一级分类节点;根据所述XGBoost算法对应分类决策树的叶子节点的个数和所述根节点的下一级分类节点个数计算出所述XGBoost算法对应分割树的最大决策深度;设置基于XGBoost算法的初始化分类决策模型的超参数,其中,所述超参数包括所述最大决策深度、学习率、最小划分损失阈值以及模型复杂度控制参数;获取预先设置的经验损失函数和目标训练函数;将所述预设的数据统计指标、所述目标特征、所述最大决策深度、学习率、最小划分损失阈值、模型复杂度控制参数、所述经验损失函数和目标训练函数配置给所述基于XGBoost算法的初始化分类决策模型,完成对所述初始化分类决策模型的构建。
本实施例中,所述以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型,实质上就是:将所述批量网络访问数据对应的各个数据统计指标作为各个叶子节点,进行梯度提升构建多个包含若干个分类决策层级决策树,最后筛选出对所述批量网络访问数据中正常访问类型的网络访问数据和攻击访问类型的网络访问数据分类最适应的分类决策树,在进行模型构建时,采用XGBoost算法构建初始化分类决策模型,因此,需要基于XGBoost算法,预先设置最大决策深度、学习率、最小划分损失阈值、模型复杂度控制参数等超参数,由于采用的是机器学习方式进行分类决策,需设置经验损失函数和目标训练函数,以保证构建的初始化分类决策模型的完整性。
步骤204,按照预设的比例划分所述批量网络访问数据为训练样本集和测试样本集。
本实施例中,所述按照预设的比例划分所述批量网络访问数据为训练样本集和测试样本集,一般情况下,训练样本集的数据量要大于测试样本集的数据量,可以为按照4:1划分所述批量网络访问数据,获得训练样本集和测试样本集。
步骤205,将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型。
本实施例中,在执行所述将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型的步骤之前,所述方法还包括:以所述预设的数据统计指标为叶子节点和以所述目标特征为根节点的下一级节点,随机构建若干个分类决策树;获取预设设置的所述改进鲸鱼群算法的种群数量和最大迭代次数,其中,所述改进鲸鱼群算法的种群数量小于等于所述若干个分类决策树的数量。
通过随机构建若干个分类决策树、设置的所述改进鲸鱼群算法的种群数量和最大迭代次数,目的都是为了对初始化分类决策模型进行训练过程中,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
本实施例中,所述将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型的步骤,具体包括:
步骤A,获取需要优化的XGBoost算法的超参数,并分别设置取值范围,其中,所述需要优化的XGBoost算法的超参数包括所述最大决策深度、学习率、最小划分损失阈值;
步骤B,初始化鲸鱼群优化算法,将所述改进鲸鱼群算法的种群数量和最大迭代次数设置为所述鲸鱼群优化算法的初始参数;
步骤C,将获取的所述训练样本集分别输入进所述若干个分类决策树进行决策训练;
步骤D,获取所述若干个分类决策树中每个分类决策树对应的决策训练结果;
步骤E,根据所述每个分类决策树对应的决策训练结果的数目和所述训练样本集中元素的数目,采用概率值法计算所述若干个分类决策树中每个分类决策树对应的决策度值;
步骤F,筛选出决策度值大于预设阈值时所对应的所有分类决策树,并根据预设的收敛度算法,计算收敛因子;
本实施例中,所述根据预设的收敛度算法,计算收敛因子的步骤,具体包括:根据预设的收敛度算法:
对于鲸鱼群算法的改进,以往计算收敛因子,都是采用线性调整策略,例如:
步骤G,根据所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量,更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数;
本实施例中,所述更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数的步骤,具体包括:统计每次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量,重新设定为所述改进鲸鱼群算法的种群数量;每次迭代后,重新设定最大剩余迭代次数,其中,重新设定的最大剩余迭代次数在前一次迭代时设定的最大剩余迭代次数的基础上累减1;根据所述最大决策深度、学习率、最小划分损失阈值分别对应的取值范围,在每次迭代后,随机动态调整所述最大决策深度、学习率、最小划分损失阈值。
通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,为了对初始化分类决策模型进行训练过程中,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
步骤H,重复执行步C至步骤G,直到满足预设的执行终止条件,停止重复执行;
本实施例中,所述预设的执行终止条件包括剩余最大迭代次数为0、当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1。
本实施例中,所述直到满足预设的执行终止条件,停止重复执行的步骤,具体包括:判断所述最大剩余迭代次数是否为0;判断当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1;若所述最大剩余迭代次数为0或者当前次迭代后所述筛选出的决策度值大于预设阈值时所对应的所有分类决策树的数量为0或1,则满足预设的执行终止条件。
通过判断是否满足终止条件,停止对初始化分类决策模型的训练,从以往不停动态优化获取的所有分类决策模型中,筛选出最优分类决策模型和所述最优分类决策模型对应的XGBoost算法超参数。保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
步骤I,从所述所有执行输出结果内筛选出决策度值大于所述预设阈值,且所述决策度值为最大值时所对应的分类决策树作为最优筛选个体;
步骤J,筛选出所述最优筛选个体对应的分类决策树,即获得训练完成的网络攻击检测模型。
本实施例中,采用改进鲸鱼群算法优化XGBoost算法,实质上为将XGBoost算法中对应的所有分类决策树作为所述鲸鱼群算法中的单个个体,通过分析每个个体的分类能力,以此迭代获得最优的分类决策树,同时,在迭代过程中,不停的调整XGBoost算法中的相关超参数,使得多次迭代时,同一分类决策树的分类结果存在差异性。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,为了对初始化分类决策模型进行训练过程中,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
步骤206,将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据。
本实施例中,所述将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据的步骤,具体包括:获取所述测试样本集输入所述训练完成的网络攻击检测模型中;根据所述训练完成的网络攻击检测模型筛选出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据。
步骤207,根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能。
本实施例中,所述根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能的步骤,具体包括:识别所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;根据所述降维处理结果,获取所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据在进行所述降维处理时所对应的目标特征;统计所述目标特征分别与所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据一致的总数量,并根据所述总数量和所述测试样本集计算输出为真的概率值;判断所述输出为真的概率值是否大于预设的检测性能阈值;若大于,则所述改进后的网络攻击检测模型的检测性能达标;否则,所述改进后的网络攻击检测模型的检测性能不达标,通过重新优化所述XGBoost算法的超参数和调整所述鲸鱼群优化算法的初始参数进行二次优化,直到所述改进后的网络攻击检测模型的检测性能达标,停止二次优化。
本申请通过获取对目标系统待进行访问的批量网络访问数据,并进行数据预处理;采用PCA分析法对数据预处理结果进行降维处理筛选出目标特征;以目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;将训练样本集输入基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;根据所述测试样本集进行测试,并分析所述改进后的网络攻击检测模型的检测性能。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请实施例中,通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
进一步参考图3,作为对上述图2所示方法的实现,本申请提供了一种对网络攻击检测模型性能检测的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图3所示,本实施例所述的对网络攻击检测模型性能检测的装置300包括:数据预处理模块301、特征降维筛选模块302、初始化模型构建模块303、样本集划分模块304、模型训练模块305、模型测试模块306和模型检测性能分析模块307。其中:
数据预处理模块301,用于获取对目标系统待进行访问的批量网络访问数据,并对所述批量网络访问数据进行数据预处理,获得数据预处理结果;
特征降维筛选模块302,用于采用PCA分析法对所述数据预处理结果进行降维处理,获得降维处理结果,根据所述降维处理结果筛选出目标特征,其中,所述目标特征指各个网络访问数据的目标分类类型,其中,所述目标分类类型包括:正常访问类型和非正常访问类型;
初始化模型构建模块303,用于以所述目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;
样本集划分模块304,用于按照预设的比例划分所述批量网络访问数据为训练样本集和测试样本集;
模型训练模块305,用于将所述训练样本集输入所述基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;
模型测试模块306,用于将所述测试样本集输入所述训练完成的网络攻击检测模型中,输出所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据;
模型检测性能分析模块307,用于根据所述测试样本集中的正常访问类型检测数据和非正常访问类型检测数据及所述降维处理结果,分析所述改进后的网络攻击检测模型的检测性能。
本申请通过获取对目标系统待进行访问的批量网络访问数据,并进行数据预处理;采用PCA分析法对数据预处理结果进行降维处理筛选出目标特征;以目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;将训练样本集输入基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;根据所述测试样本集进行测试,并分析所述改进后的网络攻击检测模型的检测性能。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备4包括通过系统总线相互通信连接存储器4a、处理器4b、网络接口4c。需要指出的是,图中仅示出了具有组件4a-4c的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器4a至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器4a可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器4a也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器4a还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器4a通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如对网络攻击检测模型性能检测的方法的计算机可读指令等。此外,所述存储器4a还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器4b在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器4b通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器4b用于运行所述存储器4a中存储的计算机可读指令或者处理数据,例如运行所述对网络攻击检测模型性能检测的方法的计算机可读指令。
所述网络接口4c可包括无线网络接口或有线网络接口,该网络接口4c通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
本实施例提出的计算机设备,属于金融科技技术领域,应用于安全访问检测领域中,保证信息安全。本申请通过获取对目标系统待进行访问的批量网络访问数据,并进行数据预处理;采用PCA分析法对数据预处理结果进行降维处理筛选出目标特征;以目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;将训练样本集输入基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;根据所述测试样本集进行测试,并分析所述改进后的网络攻击检测模型的检测性能。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被处理器执行,以使所述处理器执行如上述的对网络攻击检测模型性能检测的方法的步骤。
本实施例提出的计算机可读存储介质,属于金融科技技术领域,应用于安全访问检测领域中,保证信息安全。本申请通过获取对目标系统待进行访问的批量网络访问数据,并进行数据预处理;采用PCA分析法对数据预处理结果进行降维处理筛选出目标特征;以目标特征为XGBoost算法的决策目标,构建基于XGBoost算法的初始化分类决策模型;将训练样本集输入基于XGBoost算法的初始化分类决策模型中,并采用改进鲸鱼群算法进行模型优化和训练,获得训练完成的网络攻击检测模型;根据所述测试样本集进行测试,并分析所述改进后的网络攻击检测模型的检测性能。通过动态的更新所述鲸鱼群优化算法的初始参数和所述需要优化的XGBoost算法的超参数,保证对所述初始化分类决策模型足够进行优化,以便于获得性能足够良好,处理效率高效的网络攻击检测模型。同时,网络攻击检测模型的性能越足够良好越能帮助被访问端避免非安全入侵,保证数据访问的安全性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
机译: 一种同步广播信息发送、检测方法及装置
机译: 一种基于集成学习的工业控制系统入侵检测方法
机译: 一种训练样本有效性检测方法、计算机设备及计算机非易失性存储介质