CN112199670B - 一种基于深度学习改进iforest对行为异常检测的日志监控方法 - Google Patents

一种基于深度学习改进iforest对行为异常检测的日志监控方法 Download PDF

Info

Publication number
CN112199670B
CN112199670B CN202011059670.2A CN202011059670A CN112199670B CN 112199670 B CN112199670 B CN 112199670B CN 202011059670 A CN202011059670 A CN 202011059670A CN 112199670 B CN112199670 B CN 112199670B
Authority
CN
China
Prior art keywords
iforest
user
data
abnormal
behavior
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011059670.2A
Other languages
English (en)
Other versions
CN112199670A (zh
Inventor
宋昕
徐思航
朱磊
赵琛
黑新宏
王一川
姬文江
杜延宁
盘隆
吕泽立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian University of Technology
Original Assignee
Xian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian University of Technology filed Critical Xian University of Technology
Priority to CN202011059670.2A priority Critical patent/CN112199670B/zh
Publication of CN112199670A publication Critical patent/CN112199670A/zh
Application granted granted Critical
Publication of CN112199670B publication Critical patent/CN112199670B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于深度学习改进IFOREST对行为异常检测的日志监控方法。通过对用户的行为信息进行采集并向量化信息。利用Auto‑Encoder对算法训练模型对输入的日志用户行为向量进行降维。利用genetic算法以及Gan网络改进IFOREST,依据更新的信息反复训练模型提高其识别的准确率,最后通过日志监控的方法对用户的日常行为进行高效率高精准度的异常行为检测,将深度学习的方法应用到异常行为检测的网络安全领域,借以检测用户或管理员进行的非正常操作,同时采用了深度学习中自编码器对提取的用户行为信息进行降维,实现对高维数据的预处理,提出了一种相比于IFOREST训练准确率更高更加稳定的模型。

Description

一种基于深度学习改进IFOREST对行为异常检测的日志监控方法
技术领域
本发明属于网络安全领域,具体涉及一种基于深度学习改进IFOREST对行为异常检测的日志监控方法。
背景技术
如今的网络平台***规模越来越庞大,用户以及管理员的数量同样激增,难免会有用户或管理员进行非正常的操作。基于日志监控***运行过程中使用监控***对日志状态进行实时监控,及时检测到已经发生或即将发生的异常行为,为采取对应措施留出宝贵时间。日志监控是对***运行中产生的各类用户日志的行为进行采集、过滤、存储、分析、检测异常的一系列过程,是日志监控***中的重要组成部分。通过对日志进行不同角度的分析,可以达检测异常行为和日志审计等目的。目前对日志的监控有两种主流的算法思想,一种是基于传统的聚类算法的改进如LOF,另一种是基于深度学习如CNN,RNN以及Auto-Encoder自编码器等等。这些算法都存在运行时间长问题,本发明基于IFOREST的改进在运行时间和准确率方面都有所提升。
发明内容
本发明的目的是提供一种基于深度学习改进IFOREST对行为异常检测的日志监控方法。解决了现有技术中存在的监控方法运行时间过长的问题。通过对用户的行为信息进行采集并向量化信息。利用Auto-Encoder对算法训练模型对输入的日志用户行为向量进行降维。利用genetic算法以及Gan网络改进IFOREST,依据更新的信息反复训练模型提高其识别的准确率,最后通过日志监控的方法对用户的日常行为进行高效率高精准度的异常行为检测。
本发明所采用的技术方案是,一种基于深度学习改进IFOREST对行为异常检测的日志监控方法,具体操作步骤如下:
步骤1,利用平台***中产生的日志用户信息进行提取,以用户对数据库的操作为例将用户每日对数据库的增表、删表、改表、查表等不同行为的操作次数进行长期统计,生成用户日志行为向量并用MySQL进行存储;
步骤2,获取日志用户行为向量同时用Auto-Encoder进行降维,按照8:2的比例将数据随机划分将用户行为训练集及用户行为测试集,其中用户行为训练集是用来训练生成用户行为信息识别模型,用户行为测试集用来检测监控模型的准确率;
步骤3,对步骤2中用户行为训练集中的用户行为信息依据改进的IFOREST进行模型训练;
步骤4,使用genetic算法对步骤3中组成IFOREST的Itree进行筛选,选出m颗适应值较好的Itree组成优适应度的IFOREST;
步骤5,对步骤4中,生成的识别模型IFOREST对用户行为测试集计算平均路径长度;
步骤6,对步骤5中识别模型计算出异常分数s(x,Ψ)。
步骤7,对步骤6中得到的异常分数进行upsample处理并保存到文件1.txt中;
步骤8,获取步骤7中的文件1.txt,利用Gan网络对异常分数的数据进行学习,获得鉴别器;
步骤9,对步骤8中的鉴别器,采用用户行为的测试集进行异常行为检测并给出每个向量化数据相应的标签;
步骤10,对步骤9中检测的结果进行统计,如果该结果的标签为1则为正常行为,标签为0则为异常行为;
步骤11,对于步骤10中模型预测的统计结果利用Roc曲线,Auc面积,F1分数,准确率等指标进行评估并重复步骤3到9重新训练模型,提高用户异常行为识别模型的准确率。
本发明的特点还在于:
步骤3中采用基于深度学习与启发式搜索的改进IFOREST方法建立日志监控模型,具体步骤如下:
步骤3.1,设置itree的最大高度初始化IFOREST;
步骤3.2,从步骤2的用户行为向量信息中重复构建itree,在构建树组成初始森林;
步骤3.3,对步骤3.2中构建的初始森林利用genetic算法筛选优适应值的itree,构造新的IFOREST;
步骤3.4,利用新生成的IFOREST对用户行为向量的测试集进行检测;
步骤3.5,利用生成的模型判断用户行为是否异常。
步骤4中利用genetic算法能够挑选出优适度更高的itree组成更加优秀的IFOREST,具体步骤如下:
步骤4.1,对生成的IFOREST进行随机采样itree得到种群并进行二进制编码;
步骤4.2,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.3,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.4,根据步骤4.1中得到的IFOREST信息,用部分用户行为向量信息DTrain对初始森林T进行训练根据交叉验证法计算出每一个itree的精度值a;
步骤4.5,根据步骤4.1中得到的IFOREST信息,用Q-统计量法计算itree之间的差异度m;
步骤4.6,根据步骤4.4与步骤4.5中得到的精度值以及差异度得到适应度函数;
步骤4.7,根据步骤4.6中的适应度函数,计算itree的适应度值以及累积概率;
步骤4.8,根据步骤4.7的结果,选择新的IFOREST种群;
步骤4.9,根据步骤4.8中新的种群,进行交叉变异操作;
步骤4.10,根据步骤4.9中得到变异后的种群,进行解码;
步骤4.11,根据步骤4.10中的结果,进行适应度评价,迭代选择出最好的个体。
步骤5中,计算平均路径长度的方法具体为:
在一颗Itree中,从根节点到外部节点所经历边的数目称为路径长度,记为h(Ψ)。由于Itree与二叉查找树的结构等价,因此包含d的叶子节点的路径长度等于二叉查找树中失败查询的路径长度:C(Ψ)=2H(Ψ-1)-(2(Ψ-1)/Ψ)其中,H(Ψ)=Ln(Ψ)+γ,γ为欧拉常数;Ψ为叶子节点数;C(Ψ)为给定Ψ时h(Ψ)的平均值,用以标准化h(Ψ)。
步骤6中,计算出异常分数s(x,Ψ)的方法具体为:
对于每一个数据点Xi,令其遍历每一颗孤立树Itree,计算点Xi在森林中的平均高度h(Xi),对所有点的平均高度做归一化处理。异常值分数的计算公式如下所示:
Figure BDA0002711995250000051
步骤7中对步骤6中得到的异常分数进行upsample处理具体步骤如下:
步骤7.1:在numpy中将得到的异常分数进行维度变化,增加一个内容与异常分数相同的维度;
步骤7.2:将维度变化后的数据储存在1.txt中。
步骤8中利用Gan网络对异常分数的数据进行学习获得鉴别器具体步骤如下:
步骤8.1,获取步骤7中upsample后的数据,并进行GPU转换;
步骤8.2,将步骤8.2中的数据,导入到Discriminator中进行初始化Loss;
步骤8.3,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.4,根据步骤8.3中的结果,用Discriminator进行鉴别;
步骤8.5,将步骤8.4的鉴别结果,与真实数据对比计算Discriminator的Loss并更新梯度;
步骤8.6,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.7,根据步骤8.6中的结果,用Discriminator进行鉴别;
步骤8.8,将步骤8.7的鉴别结果,与真实数据对比计算Generator的Loss并更新梯度;
步骤8.9,将步骤8.1到8.8重复迭代,最终得到鉴别器Discriminator。
本发明的有益效果是:本发明的目的是提供一种基于深度学习改进IFOREST对行为异常检测的日志监控方法。通过对用户的行为信息进行采集并向量化信息。利用Auto-Encoder对算法训练模型对输入的日志用户行为向量进行降维。利用genetic算法以及Gan网络改进IFOREST,依据更新的信息反复训练模型提高其识别的准确率,最后通过日志监控的方法对用户的日常行为进行高效率高精准度的异常行为检测。
附图说明
图1为本发明一种基于深度学习改进IFOREST对行为异常检测的日志监控方法的总流程图;
图2为本发明基于深度学习改进IFOREST进行异常行为检测的模型流程图;
图3为本发明利用genetic算法改进IFOREST的流程图;
图4为本发明利用Gan网络改进异常分数判断的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
一种基于深度学习改进IFOREST对行为异常检测的日志监控方法,具体操作步骤如下:
步骤1,利用平台***中产生的日志用户信息进行提取,以用户对数据库的操作为例将用户每日对数据库的增表、删表、改表、查表等不同行为的操作次数进行长期统计,生成用户日志行为向量并用MySQL进行存储;
步骤2,获取日志用户行为向量同时用Auto-Encoder进行降维,按照8:2的比例将数据随机划分将用户行为训练集及用户行为测试集,其中用户行为训练集是用来训练生成用户行为信息识别模型,用户行为测试集用来检测监控模型的准确率;
步骤3,对步骤2中用户行为训练集中的用户行为信息依据改进的IFOREST进行模型训练;
步骤4,使用genetic算法对步骤3中组成IFOREST的Itree进行筛选,选出m颗适应值较好的Itree组成优适应度的IFOREST;
步骤5,对步骤4中,生成的识别模型IFOREST对用户行为测试集计算平均路径长度;
步骤6,对步骤5中识别模型计算出异常分数s(x,Ψ)。
步骤7,对步骤6中得到的异常分数进行upsample处理并保存到文件1.txt中;
步骤8,获取步骤7中的文件1.txt,利用Gan网络对异常分数的数据进行学习,获得鉴别器;
步骤9,对步骤8中的鉴别器,采用用户行为的测试集进行异常行为检测并给出每个向量化数据相应的标签;
步骤10,对步骤9中检测的结果进行统计,如果该结果的标签为1则为正常行为,标签为0则为异常行为;
步骤11,对于步骤10中模型预测的统计结果利用Roc曲线,Auc面积,F1分数,准确率等指标进行评估并重复步骤3到9重新训练模型,提高用户异常行为识别模型的准确率。
本发明的特点还在于:
步骤3中采用基于深度学习与启发式搜索的改进IFOREST方法建立日志监控模型,具体步骤如下:
步骤3.1,设置itree的最大高度初始化IFOREST;
步骤3.2,从步骤2的用户行为向量信息中重复构建itree,在构建树组成初始森林;
步骤3.3,对步骤3.2中构建的初始森林利用genetic算法筛选优适应值的itree,构造新的IFOREST;
步骤3.4,利用新生成的IFOREST对用户行为向量的测试集进行检测;
步骤3.5,利用生成的模型判断用户行为是否异常。
步骤4中利用genetic算法能够挑选出优适度更高的itree组成更加优秀的IFOREST,具体步骤如下:
步骤4.1,对生成的IFOREST进行随机采样itree得到种群并进行二进制编码;
步骤4.2,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.3,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.4,根据步骤4.1中得到的IFOREST信息,用部分用户行为向量信息DTrain对初始森林T进行训练根据交叉验证法计算出每一个itree的精度值a;
步骤4.5,根据步骤4.1中得到的IFOREST信息,用Q-统计量法计算itree之间的差异度m;
步骤4.6,根据步骤4.4与步骤4.5中得到的精度值以及差异度得到适应度函数;
步骤4.7,根据步骤4.6中的适应度函数,计算itree的适应度值以及累积概率;
步骤4.8,根据步骤4.7的结果,选择新的IFOREST种群;
步骤4.9,根据步骤4.8中新的种群,进行交叉变异操作;
步骤4.10,根据步骤4.9中得到变异后的种群,进行解码;
步骤4.11,根据步骤4.10中的结果,进行适应度评价,迭代选择出最好的个体。
步骤5中,计算平均路径长度的方法具体为:
在一颗Itree中,从根节点到外部节点所经历边的数目称为路径长度,记为h(Ψ)。由于Itree与二叉查找树的结构等价,因此包含d的叶子节点的路径长度等于二叉查找树中失败查询的路径长度:C(Ψ)=2H(Ψ-1)-(2(Ψ-1)/Ψ)其中,H(Ψ)=Ln(Ψ)+γ,γ为欧拉常数;Ψ为叶子节点数;C(Ψ)为给定Ψ时h(Ψ)的平均值,用以标准化h(Ψ)。
步骤6中,计算出异常分数s(x,Ψ)的方法具体为:
对于每一个数据点Xi,令其遍历每一颗孤立树Itree,计算点Xi在森林中的平均高度h(Xi),对所有点的平均高度做归一化处理。异常值分数的计算公式如下所示:
Figure BDA0002711995250000101
步骤7中对步骤6中得到的异常分数进行upsample处理具体步骤如下:
步骤7.1:在numpy中将得到的异常分数进行维度变化,增加一个内容与异常分数相同的维度;
步骤7.2:将维度变化后的数据储存在1.txt中。
步骤8中利用Gan网络对异常分数的数据进行学习获得鉴别器具体步骤如下:
步骤8.1,获取步骤7中upsample后的数据,并进行GPU转换;
步骤8.2,将步骤8.2中的数据,导入到Discriminator中进行初始化Loss;
步骤8.3,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.4,根据步骤8.3中的结果,用Discriminator进行鉴别;
步骤8.5,将步骤8.4的鉴别结果,与真实数据对比计算Discriminator的Loss并更新梯度;
步骤8.6,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.7,根据步骤8.6中的结果,用Discriminator进行鉴别;
步骤8.8,将步骤8.7的鉴别结果,与真实数据对比计算Generator的Loss并更新梯度;
步骤8.9,将步骤8.1到8.8重复迭代,最终得到鉴别器Discriminator。
一种基于深度学习改进IFOREST对行为异常检测的日志监控方法,具体流程如图1所示,利用Auto-Encoder对算法训练模型对输入的日志用户行为向量进行降维。利用genetic算法以及Gan网络改进IFOREST实现异常行为检测,包括以下步骤:
步骤1,利用平台***中产生的日志用户信息进行提取,生成用户日志行为向量并用MySQL进行存储;
步骤2,获取日志用户行为向量同时用Auto-Encoder进行降维,并将其分为用户行为训练集及用户行为测试集,其中用户行为训练集是用来训练生成用户行为信息识别模型,用户行为测试集用来检测监控模型的准确率;
步骤3,对步骤2中用户行为训练集中的用户行为信息依据改进的IFOREST进行模型训练(如图2所示);
步骤4,使用genetic算法对步骤3中的IFOREST的训练过程中进行改进,该算法可以实现选出m颗具有较有适应值的Itree构成IFOREST(如图3所示);
步骤5,对步骤4中,生成的识别模型IFOREST对用户行为测试集计算平均路径长度;
步骤6,对步骤5中识别模型计算出异常分数;
步骤7,对步骤6中得到的异常分数进行upsample处理并保存到文件1.txt中;
步骤8,获取步骤7中的文件1.txt,利用Gan网络对异常分数的数据进行学习,获得鉴别器(如图4所示);
步骤9,对步骤8中的鉴别器,采用用户行为的测试集进行异常行为检测并给出每个向量化数据相应的标签;
步骤10,对步骤9中检测的结果进行统计,如果该结果的标签为1则为正常行为,标签为0则为异常行为;
步骤11,对于步骤10中模型预测的统计结果利用Roc曲线,Auc面积,F1分数,准确率等指标进行评估并重复步骤3到9重新训练模型,提高用户异常行为识别模型的准确率。
步骤2中构建用户行为向量时进行Auto-Encoder的降维操作可以降低数据的维度,提高异常检测的精度。
例如有一份用户行为向量的数量为500,每个数据有40个维度的行为向量,其中异常行为的用户有50个,数据均以贴上标签并储存在test.txt文件中。
在步骤2中利用Auto-Encoder进行降维,将每个用户40个维度的行为向量,按照要求降维到主要的8个维度并存放到test2.txt文件中。
步骤2伪代码如下:
Figure BDA0002711995250000131
步骤3中采用基于深度学习与启发式搜索的改进IFOREST方法建立日志监控模型,具体步骤如下:
步骤3.1,设置itree的最大高度初始化IFOREST;
步骤3.2,从步骤2的用户行为向量信息中重复构建itree,在构建树组成初始森林;
步骤3.3,对步骤3.2中构建的初始森林利用genetic算法筛选优适应值的itree,构造新的IFOREST;
步骤3.4,利用新生成的IFOREST对用户行为向量的测试集进行检测;
步骤3.5,利用生成的模型判断用户行为是否异常。
步骤3.1伪代码如下:
Figure BDA0002711995250000141
步骤4中利用genetic算法能够挑选出优适度更高的itree组成更加优秀的IFOREST,具体步骤如下:
步骤4.1,对生成的IFOREST进行随机采样itree得到种群并进行二进制编码;
步骤4.2,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.3,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.4,根据步骤4.1中得到的IFOREST信息,用部分用户行为向量信息DTrain对初始森林T进行训练根据交叉验证法计算出每一个itree的精度值a;
步骤4.5,根据步骤4.1中得到的IFOREST信息,用Q-统计量法计算itree之间的差异度m;
步骤4.6,根据步骤4.4与步骤4.5中得到的精度值以及差异度得到适应度函数;
步骤4.7,根据步骤4.6中的适应度函数,计算itree的适应度值以及累积概率;
步骤4.8,根据步骤4.7的结果,选择新的IFOREST种群;
步骤4.9,根据步骤4.8中新的种群,进行交叉变异操作;
步骤4.10,根据步骤4.9中得到变异后的种群,进行解码;
步骤4.11,根据步骤4.10中的结果,进行适应度评价,迭代选择出最好的个体;
步骤4伪代码如下:
Figure BDA0002711995250000151
Figure BDA0002711995250000161
步骤7中对步骤6中得到的异常分数进行upsample处理具体步骤如下:
步骤7.1:在numpy中将得到的异常分数进行维度变化,增加一个内容与异常分数相同的维度;
步骤7.2:将维度变化后的数据储存在1.txt中。
步骤8中利用Gan网络对异常分数的数据进行学习获得鉴别器具体步骤如下:
步骤8.1,获取步骤7中upsample后的数据,并进行GPU转换;
步骤8.2,将步骤8.2中的数据,导入到Discriminator中进行初始化Loss;
步骤8.3,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.4,根据步骤8.3中的结果,用Discriminator进行鉴别;
步骤8.5,将步骤8.4的鉴别结果,与真实数据对比计算Discriminator的Loss并更新梯度;
步骤8.6,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.7,根据步骤8.6中的结果,用Discriminator进行鉴别;
步骤8.8,将步骤8.7的鉴别结果,与真实数据对比计算Generator的Loss并更新梯度;
步骤8.9,将步骤8.1到8.8重复迭代,最终得到鉴别器Discriminator。
步骤8伪代码如下:
Figure BDA0002711995250000171
Figure BDA0002711995250000181

Claims (1)

1.一种基于深度学习改进IFOREST对行为异常检测的日志监控方法,其特征在于,具体操作步骤如下:
步骤1,利用平台***中产生的日志用户信息进行提取,将用户每日对数据库的增表、删表、改表、查表不同行为的操作次数进行长期统计,生成用户日志行为向量并用MySQL进行存储;
步骤2,获取日志用户行为向量同时用Auto-Encoder进行降维,按照8:2的比例将数据随机划分为用户行为训练集及用户行为测试集,其中用户行为训练集是用来训练生成用户行为信息识别模型,用户行为测试集用来检测监控模型的准确率;
步骤3,对步骤2中用户行为训练集中的用户行为信息依据改进的IFOREST进行模型训练;
步骤3中采用基于深度学习与启发式搜索的改进IFOREST方法建立日志监控模型,具体步骤如下:
步骤3.1,设置itree的最大高度初始化IFOREST;
步骤3.2,从步骤2的用户行为向量信息中重复构建itree,将构建树组成初始森林;
步骤3.3,对步骤3.2中构建的初始森林利用genetic算法筛选优适应值的itree,构造新的IFOREST;
步骤3.4,利用新生成的IFOREST对用户行为向量的测试集进行检测;
步骤3.5,利用生成的模型判断用户行为是否异常;
步骤4,使用genetic算法对步骤3中组成IFOREST的Itree进行筛选,选出m颗适应值较好的Itree组成优适应度的IFOREST;
步骤4中利用genetic算法能够挑选出优适度更高的itree组成更加优秀的IFOREST,具体步骤如下:
步骤4.1,对生成的IFOREST进行随机采样itree得到种群并进行二进制编码;
步骤4.2,根据步骤4.1中得到的编码信息,对初始化的IFOREST进行解码;
步骤4.3,根据步骤4.1中得到的IFOREST信息,用部分用户行为向量信息DTrain对初始森林T进行训练,根据交叉验证法计算出每一个itree的精度值a;
步骤4.4,根据步骤4.1中得到的IFOREST信息,用Q-统计量法计算itree之间的差异度m;
步骤4.5,根据步骤4.3与步骤4.4中得到的精度值以及差异度得到适应度函数;
步骤4.6,根据步骤4.5中的适应度函数,计算itree的适应度值以及累积概率;
步骤4.7,根据步骤4.6的结果,选择新的IFOREST种群;
步骤4.8,根据步骤4.7中新的种群,进行交叉变异操作;
步骤4.9,根据步骤4.8中得到变异后的种群,进行解码;
步骤4.10,根据步骤4.9中的结果,进行适应度评价,迭代选择出最好的个体;
步骤5,对步骤4中,生成的识别模型IFOREST对用户行为测试集计算平均路径长度;
所述步骤5中,计算平均路径长度的方法具体为:在一颗Itree中,从根节点到外部节点所经历边的数目称为路径长度,记为h(Ψ);由于Itree与二叉查找树的结构等价,因此包含d的叶子节点的路径长度等于二叉查找树中失败查询的路径长度:C(Ψ)=2H(Ψ-1)-(2(Ψ-1)/Ψ)其中,H(Ψ)=Ln(Ψ)+γ,γ为欧拉常数;Ψ为叶子节点数;C(Ψ)为给定Ψ时h(Ψ)的平均值,用以标准化h(Ψ);
步骤6,对步骤5中识别模型计算出异常分数s(x,Ψ);
所述步骤6中,计算出异常分数s(x,Ψ)的方法具体为:
对于每一个数据点Xi,令其遍历每一颗孤立树Itree,计算点Xi在森林中的平均高度h(Xi),对所有点的平均高度做归一化处理;异常值分数的计算公式如下所示:
步骤7,对步骤6中得到的异常分数进行upsample处理并保存到文件1.txt中;
步骤7中对步骤6中得到的异常分数进行upsample处理具体步骤如下:
步骤7.1:在numpy中将得到的异常分数进行维度变化,增加一个内容与异常分数相同的维度;
步骤7.2:将维度变化后的数据储存在1.txt中;
步骤8,获取步骤7中的文件1.txt,利用Gan网络对异常分数的数据进行学习,获得鉴别器;
步骤8中利用Gan网络对异常分数的数据进行学习获得鉴别器具体步骤如下:
步骤8.1,获取步骤7中upsample后的数据,并进行GPU转换;
步骤8.2,将步骤8.1中的数据,导入到Discriminator中进行初始化Loss;
步骤8.3,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.4,根据步骤8.3中的结果,用Discriminator进行鉴别;
步骤8.5,将步骤8.4的鉴别结果,与真实数据对比计算Discriminator的Loss并更新梯度;
步骤8.6,利用torch随机生成符合正态分布的数据导入Generator中;
步骤8.7,根据步骤8.6中的结果,用Discriminator进行鉴别;
步骤8.8,将步骤8.7的鉴别结果,与真实数据对比计算Generator的Loss并更新梯度;
步骤8.9,将步骤8.1到8.8重复迭代,最终得到鉴别器Discriminator;
步骤9,对步骤8中的鉴别器,采用用户行为的测试集进行异常行为检测并给出每个向量化数据相应的标签;
步骤10,对步骤9中检测的结果进行统计,如果该结果的标签为1则为正常行为,标签为0则为异常行为;
步骤11,对于步骤10中模型预测的统计结果利用Roc曲线,Auc面积,F1分数,准确率指标进行评估并重复步骤3到9重新训练模型,提高用户异常行为识别模型的准确率。
CN202011059670.2A 2020-09-30 2020-09-30 一种基于深度学习改进iforest对行为异常检测的日志监控方法 Active CN112199670B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011059670.2A CN112199670B (zh) 2020-09-30 2020-09-30 一种基于深度学习改进iforest对行为异常检测的日志监控方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011059670.2A CN112199670B (zh) 2020-09-30 2020-09-30 一种基于深度学习改进iforest对行为异常检测的日志监控方法

Publications (2)

Publication Number Publication Date
CN112199670A CN112199670A (zh) 2021-01-08
CN112199670B true CN112199670B (zh) 2023-04-07

Family

ID=74007259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011059670.2A Active CN112199670B (zh) 2020-09-30 2020-09-30 一种基于深度学习改进iforest对行为异常检测的日志监控方法

Country Status (1)

Country Link
CN (1) CN112199670B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112905583A (zh) * 2021-04-01 2021-06-04 辽宁工程技术大学 一种高维大数据离群点检测方法
CN114254716B (zh) * 2022-03-02 2022-05-27 浙江鹏信信息科技股份有限公司 一种基于用户行为分析的高危操作识别方法及***
CN114580580B (zh) * 2022-05-07 2022-08-16 深圳索信达数据技术有限公司 一种智能运维异常检测方法及装置
CN117151768A (zh) * 2023-10-30 2023-12-01 国网浙江省电力有限公司营销服务中心 一种生成式营销事件风控规则库的构建方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426207A (zh) * 2017-07-21 2017-12-01 哈尔滨工程大学 一种基于SA‑iForest的网络入侵异常检测方法
CN108985632A (zh) * 2018-07-16 2018-12-11 国网上海市电力公司 一种基于孤立森林算法的用电数据异常检测模型
CN110766056A (zh) * 2019-09-27 2020-02-07 中山大学 一种融合图像生成和多标签分类的异常图像检测方法
WO2020065365A1 (en) * 2018-09-25 2020-04-02 Cgg Services Sas Automatically detecting and correcting anomalies in log data
CN110956248A (zh) * 2018-09-27 2020-04-03 南京航空航天大学 一种基于隔离森林的海量数据异常值检测算法
CN111178523A (zh) * 2019-08-02 2020-05-19 腾讯科技(深圳)有限公司 一种行为检测方法、装置、电子设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3718119A1 (en) * 2017-11-27 2020-10-07 Deciphex Automated screening of histopathology tissue samples via analysis of a normal model

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426207A (zh) * 2017-07-21 2017-12-01 哈尔滨工程大学 一种基于SA‑iForest的网络入侵异常检测方法
CN108985632A (zh) * 2018-07-16 2018-12-11 国网上海市电力公司 一种基于孤立森林算法的用电数据异常检测模型
WO2020065365A1 (en) * 2018-09-25 2020-04-02 Cgg Services Sas Automatically detecting and correcting anomalies in log data
CN110956248A (zh) * 2018-09-27 2020-04-03 南京航空航天大学 一种基于隔离森林的海量数据异常值检测算法
CN111178523A (zh) * 2019-08-02 2020-05-19 腾讯科技(深圳)有限公司 一种行为检测方法、装置、电子设备及存储介质
CN110766056A (zh) * 2019-09-27 2020-02-07 中山大学 一种融合图像生成和多标签分类的异常图像检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《基于模糊孤立森林算法的多维数据异常检测方法》;李倩等;《计算机与数字工程》;20200430;第48卷(第4期);全文 *
《基于鉴别模型和对抗损失的无监督域自适应方法》;赵文等仓;《高技术通讯》;20200715;全文 *

Also Published As

Publication number Publication date
CN112199670A (zh) 2021-01-08

Similar Documents

Publication Publication Date Title
CN112199670B (zh) 一种基于深度学习改进iforest对行为异常检测的日志监控方法
CN108737406B (zh) 一种异常流量数据的检测方法及***
CN111666169B (zh) 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法
CN111798312A (zh) 一种基于孤立森林算法的金融交易***异常识别方法
JP4697670B2 (ja) 識別用データ学習システム、学習装置、識別装置及び学習方法
CN112686775A (zh) 基于孤立森林算法的电力网络攻击检测方法及***
CN111343147B (zh) 一种基于深度学习的网络攻击检测装置及方法
CN110674865B (zh) 面向软件缺陷类分布不平衡的规则学习分类器集成方法
CN111078876A (zh) 一种基于多模型集成的短文本分类方法和***
CN111641608A (zh) 异常用户识别方法、装置、电子设备及存储介质
CN116756594A (zh) 一种电网数据异常点检测方法、***、设备及介质
CN115021679A (zh) 一种基于多维离群点检测的光伏设备故障检测方法
CN115577357A (zh) 一种基于堆叠集成技术的Android恶意软件检测方法
CN113283901B (zh) 一种面向区块链平台的基于字节码的诈骗合约检测方法
Gowtham Sethupathi et al. Efficient rainfall prediction and analysis using machine learning techniques
CN112817954A (zh) 一种基于多种方法集成学习的缺失值插补方法
CN112422546A (zh) 一种基于变邻域算法和模糊聚类的网络异常检测方法
CN111539616A (zh) 一种基于混合型特征选择的新钻井潜力评价方法
CN116400168A (zh) 一种基于深度特征聚类的电网故障诊断方法及***
CN116366303A (zh) 基于深度学习的网络异常检测方法、装置、设备及介质
CN114048796A (zh) 一种改进型硬盘故障预测方法及装置
CN113657726B (zh) 基于随机森林的人员的危险性分析方法
CN111144430A (zh) 基于遗传算法的养***码识别方法及装置
CN112463964B (zh) 文本分类及模型训练方法、装置、设备及存储介质
CN115708091A (zh) 一种冶金信息***数据异常检测方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant