一种基于决策树自修复的特征规则检测方法

文档序号:9551281阅读:449来源:国知局
一种基于决策树自修复的特征规则检测方法
【技术领域】
[0001] 本发明属于网络异常检测领域,具体是一种基于决策树自修复的特征规则检测方 法。
【背景技术】
[0002] 随着计算机及网络技术的发展,异常攻击手段日趋专业化,网络异常事件层出不 穷,对当前网络状态进行异常检测是当今网络安全研究领域的重要方向,需要一种检测方 法能够对当前网络进行实时监控,并及时发现潜在威胁。
[0003] 异常检测方法主要是通过数据挖掘算法生成异常特征规则库,然后通过生成的 特征规则对待测数据进行特征匹配,从而检测异常。目前数据库知识发现(knowledge discoveryindatabase,KDD)中比较有效的数据挖掘方法且广泛使用是决策树算法,然而 现有的决策树检测方法,过于依赖训练集,若训练集中的数据分布与真实分布不同,则会造 成积累误差,从而降低检测率。目前对已停止生长的决策树修改方法多采用剪枝方法,然而 决策树一旦停止分支或进行剪枝,就可能造成某一本可以继续分裂的节点成为叶节点,进 而断绝了其后继节点进行分枝操作的任何可能性。若想这些叶子节点继续分枝,则只能进 行决策树的重构。
[0004] 目前基于决策树的特征规则检测方法已取得一些研究成果,然而现有的决策树算 法的过度依赖于训练集,不能随着检测的进行而逐步完善。专利"基于决策树的攻击检测系 统"(CN103107902A),提出采用关联规则法构建特征规则集检测异常攻击,然后通过决策树 算法进行进一步的分类预测降低误报率,与本发明要达到的目的有相同之处,但采用的方 法和针对的问题都不相同。
[0005] 综上所述,目前基于决策树的检测方法还存在以下问题:
[0006] (1)现有的决策树算法受限于训练集,若训练集中不包含某种异常情况,则无法进 行该种异常的特征规则提取,决策树不能随着检测的进行而逐步完善,从而导致检测的漏 检率过高。
[0007] (2)现有的决策树算法多采用剪枝方法,若出现错误的剪枝情况则无法弥补,剪枝 而成的叶子节点被断绝了继续分枝的可能性,只能通过重构才能修复,然而决策树重构耗 费的时间过长。

【发明内容】

[0008] 本发明的目的是面向大规模网络,对网络状态进行实时监控,并对网络中的异常 事件进行自动检测的基于决策树自修复的特征规则检测方法。
[0009] 本发明的目的是这样实现的:
[0010] -种基于决策树自修复的特征规则检测方法,包括如下步骤:
[0011] (1)根据决策树算法,通过训练集构建一棵决策树,生成初始特征规则进入步骤 (2);
[0012] ⑵进行异常检测,并计算检测的整体漏检率FPrate和误判率(EPrate),进入步骤 (3);
[0013] (3)如果FPrate>α,α为漏检率的阈值,则进入步骤(4),否则进入步骤(5);
[0014] (4)采取决策树自修复的增枝方法,对每个叶子节点进行增枝,从而进一步完善决 策树,进入步骤(7);
[0015](5)判断误判率是否大于等于β,β为误判率的阈值,若EPrate彡β进入步骤(6), 否则返回步骤(2),开始下一个检测周期;
[0016] (6)采取决策树自修复的剪枝方法,对每个叶子节点进行剪枝,从而修剪决策树, 进入步骤(7);
[0017] (7)生成新的特征规则,作为下一次检测的依据,返回步骤(2),开始下一个检测 周期;
[0018] 其中步骤⑷中,决策树自修复的增枝方法的流程如下:
[0019] (4. 1)计算叶子节点i的漏检率F匕,.二,进入步骤(4. 2);
[0020] (4. 2)如果则进入步骤(4. 3),否则进入步骤(4. 8);
[0021] (4. 3)尝试将叶子节点作为待扩展节点重新进行分枝,进入步骤(4. 4);
[0022] (4. 4)根据检测后更新的数据集,通过决策树算法,选取当前数据集中比例最大的 属性作为下一个扩展节点,进入步骤(4.5);
[0023] (4. 5)判断待扩展节点是否满足叶子节点判定条件,若满足则进入步骤(4. 8),若 不满足则进入步骤(4. 6);
[0024] (4. 6)计算扩展节点的漏检率厂产'/ (R'+Ff),进入步骤(4. 7);
[0025] (4. 7)比较待扩展节点的漏检率叹二'与的大小,若,则对扩展 后的所有叶子节点进行增枝,进入步骤(4.3);否则进入步骤(4.8);
[0026] (4. 8)将该节点设置为叶子节点,增枝结束;
[0027] 其中步骤(4. 5)中,叶子节点判定条件如下:
[0028] (4. 5. 1)设置节点纯净度p,即节点数据集中异常事件或安全事件的占比率,P"为 节点纯净度上限;计算待扩展节点的节点纯净度P,当P>PJ寸,即节点数据集中异常事件或 安全事件的占比率过高,则停止增枝,生成新的叶子节点;叶子节点的分类则根据集合中异 常事件与安全事件的比重决定,若异常事件比重大则该叶子节点的类别设置为异常,反之 设置为安全;
[0029] (4. 5. 2)设置节点占比率t,即节点数据集占整个样例集的比例,!"为设定的节点 占比率下限;计算待扩展节点的节点占比率t,当"1"时,即节点中数据量过小,则停止增 枝,生成叶子节点;叶子节点的分类则根据集合中异常事件与安全事件的比重决定,若异常 事件比重大则该叶子节点的类别设置为异常,反之设置为安全;
[0030] (4. 5. 3)属性分裂过程中,当没有可以继续分裂的属性时,则停止增枝,生成新的 叶子节点,叶子节点的分类则根据集合中异常事件与安全事件的比重决定,若异常事件比 重大则该叶子节点的类别设置为异常,反之设置为安全;
[0031] 步骤(6)中,所述的决策树自修复的剪枝方法的流程如下:
[0032] (6. 1)计算叶子节点i的误判率£/二,=(% + ^^)/(^^ + 7^ + :\7^进入步骤 (6. 2);
[0033] (6.2)当时,将该叶子节点的父节点替换成一个叶子节点,从而得到一 棵简化决策树;叶子节点的分类则根据集合中异常事件与安全事件的比重决定,若异常事 件比重大则该叶子节点的类别设置为异常,反之设置为安全,进入步骤(6.3);
[0034] (6. 3)计算简化决策树的误判率£7^ ',进入步骤(6. 4);
[0035] (6. 4)比较与羁L的大小,若设二'< 设二,则进入步骤(6. 5),否则结束;
[0036] (6. 5)将该子树替换成叶子节点,剪枝结束。
[0037] 本发明的有益效果在于:
[0038] 本发明提出了一种决策树的增枝的方法,能够将原本停止分枝或剪枝的叶子节点 进行分枝操作,利用增枝方法增加了特征规则,从而减小系统漏检率。本发明提出了一种决 策树自修复检测方法,通过决策树算法构建特征规则,结合增枝和剪枝两种方法;当检测的 漏检率、误判率高于既定阈值时,分别采用增枝、剪枝的方法实现决策树的自修复过程,避 免频繁的决策树重构,提高检测方法的效率。
【附图说明】
[0039]图1一种基于决策树自修复的特征规则检测方法的流程图;
[0040]图2-种基于决策树自修复的特征规则检测方法中增枝方法流程图。
【具体实施方式】
[0041] 下面结合附图对本发明做进一步描述。
[0042] 本发明的特点是通过决策树算法初步生成特征规则后,随着检测数据量的逐渐增 多,能够根据系统漏检率、误判率的逐渐升高完成决策树的自修复过程。
[0043] 本发明提出一种基于决策树自修复的特征规则检测方法,通过决策树算法构建特 征规则,结合增枝和剪枝两种方法,随着异常检测的逐步进行修剪决策树,从而更新特征规 贝1J,使其构建过程不完全依赖于训练集。其中,增枝方法使得决策树不必重构也能继续进行 生长,解决了因停止分枝或错误剪枝造成的漏检率升高问题;剪枝方法能够避免过度拟合, 降低误判率。当检测的漏检率升高时,通过决策树自修复的增枝方法降低漏检率;当检测的 误判率升高时,通过决策树自修复的剪枝方法降低误判率,从而实现一种决策树自修复的 特征规则检测方法。
[0044] 本发明是一种基于决策树自修复的特征规则检测方法,首先根据决策树算法构建 一棵决策树;然后,通过决策树生成的特征规则,对接收到的数据进行异常事件的检测,在 每个检测周期开始时,计算检测的整体漏检率和误判率;最后,根据漏检率与误判率的变 化,通过增枝方法和剪枝方法分别对决策树进行修剪,从而得到新的特征规则进入下一个 周期的检测。
[0045] 计算漏检率、误判率,每个节点需记录如下性能指标:异常事件判断为异常事件的 数量(ΤΡ)、异常事件误判为安全事件的数量(FP)、安全事件误判为异常事件的数量(ΝΡ)。 其中,漏检率FPMte=FPATP+FP),漏检率(FPMte)越大说明漏检的数量越多,代表当前的 规则数不足以检测所有的异常事件,属性划分的细致程度与检测率成正比,
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1