CN111666169B - 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法 - Google Patents

一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法 Download PDF

Info

Publication number
CN111666169B
CN111666169B CN202010402904.2A CN202010402904A CN111666169B CN 111666169 B CN111666169 B CN 111666169B CN 202010402904 A CN202010402904 A CN 202010402904A CN 111666169 B CN111666169 B CN 111666169B
Authority
CN
China
Prior art keywords
data
gaussian distribution
abnormal
isolated forest
model
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
CN202010402904.2A
Other languages
English (en)
Other versions
CN111666169A (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.)
Information Center of Yunnan Power Grid Co Ltd
Original Assignee
Information Center of Yunnan Power Grid Co Ltd
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 Information Center of Yunnan Power Grid Co Ltd filed Critical Information Center of Yunnan Power Grid Co Ltd
Priority to CN202010402904.2A priority Critical patent/CN111666169B/zh
Publication of CN111666169A publication Critical patent/CN111666169A/zh
Application granted granted Critical
Publication of CN111666169B publication Critical patent/CN111666169B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,属于数据异常检测技术领域。本发明通过对平台数据进行分析,采用一种改进的孤立森林与高斯分布的联合检测模型进行数据异常检测,针对工业互联网平台的连续与离散两类特征,采用高斯分布与孤立森林结合的检测模型,在工业互联网平台上对工业控制***进行准确实时的异常检测,及时发现***的异常状态。并对本发明训练的基于孤立森林和高斯分布结合的模型检测效果与单一的高斯分布或者孤立森林模型的检测效果进行对比。在服务器平台数据异常的检测中提高了数据异常检测的效率,更快的发现异常,节省了时间成本,具有广阔的应用前景。

Description

一种基于改进的孤立森林算法和高斯分布的联合数据异常检 测方法
技术领域
本发明涉及一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,属于业务监控服务器平台数据异常检测技术领域。
背景技术
服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车***等大型设备)提供计算或者应用服务。服务器平台数据是由数据采集器采集得到的,包括工业控制***现场设备层、控制***以及网络层的数据,这些数据包含着很多重要的信息,其中最重要的是可以从这些信息中分析出服务器***的异常状态,服务器***的一个异常事件很有可能造成巨大的生产经济损失,甚至严重的危害人们的生命健康安全。现有技术中对服务器数据异常的判断方法大多为服务器***平台需要通过对采集到的控制***和网络层的数据进行分析,发现***是否存在异常,而平台数据大多是高维且含有噪声的数据,在对异常进行检测的模型训练过程中,高维的数据会使模型的准确率降低,计算复杂度高,无法很好的检测出异常,因此必须对高维的数据做降维处理,通常对服务器平台数据进行降维处理的方法主要为PCA主成分分析方法,但是由于不考虑分类信息,因此,降低维度后,信息损失虽然降到很低,但分类上可能会变得更加困难。
发明内容
本发明要解决的技术问题是提供一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,用以解决上述问题。
本发明的技术方案是:一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,具体步骤为:
Step1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},其中xi和yi分别表示所选取的两个数据集的线性数据,然后使用DBSCAN聚类算法发现噪声点,并删除这些噪声点得到两个新的数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp},从而实现对测试数据进行去噪。
Step2:使用LDA线性判决方法对数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}进行进一步降维处理,输入Step 1中初步去除噪声点所得到的数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp},为方便使用LDA线性判决方法,将集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}合并为新的数据集合D={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},其中sh表示两个数据集合中A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}的线性数据xi和yj,dh表示线性数据xi和yj的种类,w=o+p,dh∈{0,1},当sh∈A时,dh=0,当sh∈B时,dh=1,而后通过公式
Figure BDA0002490178760000021
和/>
Figure BDA0002490178760000022
分别算出数据集合D的类间离散度矩阵SB以及类内离散度矩阵SW,而后再求出数据集合D的投影矩阵W,最后对数据集合D中每一个特征数据xi进行降维,转化为新的样本数据集合D'={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},从而得到维度分类更为准确的测试数据。
Step3:根据step2降维处理后的样本数据集合
Figure BDA0002490178760000027
根据离散变量是指其数值只能用自然数、整数、计数单位等描述的数据,而连续变量,指在一定区间内可以任意取值,相邻的两个数值可作无限分割(即可取无限个值)为依据,将数据集D数据划分为连续特征的数据和离散特征的数据,对连续特征数据使用孤立森林模型进行训练,根据孤立森林的异常分数S(x,n)来判断连续特征数据是否正常;对离散特征数据使用高斯分布模型进行训练,根据高斯分布异常分数T(r)的取值来判断测试数据是否正常。
Step4:对Step3中所计算得到的孤立森林的异常分数S(x,n)以及高斯分布异常分数T(r)进行加权计算,综合计算异常分数,通过异常分数对数据异常进行判断测试数据。
所述Step1的具体步骤为:
Step1.1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},通过公式
Figure BDA0002490178760000023
分别求每一个数据xi和yi的密度值ρ(xi)或者ρ(yj)。
若ρ(xi)≥0,则其为数据集A的核心点,若ρ(yj)≥0,则其为数据集B的核心点,记录并收集所有的核心点,构成集合Ac以及Bc,而非核心点所构成的集合Anc和Bnc,表示为
Figure BDA0002490178760000024
和/>
Figure BDA0002490178760000025
Step1.2:求出边界集合Abd和Bbd,若xi∈Anc,且
Figure BDA0002490178760000026
满足q∈A以及q∈Nx∩Ac,即xi的领域中存在核心点,则称xi为A的边界点,收集并记录A中所有边界点构成的集合为Abd,同理可求出Bbd
Step1.3:根据Step1.1、Step1.2中所求得的核心点集合Ac,Bc,以及边界点集合Abd,Bbd,计算
Figure BDA0002490178760000031
和/>
Figure BDA0002490178760000032
若xi∈Anoise,则称xi为噪声点,将其删除;若yi∈Bnoise,则称yi为噪声点,将其删除。
所述Step2中求得SB和SW的具体步骤为:
Step2.1:其中SB和SW分别定义如下:
Figure BDA0002490178760000033
Figure BDA0002490178760000034
式中,任意样本数据xi为n维向量,ni表示第i类样本的个数,
Figure BDA0002490178760000035
表示第i类样本中的第j个样本,mi表示第i类样本的均值,m表示总体样本均值,c为类别数。/>
根据step2中描述的数据集合D={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},c类别数为2,所以只需考虑两类样本数据即可,sh为一维向量,所以Step2.1中的公式可化为
Figure BDA0002490178760000036
以及SB=(m1-m2)(m1-m2)T,可以减少计算量,提高计算效率。
所述Step3中对连续特征数据用孤立森林模型进行训练的具体步骤如下:
Step3.1:孤立森林中有很多棵树,每棵树都为二叉树,称为iTree。iTree中的结点要么有两个子结点,即左子结点和右子结点,要么本身是叶子结点。对孤立森林模型中的二叉树iTree进行训练,其训练步骤为:
Step3.1.1:从原始数据集中随机选取30%的原始数据集个数的数据,作为iTree的训练数据集,每训练一棵树都重复这个步骤,保证每棵树都是不同的。
Step3.1.2:随机选取数据sh的一个特征G和该特征的取值g。
Step3.1.3:根据选取的特征G对所有数据进行分类,将特征G的值小于g的样本放在左子结点,将特征G的值大于G的样本放入右子结点。
Step3.1.4:对于左子结点和右子结点重复上述Step3.1.2和Step3.1.3,直至符合以下条件:
结点中只有一个数据或者多个一样的数据;或者,树的高度己经达到了孤立森林模型中树的平均高度L。
Step3.2:将孤立森林中的每棵树都如Step3.1进行构造,构成森林,孤立森林模型训练好之后,进而计算每棵树中样本落在叶子结点的距离,并以这段距离来作为判断异常点的依据。
Step3.3:首先区分出叶子节点和根结点(根节点就是树的最顶端的节点,当不断细分直到不再有子节点时为叶子节点),每棵树中叶子结点到根结点的路径长度记作h(x),森林中的多棵树的叶子结点到根结点的平均路径长度记作c(x),E(h(x))为样本在森林中所有路径的期望。
异常分数为:
Figure BDA0002490178760000041
S(x,n)的取值范围为[0,1],根据S(x,n)的取值来判断异常点。
所述Step3中对离散特征数据使用高斯模型进行训练的具体步骤如下:
Step3.4:将正态分布应用在高斯模型(异常检测模型)中,用训练数据集训练概率分布模型,计算得到概率密度函数中的参数μi,σi,从而得到数据的概率分布。
若离散变量si服从高斯分布,则其概率密度函数为:
Figure BDA0002490178760000042
对于不服从高斯分布相互独立的随机变量{R1,R2...Ri...Rn},其中Ri~(μi~σi 2)则这n个随机变量的联合分布为多维正态分布,概率密度函数为:
Figure BDA0002490178760000043
Step3.5:当用概率密度函数P(r)计算测试集数据的概率时,如果概率密度函数P(r)大于80%,则认为,该数据服从正态分布。
如果概率密度函数P(r)<ε时,则认为该数据为异常数据。
高斯分布异常分数计算为:T(r)=1-p(r)。
所述Step4的具体步骤为:
根据step3两个模型所获得的孤独森林异常分数S(x,n)以及高斯模型异常分数T(r)进行综合计算,综合异常分数M(x)为:
Figure BDA0002490178760000051
若综合异常分数M(x)大于等于阈值E,则认为该数据为异常数据。
若综合异常分数M(x)小于阈值E,则认为该数据是正常的。
本发明提供了基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,对服务器平台上所采集的数据进行异常检测,以用于进行在服务器平台上对控制***进行准确实时的异常检测,及时发现平台数据的异常状态。该模型在服务器平台数据异常的检测中使用了DBSCAN聚类算法进行数据的初步去噪,而后使用LDA线性判决方法进行进一步的数据降维处理,使得数据在降维的过程中更好的分类出原始数据空间中的数据,经过映射得到的低维数据更加容易区分,以便之后更好的分析数据的异常状态,提高了数据异常检测的效率,更快的发现异常,节省了时间成本,具有广阔的应用前景。
本发明的有益效果是:
1、在对异常进行检测的模型训练过程中,高维的数据会使模型的准确率降低,计算复杂度高,无法很好的检测出异常,因此使用随机森林模型对高维的数据做降维处理,去除噪声可以更好的分析数据的异常状态,训练出准确率、召回率较高的异常检测模型。
2、去除噪声之后,通过主成分分析法对降噪之后的数据进行特征提取,将数据转换为互不相关的、低维的新数据,新的特征相对独立并且包含了原始数据的主要信息,进而训练出准确率、召回率较高的异常检测模型。
3、综合考虑数据的连续特征和离散特征分别训练的两个模型,将两个模型分析的异常分数进行加权计算,如果结果大于一定的阈值,则认为该数据为异常数据。实验结果显示,本发明训练的基于孤立森林与高斯分布的联合异常检测模型检测效果要好于单一的孤立森林或者高斯分布的检测效果。
4、本发明可以提高数据异常检测的效率,更快的发现异常,节省了时间成本,具有广阔的应用前景。
附图说明
图1是本发明的步骤流程图;
图2是本发明具体实施方式中经过随机森林去噪后得的LDA的特征值分布;
图3是本发明具体实施方式中未经过随机森林去噪后得到LDA的特征值分布。
具体实施方式
下面结合附图和具体实施方式,对本发明作进一步说明。
如图1所示,一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,具体步骤为:
Step1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},其中xi和yi分别表示所选取的两个数据集的线性数据,然后使用DBSCAN聚类算法发现噪声点,并删除这些噪声点得到两个新的数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp},从而实现对测试数据进行去噪。
Step2:使用LDA线性判决方法对数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}进行进一步降维处理,将集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}合并为新的数据集合D={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},其中sh表示两个数据集合中A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}的线性数据xi和yj,dh表示线性数据xi和yj的种类,w=o+p,dh∈{0,1},当sh∈A时,dh=0,当sh∈B时,dh=1,而后通过公式
Figure BDA0002490178760000061
和/>
Figure BDA0002490178760000062
分别算出数据集合D的类间离散度矩阵SB以及类内离散度矩阵SW,而后再求出数据集合D的投影矩阵W,最后对数据集合D中每一个特征数据xi进行降维,转化为新的样本数据集合D'={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},从而得到维度分类更为准确的测试数据。
Step3:根据step2降维处理后的样本数据集合
Figure BDA0002490178760000063
根据离散变量是指其数值只能用自然数、整数、计数单位等描述的数据,而连续变量,指在一定区间内可以任意取值,相邻的两个数值可作无限分割(即可取无限个值)为依据,将数据集D数据划分为连续特征的数据和离散特征的数据,对连续特征数据使用孤立森林模型进行训练,根据孤立森林的异常分数S(x,n)来判断连续特征数据是否正常;对离散特征数据使用高斯分布模型进行训练,根据高斯分布异常分数T(r)的取值来判断测试数据是否正常。
Step4:对Step3中所计算得到的孤立森林的异常分数S(x,n)以及高斯分布异常分数T(r)进行加权计算,综合计算异常分数,通过异常分数对数据异常进行判断测试数据。
所述Step1的具体步骤为:
Step1.1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},通过公式
Figure BDA0002490178760000071
分别求每一个数据xi和yi的密度值ρ(xi)或者ρ(yj)。
若ρ(xi)≥0,则其为数据集A的核心点,若ρ(yj)≥0,则其为数据集B的核心点,记录并收集所有的核心点,构成集合Ac以及Bc,而非核心点所构成的集合Anc和Bnc,表示为
Figure BDA0002490178760000072
和/>
Figure BDA0002490178760000073
Step1.2:求出边界集合Abd和Bbd,若xi∈Anc,且
Figure BDA0002490178760000074
满足q∈A以及q∈Nx∩Ac,即xi的领域中存在核心点,则称xi为A的边界点,收集并记录A中所有边界点构成的集合为Abd,同理可求出Bbd。/>
Step1.3:根据Step1.1、Step1.2中所求得的核心点集合Ac,Bc,以及边界点集合Abd,Bbd,计算
Figure BDA0002490178760000075
和/>
Figure BDA0002490178760000076
若xi∈Anoise,则称xi为噪声点,将其删除;若yi∈Bnoise,则称yi为噪声点,将其删除。
所述Step2中求得SB和SW的具体步骤为:
Step2.1:其中SB和SW分别定义如下:
Figure BDA0002490178760000077
SB=(m1-m2)(m1-m2)T
式中,任意样本数据xi为n维向量,ni表示第i类样本的个数,
Figure BDA0002490178760000078
表示第i类样本中的第j个样本,mi表示第i类样本的均值,m表示总体样本均值,c为类别数。
所述Step3中对连续特征数据用孤立森林模型进行训练的具体步骤如下:
Step3.1:孤立森林中有很多棵树,每棵树都为二叉树,称为iTree。iTree中的结点要么有两个子结点,即左子结点和右子结点,要么本身是叶子结点。对孤立森林模型中的二叉树iTree进行训练,其训练步骤为:
Step3.1.1:从原始数据集中随机选取30%的原始数据集个数的数据,作为iTree的训练数据集,每训练一棵树都重复这个步骤,保证每棵树都是不同的。
Step3.1.2:随机选取数据sh的一个特征G和该特征的取值g。
Step3.1.3:根据选取的特征G对所有数据进行分类,将特征G的值小于g的样本放在左子结点,将特征G的值大于G的样本放入右子结点。
Step3.1.4:对于左子结点和右子结点重复上述Step3.1.2和Step3.1.3,直至符合以下条件:
结点中只有一个数据或者多个一样的数据;或者,树的高度己经达到了孤立森林模型中树的平均高度L。
Step3.2:将孤立森林中的每棵树都如Step3.1进行构造,构成森林,孤立森林模型训练好之后,进而计算每棵树中样本落在叶子结点的距离,并以这段距离来作为判断异常点的依据。
Step3.3:首先区分出叶子节点和根结点(根节点就是树的最顶端的节点,当不断细分直到不再有子节点时为叶子节点),每棵树中叶子结点到根结点的路径长度记作h(x),森林中的多棵树的叶子结点到根结点的平均路径长度记作c(x),E(h(x))为样本在森林中所有路径的期望。
异常分数为:
Figure BDA0002490178760000081
S(x,n)的取值范围为[0,1],根据S(x,n)的取值来判断异常点,越接近于1,越有可能是异常点。
所述Step3中对离散特征数据使用高斯模型进行训练的具体步骤如下:
Step3.4:将正态分布应用在高斯模型(异常检测模型)中,用训练数据集训练概率分布模型,计算得到概率密度函数中的参数μi,σi,从而得到数据的概率分布。
若离散变量si服从高斯分布,则其概率密度函数为:
Figure BDA0002490178760000082
对于不服从高斯分布相互独立的随机变量{R1,R2...Ri...Rn},其中Ri~(μi~σi 2)则这n个随机变量的联合分布为多维正态分布,概率密度函数为:
Figure BDA0002490178760000083
Step3.5:当用概率密度函数P(r)计算测试集数据的概率时,如果概率密度函数P(r)大于80%,则认为,该数据服从正态分布。
如果概率密度函数P(r)<ε时,则认为该数据为异常数据;对于ε的取值,根据异常检测对异常数据的容忍度,按照需求选取,ε取值为0.05。
高斯分布异常分数计算为:T(r)=1-p(r)。
根据高斯分布异常分数来确定异常情况,T(r)越接近于1,则越为异常点。
所述Step4的具体步骤为:
根据step3两个模型所获得的孤独森林异常分数S(x,n)以及高斯模型异常分数T(r)进行综合计算,综合异常分数M(x)为:
Figure BDA0002490178760000091
通过在测试集上的实验将异常分数的阈值E为0.45。
若综合异常分数M(x)大于等于阈值E,则认为该数据为异常数据。
若综合异常分数M(x)小于阈值E,则认为该数据是正常的。
本发明通过KDDCUP99作为网络层的数据集,TEP作为控制器和现场设备层的数据集来模拟***服务器平台采集的数据集,首先使用DBSCAN聚类算法对这两组数据集进行初步去噪,发现噪声点,并去除噪声点,再通过KDDCUP99作为网络层的数据集以及TEP作为控制器和现场设备层的数据集来模拟***服务器平台采集的数据集整合成一个数据集,并进行分类,而后通过LDA线性判决方法对数据进行分类提取之后,可将数据特征变换为11维,这11维特征之间互不相关,代表了原始数据的主要信息。
具体结果如图2及图3所示,通过DBSCAN聚类算法过滤掉噪声之后再使用LDA线性判决方法与直接使用LDA线性判决方法相比较,DBSCAN聚类算法过滤特征之后,样本的协方差矩阵特征值分布区分更加明显,对数据的降维效果更好。通常对服务器平台数据进行降维处理的方法主要为PCA主成分分析方法,但是由于不考虑分类信息,因此,降低维度后,信息损失虽然降到很低,但分类上可能会变得更加困难。而使用LDA线性判决方法可以在降维的过程中更好的分类出原始数据空间中的数据,经过映射得到的低维数据更加容易区分。
对于降维后的数据选用KDDCUP99数据集中的一种攻击类型PROBE和正常的数据对孤立森林模型进行训练。将数据的连续特征和离散特征训练的结果综合考虑,综合分析实验结果的精确率、召回率以及F1值。实验通过孤立森林中iTree的不同样本,来对比改进的孤立森林算法和高斯分布的联合数据异常检测模型与单独孤立森林模型的精确率、召回率以及F1值。并对比改进的孤立森林算法和高斯分布的联合数据异常检测模型模型与单独高斯分布模型的性能。
在树的样本个数为250时,TEP数据集改进的孤立森林算法和高斯分布的联合数据异常检测模型的精确率,召回率以及F1值为[0.9178743961352657,0.95,0.9336609336609336].TEP数据集高斯分布的精确率、召回率和F1值为[0.8115 9420289855 08,0.84,0.8255528255528256]。从上述KDDCUP99数据集和TEP数据集实验结果可以看出,改进的孤立森林算法和高斯分布的联合数据异常检测模型的精确率、召回率以及F1值比只用孤立森林模型或高斯分布模型单独检测的结果都要更好,并且通过实验可以发现,孤立森林中的iTree的样本个数在250时,模型的效果最佳。
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

Claims (6)

1.一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于:
Step1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},其中xi和yi分别表示所选取的两个数据集的线性数据,然后使用DBSCAN聚类算法发现噪声点,并删除这些噪声点得到两个新的数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp},从而实现对测试数据进行去噪;
Step2:使用LDA线性判决方法对数据集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}进行降维处理,将集合A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}合并为新的数据集合D={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},其中sh表示两个数据集合中A1={x1,x2....xi...xo}和B1={y1,y2.....yj.....yp}的线性数据xi和yj,dh表示线性数据xi和yj的种类,w=o+p,dh∈{0,1},当sh∈A时,dh=0,当sh∈B时,dh=1,而后通过公式
Figure FDA0002490178750000011
和/>
Figure FDA0002490178750000012
分别算出数据集合D的类间离散度矩阵SB以及类内离散度矩阵SW,而后再求出数据集合D的投影矩阵W,最后对数据集合D中每一个特征数据xi进行降维,转化为新的样本数据集合D'={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},从而得到维度分类更为准确的测试数据;
Step3:根据step2降维处理后的样本数据集合D'={(s1,d1),(s2,d2)...(sh,dh)...(sw,dw)},将数据集D数据划分为连续特征的数据和离散特征的数据,对连续特征数据使用孤立森林模型进行训练,根据孤立森林的异常分数S(x,n)来判断连续特征数据是否正常;对离散特征数据使用高斯分布模型进行训练,根据高斯分布异常分数T(r)的取值来判断测试数据是否正常;
Step4:对Step3中所计算得到的孤立森林的异常分数S(x,n)以及高斯分布异常分数T(r)进行加权计算,综合计算异常分数,通过异常分数对数据异常进行判断测试数据。
2.根据权利要求1所述的基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于所述Step1的具体步骤为:
Step1.1:接入服务器平台数据,选取两个线性数据集A={x1,x2....xi...xn}和B={y1,y2.....yj.....yn},通过公式
Figure FDA0002490178750000013
分别求每一个数据xi和yi的密度值ρ(xi)或者ρ(yj);
若ρ(xi)≥0,则其为数据集A的核心点,若ρ(yj)≥0,则其为数据集B的核心点,记录并收集所有的核心点,构成集合Ac以及Bc,而非核心点所构成的集合Anc和Bnc,表示为
Figure FDA0002490178750000021
Figure FDA0002490178750000022
Step1.2:求出边界集合Abd和Bbd,若xi∈Anc,且
Figure FDA0002490178750000023
满足q∈A以及q∈Nx∩Ac,即xi的领域中存在核心点,则称xi为A的边界点,收集并记录A中所有边界点构成的集合为Abd,同理可求出Bbd
Step1.3:根据Step1.1、Step1.2中所求得的核心点集合Ac,Bc,以及边界点集合Abd,Bbd,计算
Figure FDA0002490178750000024
和/>
Figure FDA0002490178750000025
若xi∈Anoise,则称xi为噪声点,将其删除;若yi∈Bnoise,则称yi为噪声点,将其删除。
3.根据权利要求1所述的基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于所述Step2中求得SB和SW的具体步骤为:
Step2.1:其中SB和SW分别定义如下:
Figure FDA0002490178750000026
SB=(m1-m2)(m1-m2)T
式中,任意样本数据xi为n维向量,ni表示第i类样本的个数,
Figure FDA0002490178750000027
表示第i类样本中的第j个样本,mi表示第i类样本的均值,m表示总体样本均值,c为类别数。
4.根据权利要求1所述的基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于所述Step3中对连续特征数据用孤立森林模型进行训练的具体步骤如下:
Step3.1:对孤立森林模型中的二叉树iTree进行训练,其训练步骤为:
Step3.1.1:从原始数据集中随机选取30%的原始数据集个数的数据,作为iTree的训练数据集,每训练一棵树都重复这个步骤,保证每棵树都是不同的;
Step3.1.2:随机选取数据sh的一个特征G和该特征的取值g;
Step3.1.3:根据选取的特征G对所有数据进行分类,将特征G的值小于g的样本放在左子结点,将特征G的值大于G的样本放入右子结点;
Step3.1.4:对于左子结点和右子结点重复上述Step3.1.2和Step3.1.3,直至符合以下条件:
结点中只有一个数据或者多个一样的数据或树的高度己经达到了孤立森林模型中树的平均高度L;
Step3.2:将孤立森林中的每棵树都如Step3.1进行构造,构成森林,孤立森林模型训练好之后,进而计算每棵树中样本落在叶子结点的距离,并以这段距离来作为判断异常点的依据;
Step3.3:首先区分出叶子节点和根结点,每棵树中叶子结点到根结点的路径长度记作h(x),森林中的多棵树的叶子结点到根结点的平均路径长度记作c(x),E(h(x))为样本在森林中所有路径的期望;
异常分数为:
Figure FDA0002490178750000031
S(x,n)的取值范围为[0,1],根据S(x,n)的取值来判断异常点。
5.根据权利要求1所述的基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于所述Step3中对离散特征数据使用高斯模型进行训练的具体步骤如下:
Step3.4:将正态分布应用在高斯模型中,用训练数据集训练概率分布模型,计算得到概率密度函数中的参数μi,σi,从而得到数据的概率分布;
若离散变量si服从高斯分布,则其概率密度函数为:
Figure FDA0002490178750000032
/>
对于不服从高斯分布相互独立的随机变量{R1,R2...Ri...Rn},其中Ri~(μi~σi 2)则这n个随机变量的联合分布为多维正态分布,概率密度函数为:
Figure FDA0002490178750000033
Step3.5:当用概率密度函数P(r)计算测试集数据的概率时,如果概率密度函数P(r)大于80%,则认为,该数据服从正态分布,如果概率密度函数P(r)<ε时,则认为该数据为异常数据;
高斯分布异常分数计算为:T(r)=1-p(r)。
6.根据权利要求1所述的基于改进的孤立森林算法和高斯分布的联合数据异常检测方法,其特征在于所述Step4的具体步骤为:
根据step3两个模型所获得的孤独森林异常分数S(x,n)以及高斯模型异常分数T(r)进行综合计算,综合异常分数M(x)为:
Figure FDA0002490178750000041
若综合异常分数M(x)大于等于阈值E,则认为该数据为异常数据;
若综合异常分数M(x)小于阈值E,则认为该数据是正常的。
CN202010402904.2A 2020-05-13 2020-05-13 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法 Active CN111666169B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010402904.2A CN111666169B (zh) 2020-05-13 2020-05-13 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010402904.2A CN111666169B (zh) 2020-05-13 2020-05-13 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法

Publications (2)

Publication Number Publication Date
CN111666169A CN111666169A (zh) 2020-09-15
CN111666169B true CN111666169B (zh) 2023-03-28

Family

ID=72383483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010402904.2A Active CN111666169B (zh) 2020-05-13 2020-05-13 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法

Country Status (1)

Country Link
CN (1) CN111666169B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112185484A (zh) * 2020-10-13 2021-01-05 华北科技学院 一种基于AdaBoost模型的水质特征矿泉水分类方法
CN112711577A (zh) * 2020-12-17 2021-04-27 航天信息股份有限公司 一种异常交易企业识别方法及装置
CN112990314B (zh) * 2021-03-16 2023-04-18 中国科学院长春光学精密机械与物理研究所 基于改进孤立森林算法的高光谱图像异常检测方法及装置
CN112905583A (zh) * 2021-04-01 2021-06-04 辽宁工程技术大学 一种高维大数据离群点检测方法
CN113723477B (zh) * 2021-08-16 2024-04-30 同盾科技有限公司 一种基于孤立森林的跨特征联邦异常数据检测方法
CN114925731B (zh) * 2022-06-06 2024-05-31 华电金沙江上游水电开发有限公司叶巴滩分公司 检测柔性测斜仪监测数据异常值的方法
CN114826971B (zh) * 2022-06-28 2022-12-27 苏州浪潮智能科技有限公司 一种服务器异常检测方法、装置、设备及可读存储介质
CN115021679B (zh) * 2022-08-09 2022-11-04 国网山西省电力公司大同供电公司 一种基于多维离群点检测的光伏设备故障检测方法
CN115457414B (zh) * 2022-09-15 2023-05-05 西华大学 一种基于改进残差网络的无人机异常行为识别方法
CN115760484A (zh) * 2022-12-07 2023-03-07 湖北华中电力科技开发有限责任公司 一种配电台区隐患辨识能力提升方法、装置、***及存储介质
CN117114677A (zh) * 2023-07-12 2023-11-24 北京中盛九橙企业管理咨询有限公司 一种数字钱包管理***和方法
CN117238058B (zh) * 2023-11-10 2024-01-26 无锡明诚汽车部件有限公司 基于数据分析的汽车用起动机监测方法
CN117874653B (zh) * 2024-03-11 2024-05-31 武汉佳华创新电气有限公司 一种基于多源数据的电力***安全监测方法及***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108777873A (zh) * 2018-06-04 2018-11-09 江南大学 基于加权混合孤立森林的无线传感网络异常数据检测方法
CN109345137A (zh) * 2018-10-22 2019-02-15 广东精点数据科技股份有限公司 一种基于农业大数据的异常值检测方法
CN110046665A (zh) * 2019-04-17 2019-07-23 成都信息工程大学 基于孤立森林二分类异常点检测方法、信息数据处理终端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108777873A (zh) * 2018-06-04 2018-11-09 江南大学 基于加权混合孤立森林的无线传感网络异常数据检测方法
CN109345137A (zh) * 2018-10-22 2019-02-15 广东精点数据科技股份有限公司 一种基于农业大数据的异常值检测方法
CN110046665A (zh) * 2019-04-17 2019-07-23 成都信息工程大学 基于孤立森林二分类异常点检测方法、信息数据处理终端

Also Published As

Publication number Publication date
CN111666169A (zh) 2020-09-15

Similar Documents

Publication Publication Date Title
CN111666169B (zh) 一种基于改进的孤立森林算法和高斯分布的联合数据异常检测方法
CN110263846B (zh) 基于故障数据深度挖掘及学习的故障诊断方法
CN107493277B (zh) 基于最大信息系数的大数据平台在线异常检测方法
CN111798312A (zh) 一种基于孤立森林算法的金融交易***异常识别方法
CN111556016B (zh) 一种基于自动编码器的网络流量异常行为识别方法
CN111898639B (zh) 基于降维的分层时间记忆工业异常检测方法与装置
CN112039903B (zh) 基于深度自编码神经网络模型的网络安全态势评估方法
CN112199670B (zh) 一种基于深度学习改进iforest对行为异常检测的日志监控方法
CN111915418A (zh) 一种互联网金融欺诈行为在线检测方法及其装置
CN113556319B (zh) 物联网下基于长短期记忆自编码分类器的入侵检测方法
CN112529638B (zh) 基于用户分类和深度学习的服务需求动态预测方法及***
CN114124482A (zh) 基于lof和孤立森林的访问流量异常检测方法及设备
CN114707571A (zh) 基于增强隔离森林的信用数据异常检测方法
CN113537321A (zh) 一种基于孤立森林和x均值的网络流量异常检测方法
CN114067915A (zh) 一种基于深度对抗变分自编码器的scRNA-seq数据降维方法
CN117421684A (zh) 基于数据挖掘和神经网络的异常数据监测与分析方法
CN115438102A (zh) 时空数据异常识别方法、装置和电子设备
CN110189799B (zh) 基于变量重要性评分和奈曼皮尔逊检验的宏基因组特征选择方法
Wayahdi et al. Evaluation of the K-Nearest Neighbor Model With K-Fold Cross Validation on Image Classification
CN111600878A (zh) 一种基于maf-adm的低速率拒绝服务攻击检测方法
CN116400168A (zh) 一种基于深度特征聚类的电网故障诊断方法及***
CN114896228B (zh) 基于过滤规则多级组合优化的工业数据流清洗模型和方法
CN113722230B (zh) 针对模糊测试工具漏洞挖掘能力的集成化评估方法及装置
CN116318925A (zh) 一种多cnn融合入侵检测方法、***、介质、设备及终端
CN113010673A (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