CN113159181B - 基于改进的深度森林的工业控制***异常检测方法和*** - Google Patents

基于改进的深度森林的工业控制***异常检测方法和*** Download PDF

Info

Publication number
CN113159181B
CN113159181B CN202110438900.4A CN202110438900A CN113159181B CN 113159181 B CN113159181 B CN 113159181B CN 202110438900 A CN202110438900 A CN 202110438900A CN 113159181 B CN113159181 B CN 113159181B
Authority
CN
China
Prior art keywords
feature
feature vector
vector
class
characteristic
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
CN202110438900.4A
Other languages
English (en)
Other versions
CN113159181A (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.)
Hunan University
Original Assignee
Hunan University
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 Hunan University filed Critical Hunan University
Priority to CN202110438900.4A priority Critical patent/CN113159181B/zh
Publication of CN113159181A publication Critical patent/CN113159181A/zh
Application granted granted Critical
Publication of CN113159181B publication Critical patent/CN113159181B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种工业控制网络下基于改进的环形多粒度扫描深度森林的异常检测方法,具体包括:采用Z‑score方法对构建的训练集样本进行归一化处理,将特征数据映射到[‑1,1]区间;采用主成分分析法对样本特征集合进行特征降维,生成特征两两不相关的新特征向量集;将降维后的特征向量集经过环形多粒度扫描结构,生成每个样本的特征子向量;将特征子向量集分别输入到半随机森林和完全随机森林中,生成对应的类特征向量,并组合成新的类特征向量作为级联森林的特征输入;将生成的类特征向量集合输入至多元化级联森林结构中,迭代至收敛,并生成最终的类特征向量。本发明能解决现有方法对工业控制***网络异常行为检测率低、泛化性弱等问题。

Description

基于改进的深度森林的工业控制***异常检测方法和***
技术领域
本发明属于信息安全技术领域,更具体地,涉及一种基于改进的深度森林的工业控制***异常检测方法和***。
背景技术
工业控制网络通常采用专有的协议进行通讯,这些协议在设计之初往往仅考虑了功能性方面的需求,安全性却没有达到足够的强度。随着网络技术的发展,工业控制网络在逐步与互联网加深联系的同时,接触到外界攻击或入侵的几率逐步增大。越来越多的工业控制网络被接入到互联网等公共网络中,这也使得工业控制网络中的安全问题越来越明显地暴露了出来。
传统防范工业控制网络遭受网络攻击的措施主要是对通用的互联网协议的异常通讯行为进行解析和识别,并根据预设的规则和特征值进行匹配,从而实现简单的安全过滤。
然而,上述异常行为检测的方法存在着不可忽略的缺陷:其主要依赖于特征匹配来识别危险网络行为,不仅对工控网络异常的识别率低,而且泛化性也弱。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于改进的环形多粒度扫描深度森林的工业控制***异常检测方法,其目的在于,解决现有工业控制网络异常检测方法存在的识别率低和泛化率低的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于改进的深度森林的工业控制***异常检测方法,包括以下步骤:
(1)获取来自待检测的工业控制***的网络数据,对该网络数据进行预处理,以得到样本集合;
(2)将步骤(1)得到的样本集合输入到预先训练好的异常检测模型中,以得到异常检测的结果。
优选地,步骤(1)具体为,对获取的网络数据的数据类别进行统一数值化转换,将正常数据和异常数据的标签分别用0和1表示,然后采用Z-score方法对数值化转换后的网络数据进行归一化处理,最后,将归一化后的网络数据中每个样本的一个特征作为一个数据维度,从而将样本转换成特征向量,所有样本对应的特征向量组成样本集合。
优选地,步骤(2)具体为,使用PCA方法对步骤(1)得到的样本集合进行特征提取,以得到降维后的新特征向量集合,使用训练好的异常检测模型中的环形多粒度扫描结构对降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有特征子向量集合组成大集合,将大集合中的每个特征子向量集合中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得类特征向量,集合中的所有特征子向量集合对应的多个初始类特征向量组成类特征向量集合,然后,将类特征向量输入训练好的异常检测模型中的级联森林模型,以得到最终的类特征向量,最后,将最终的类特征向量输入到最后一层的集成分类模型中,以得到多个分类结果,并获取所有分类结果的均值,如果该均值大于0.5,则说明待检测的工业控制***出现异常,否则说明其正常。
优选地,异常检测模型是通过以下步骤训练得到的:
(1)获取网络数据,并根据网络数据构建数据集X,X∈Rn×m,其中R表示实数集,n表示数据集中的样本总数;
Figure GDA0003588953970000021
其中,xi=[x1i x2i … xni]T,(i=1,2,…m)表示数据集中每个样本的第i维特征组成的特征集合。
(2)采用Z-score归一化方法对步骤(1)得到的数据集进行归一化处理,并对归一化处理后的数据集按5:1的比例划分为训练集Xtrain,Xtrain∈Rn×m和测试集Xtest,Xtest∈Rn×m
(3)使用PCA方法对步骤(2)得到的训练集Xtrain进行特征提取,以得到降维后的新特征向量集合。
(4)使用异常检测模型中的环形多粒度扫描结构对步骤(3)降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有n个特征子向量集合(其用于增强后续多元化级联森林结构的表征学习)组成大集合H。
(5)将步骤(4)获取的大集合H中的每个特征子向量集合Hd,d∈{1,2,…,n}中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得2个c维的类特征向量U={u1,u2,…,uc},每个特征子向量集合Hd,d∈{1,2,…,n}中所有k个特征子向量对应的k个2c维特征向量组成初始类特征向量bd,其维度为1×2kc,集合H中的所有特征子向量集合对应的n个初始类特征向量组成初始类特征向量集合B={b1b2…bn},其维度为n×2kc,其中c表示分类类别数;
(6)将步骤(5)中生成的初始类特征向量输入多元化级联森林结构中进行迭代训练,直到多元化级联森林结构收敛为止,从而得到训练好的异常检测模型。
优选地,步骤(3)具体为,首先是利用PCA方法将训练集Xtrain中的m个特征集合进行线性转换如下:
Figure GDA0003588953970000041
其中,Y=[y1 y2 … ym]是经过转换后的新特征集合,样本协方差矩阵A等于:
Figure GDA0003588953970000042
其中,
Figure GDA0003588953970000043
xi为步骤(1)中每个样本的第i维特征组成的特征集合,
Figure GDA0003588953970000044
表示数据集中所有样本对应的特征集合的平均值;
然后,依据λα=Yα求得新特征集合Y的特征向量集合α和特征值集合λ,
其中α=[α12,…,αm],λ=[λ12,…,λm],其中λi表示第i个主成分对应的特征值;
随后,根据第i个主成分对应的特征值λi计算第i个主成分的方差贡献率pi
Figure GDA0003588953970000045
其中,pi表示第i个主成分的方差贡献率。
随后,设置k=1,并根据第i个主成分对应的特征值λi、使用以下公式获取k=1时第i个主成分的累计方差贡献率
Figure GDA0003588953970000046
Figure GDA0003588953970000047
然后,设置k=2,沿用上一段的计算公式,以获取k=2时第i个主成分的累计方差贡献率
Figure GDA0003588953970000051
并判断该值相对于k=1时第i个主成分的累计方差贡献率
Figure GDA0003588953970000052
时的增长率是否小于1%,如果是则将k值固定为2,否则继续设置k=3,并获取k=3时第i个主成分的累计方差贡献率
Figure GDA0003588953970000053
并判断该值相对于k=2时第i个主成分的累计方差贡献率
Figure GDA0003588953970000054
时的增长率是否小于1%,如果是则将k值固定为3,否则继续设置k=4,…以此类推;
然后,依据各主成分的方差贡献率进行由大到小排序,从排序结果中选取前k个主成分的方差贡献率对应的特征值,记这些特征值对应的下标所组成的下标集合为index={index1,index2,…,indexk},从新特征集合Y中按下标集合index选取对应下标的列,从而得到降维后所有样本的新特征向量集合,记为
Figure GDA0003588953970000055
其中zd,(d=1,2,…,n)表示降维后的第d个样本的特征向量,其包含k个特征,即zd={fd1fd2 … fdk},其维度为1×k。
优选地,步骤(4)具体为,首先对步骤(3)降维后的新特征向量集合中的第一个特征向量z1={f11 f12 … f1k}进行环形多粒度扫描处理,将特征f11与特征f1k连接,使得特征向量z1={f11 f12 … f1k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f11开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f12,再获取的特征子向量记为F2={f12,f13,…,f1(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为f1k,获取的特征子向量记为Fk={f1k,f11,…,f1(t-1)},所有k个特征子向量构成特征子向量集合H1={F1 F2 …Fk}。
然后,首先对步骤(3)降维后的新特征向量集合中的第二个特征向量z2={f21 f22… f2k}进行环形多粒度扫描处理,将特征f21与特征f2k连接,使得特征向量z2={f21 f22 …f2k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f21开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f22,再获取的特征子向量记为F2={f22,f23,…,f2(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={f2k,f21,…,f2(t-1)},所有k个特征子向量构成特征子向量集合H2={F1 F2 … Fk};
…以此类推;
随后,对步骤(3)降维后的新特征向量集合中的第n个特征向量zn={fn1 fn2 …fnk}进行环形多粒度扫描处理,将特征fn1与特征fnk连接,使得特征向量zn={fn1 fn2 …fnk}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征fn1开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为fn2,再获取的特征子向量记为F2={fn2,fn3,…,fn(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={fnk,fn1,…,fn(t-1)},所有k个特征子向量构成特征子向量集合Hn={F1F2…Fk}。
最终,将所有n个样本特征向量对应的所有特征子向量集合所组成的大集合记为H={H1,H2,…,Hd},(d=1,2,…,n)。
优选地,步骤(6)具体为,首先,对多元化级联森林结构的第一层做如下处理:
首先,将初始类特征向量集合B中的第一个初始类特征向量b1分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维类特征向量e11={o1 o2 o3 o4 o5 b1};
然后,将初始类特征向量集合B中的第二个最终类特征向量b2分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e12={o1 o2 o3 o4 o5 b2},…以此类推;
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维类特征向量组成第一层的类特征向量集合E1={e11 e12 … e1n}。
然后,对多元化级联森林结构的第二层做如下处理:
首先,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第一个类特征向量e11分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维特征向量e21={o1 o2 o3 o4 o5 b1}。
其次,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第二个类特征向量e12分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e22={o1 o2 o3 o4 o5 b2},…以此类推。
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维特征向量组成第二层的类特征向量集合E2={e21 e22 … e2n}。
随后,多元化级联森林结构的后续层按照与上述第一层和第二层相同的方式进行处理,直至多元化级联森林结构收敛为止,模型训练完成。
按照本发明的另一方面,提供了一种基于改进的深度森林的工业控制***异常检测***,包括:
第一模块,用于获取来自待检测的工业控制***的网络数据,对该网络数据进行预处理,以得到样本集合;
第二模块,用于将第一模块得到的样本集合输入到预先训练好的异常检测模型中,以得到异常检测的结果。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明采用了步骤(4),其通过环形多粒度扫描结构对样本的特征向量进行充分扫描,获取丰富的特征子向量,增强了后续多元化级联森林结构的表征学习能力,从而提高异常检测识别率,因此能解决现有工业控制网络异常检测识别率低的技术问题;
(2)由于本发明采用了步骤(5),其通过增加多元化级联森林结构中的分类器的多样性,使得分类器之前能够互相弥补,因此能解决现有工业控制网络异常检测泛化性差的技术问题;
(3)由于本发明在步骤(5)中采用了集成学习的思想,集成了多个分类器,所以存在分布式并行的可行性,并能够加快异常检测模型的检测效率。
附图说明
图1是本发明基于改进的深度森林的工业控制***异常检测方法的流程图;
图2是本发明使用的异常检测模型的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的具体思路在于,针对工业控制***网络特殊性,利用深度学习思想构建工业控制***网络异常检测模型,一方面,对样本数据进行数据预处理,并对样本特征进行特征提取,另一方面,采用环形多粒度扫描结构充分扫描特征向量,构建特征子集合,利用多元化级联森林结构进行异常检测。在这两个角度上提升了本文异常检测的效果。
如图1所示,本发明提供了一种基于改进的深度森林的工业控制***异常检测方法,包括如下步骤:
(1)获取来自待检测的工业控制***的网络数据,对该网络数据进行预处理,以得到样本集合;
具体而言,因为根据不同的数据获取方法,表示数据是正常数据还是异常数据的方式不同,所本步骤首先对获取的网络数据的数据类别进行统一数值化转换,将正常数据和异常数据的标签分别用0和1表示,然后采用Z-score方法对数值化转换后的网络数据进行归一化处理,保证各特征之间的统一量纲,最后,将归一化后的网络数据中每个样本的一个特征作为一个数据维度,从而将样本转换成特征向量,所有样本对应的特征向量组成样本集合。
上述步骤(1)的优点在于,保证了特征之间的量纲一致,避免给后续异常检测性能带来影响。
(2)将步骤(1)得到的样本集合输入到预先训练好的异常检测模型中,以得到异常检测的结果。
具体而言,本步骤是将样本集合依次经过以下所述的步骤(3)、步骤(4)、步骤(5)处理,以得到类特征向量,然后,将类特征向量输入步骤(6)中训练好的级联森林模型,以得到最终的类特征向量,最后,将最终的类特征向量输入到最后一层的集成分类模型中,以得到多个分类结果,求取所有分类结果的均值,如果该均值大于0.5,则说明待检测的工业控制***出现异常,否则说明其正常。
如图2所示,本发明的异常检测模型包含彼此连接的环形多粒度扫描结构和多元化级联森林结构。
针对环形多粒度扫描结构而言,其输入为1×m维特征向量(m为每个样本具有的特征总数),利用一个长度为1×t的滑动窗口(t为自然数,其一般根据具体的特征向量自适应调整)对1×m维特征向量进行扫描,以生成对应的m个特征子向量;
针对多元化级联森林结构而言,其输入是第一部分生成的m个特征子向量,输入到多元化级联森林结构中第一层集成学习模块,分别生成对应的类向量,将该类向量与m个特征子向量线性组合,作为第二层集成学习模块的输入,…,以此类推;
具体而言,本步骤中的异常检测模型是通过以下步骤训练得到的:
(1)获取网络数据,并根据网络数据构建数据集。
本步骤中,构建数据集X,X∈Rn×m,其中R表示实数集,n表示数据集中的样本总数。
Figure GDA0003588953970000101
其中,xi=[x1i x2i … xni]T,(i=1,2,…m)表示数据集中每个样本的第i维特征组成的特征集合。
(2)采用Z-score归一化方法对步骤(1)得到的数据集进行归一化处理,并对归一化处理后的数据集按5:1的比例划分为训练集Xtrain,Xtrain∈Rn×m和测试集Xtest,Xtest∈Rn×m
(3)使用主成分分析(Primary component analysis,简称PCA)方法对步骤(2)得到的训练集Xtrain进行特征提取,以得到降维后的新特征向量集合。
具体而言,本步骤首先是利用PCA方法将训练集Xtrain中的m个特征集合进行线性转换如下:
Figure GDA0003588953970000111
其中,Y=[y1 y2 … ym]是经过转换后的新特征集合,样本协方差矩阵记作A:
Figure GDA0003588953970000112
其中,
Figure GDA0003588953970000113
xi为步骤(1)中每个样本的第i维特征组成的特征集合,
Figure GDA0003588953970000114
表示数据集中所有样本对应的特征集合的平均值。
并且满足:
1)yi,yj(i≠j)相互独立。
2)y1方差大于y2方差,以此类推。
3)
Figure GDA0003588953970000115
然后,依据λα=Yα求得新特征集合Y的特征向量集合α和特征值集合λ,
其中α=[α12,…,αm],λ=[λ12,…,λm],其中λi表示第i个主成分对应的特征值。
随后,根据第i个主成分对应的特征值λi计算第i个主成分的方差贡献率pi
Figure GDA0003588953970000121
其中,pi表示第i个主成分的方差贡献率。
随后,设置k=1,并根据第i个主成分对应的特征值λi、使用以下公式获取k=1时第i个主成分的累计方差贡献率
Figure GDA0003588953970000122
Figure GDA0003588953970000123
然后,设置k=2,沿用上一段的计算公式,以获取k=2时第i个主成分的累计方差贡献率
Figure GDA0003588953970000124
并判断该值相对于k=1时第i个主成分的累计方差贡献率
Figure GDA0003588953970000125
时的增长率是否小于1%,如果是则将k值固定为2,否则继续设置k=3,并获取k=3时第i个主成分的累计方差贡献率
Figure GDA0003588953970000126
并判断该值相对于k=2时第i个主成分的累计方差贡献率
Figure GDA0003588953970000127
时的增长率是否小于1%,如果是则将k值固定为3,否则继续设置k=4,…以此类推;
然后,依据各主成分的方差贡献率进行由大到小排序,从排序结果中选取前k个主成分的方差贡献率对应的特征值,记这些特征值对应的下标所组成的下标集合为index={index1,index2,…,indexk}(该下标是非连续的),从新特征集合Y中按下标集合index选取对应下标的列,从而得到降维后所有样本的新特征向量集合,记为
Figure GDA0003588953970000128
(矩阵Q是n*k维,其中的一行代表一个样本,一列代表一个样本的一个特征向量),其中zd,(d=1,2,…,n)表示降维后的第d个样本的特征向量,其包含k个特征,即zd={fd1 fd2 … fdk},其维度为1×k。
(4)使用异常检测模型中的环形多粒度扫描结构对步骤(3)降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有n个特征子向量集合(其用于增强后续多元化级联森林结构的表征学习)组成大集合H。
具体而言,环形多粒度扫描法采用长度为t(t的取值范围是2到k,优选为3)的滑动窗口逐个对步骤(3)中得到的每一个样本特征向量zd,(d=1,2,…,n)进行扫描。
本步骤具体为,首先对步骤(3)降维后的新特征向量集合中的第一个特征向量z1={f11 f12 … f1k}进行环形多粒度扫描处理,将特征f11与特征f1k连接,使得特征向量z1={f11 f12 … f1k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f11开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量(例如起始特征为f11,那么获取的特征子向量记为F1={f11,f12,…,f1t}),然后,把滑动窗口向右移动一个单位,使得起始特征为f12,再获取的特征子向量记为F2={f12,f13,…,f1(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为f1k,获取的特征子向量记为Fk={f1k,f11,…,f1(t-1)},所有k个特征子向量构成特征子向量集合H1={F1 F2 … Fk}。
然后,首先对步骤(3)降维后的新特征向量集合中的第二个特征向量z2={f21 f22… f2k}进行环形多粒度扫描处理,将特征f21与特征f2k连接,使得特征向量z2={f21 f22 …f2k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f21开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量(例如起始特征为f21,那么获取的特征子向量记为F1={f21,f22,…,f2t}),然后,把滑动窗口向右移动一个单位,使得起始特征为f22,再获取的特征子向量记为F2={f22,f23,…,f2(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={f2k,f21,…,f2(t-1)},所有k个特征子向量构成特征子向量集合H2={F1 F2 … Fk};
…以此类推;随后,对步骤(3)降维后的新特征向量集合中的第n个特征向量zn={fn1 fn2 … fnk}进行环形多粒度扫描处理,将特征fn1与特征fnk连接,使得特征向量zn={fn1 fn2 … fnk}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征fn1开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量(例如起始特征为fn1,那么获取的特征子向量记为F1={fn1,fn2,…,fnt}),然后,把滑动窗口向右移动一个单位,使得起始特征为fn2,再获取的特征子向量记为F2={fn2,fn3,…,fn(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={fnk,fn1,…,fn(t-1)},所有k个特征子向量构成特征子向量集合Hn={F1 F2 … Fk}。
最终,将所有n个样本特征向量对应的所有特征子向量集合所组成的大集合记为H={H1,H2,…,Hd},(d=1,2,…,n)。
(5)将步骤(4)获取的大集合H中的每个特征子向量集合Hd,d∈{1,2,…,n}中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得2个c维(其中c表示分类类别数,此处异常检测属于二分类问题,所以c=2)的类特征向量U={u1,u2,…,uc},每个特征子向量集合Hd,d∈{1,2,…,n}中所有k个特征子向量对应的k个2c维特征向量组成初始类特征向量bd,其维度为1×2kc,集合H中的所有特征子向量集合对应的n个初始类特征向量组成初始类特征向量集合B={b1 b2 … bn},其维度为n×2kc。
上述步骤(3)的优点在于,能够去除特征中的冗余特征和不相关特征,从而加快后续的异常检测效率与准确率。
上述步骤(4)的优点在于,通过多粒度扫描结构增加多元化级联森林结构的表征学习能力,进一步提升了异常检测的识别率。
上述步骤(5)的优点在于,通过多元化级联森林结构引入多种不同的分类器,增强了模型的泛化性。
(6)将步骤(5)中生成的初始类特征向量输入多元化级联森林结构中进行迭代训练,直到多元化级联森林结构收敛为止,从而得到训练好的异常检测模型。
具体而言,本步骤是将步骤(5)中生成的初始类特征向量集合B作为训练集输入到多元化级联森林结构中进行模型训练。
本步骤具体为,首先,对多元化级联森林结构的第一层做如下处理:
首先,将初始类特征向量集合B中的第一个初始类特征向量b1分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维类特征向量e11={o1 o2 o3 o4 o5 b1};
然后,将初始类特征向量集合B中的第二个最终类特征向量b2分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e12={o1 o2 o3 o4 o5 b2},…以此类推。
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维类特征向量组成第一层的类特征向量集合E1={e11 e12 … e1n}。
然后,对多元化级联森林结构的第二层做如下处理:
首先,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第一个类特征向量e11分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维特征向量e21={o1 o2 o3 o4 o5 b1}。
其次,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第二个类特征向量e12分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e22={o1 o2 o3 o4 o5 b2},…以此类推。
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维特征向量组成第二层的类特征向量集合E2={e21 e22 … e2n}。
随后,多元化级联森林结构的后续层按照与上述第一层和第二层相同的方式进行处理,直至多元化级联森林结构收敛为止,模型训练完成。
实验结果
为了说明本发明在工业控制***网络异常检测领域的有效性以及检测效果,在多个数据集上进行验证测试,以密西西比州立大学关键基础设施保护中心的天然气管道测试数据,将本发明得到的测试结果与当前常用的方法进行对比,评估结果如下表1:
表1
Figure GDA0003588953970000161
根据上表1所示,在密西西比州立大学关键基础设施保护中心的天然气管道测试数据下的实验对比中,本发明在准确率、漏报率、误报率上都优于其它三种常用分类算法。在于,本发明提出的基于环形多粒度扫描结构和多元化级联森林结构的深度森林异常检测模型,通过在环形多粒度扫描结构上充分扫描特征向量,以获得增强后续级联森林的表征学习,并且在多元化级联森林结构引入多种弱分类器,以互补不同分类器的劣势,从而得到具有泛化性、强性能的集成模型,从而使整个异常检测模型性能更好。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种基于改进的深度森林的工业控制***异常检测方法,其特征在于,包括以下步骤:
一、获取来自待检测的工业控制***的网络数据,对该网络数据进行预处理,以得到样本集合;
二、将步骤一得到的样本集合输入到预先训练好的异常检测模型中,以得到异常检测的结果;异常检测模型是通过以下步骤训练得到的:
(1)获取网络数据,并根据网络数据构建数据集X,X∈Rn×m,其中R表示实数集,n表示数据集中的样本总数;
Figure FDA0003560818430000011
其中,xi=[x1i x2i … xni]Τ,(i=1,2,…m)表示数据集中每个样本的第i维特征组成的特征集合;
(2)采用Z-score归一化方法对步骤(1)得到的数据集进行归一化处理,并对归一化处理后的数据集按5:1的比例划分为训练集Xtrain,Xtrain∈Rn×m和测试集Xtest,Xtest∈Rn×m
(3)使用PCA方法对步骤(2)得到的训练集Xtrain进行特征提取,以得到降维后的新特征向量集合;步骤(3)具体为,首先是利用PCA方法将训练集Xtrain中的m个特征集合进行线性转换如下:
Figure FDA0003560818430000012
其中,Y=[y1 y2 … ym]是经过转换后的新特征集合,样本协方差矩阵A等于:
Figure FDA0003560818430000021
其中,
Figure FDA0003560818430000022
xi为步骤(1)中每个样本的第i维特征组成的特征集合,
Figure FDA0003560818430000023
表示数据集中所有样本对应的特征集合的平均值;
然后,依据λα=Yα求得新特征集合Y的特征向量集合α和特征值集合λ,
其中α=[α12,…,αm],λ=[λ12,…,λm],其中λi表示第i个主成分对应的特征值;
随后,根据第i个主成分对应的特征值λi计算第i个主成分的方差贡献率pi
Figure FDA0003560818430000024
其中,pi表示第i个主成分的方差贡献率;
随后,设置k=1,并根据第i个主成分对应的特征值λi、使用以下公式获取k=1时第i个主成分的累计方差贡献率
Figure FDA0003560818430000025
Figure FDA0003560818430000026
然后,设置k=2,沿用上一段的计算公式,以获取k=2时第i个主成分的累计方差贡献率
Figure FDA0003560818430000027
并判断该值相对于k=1时第i个主成分的累计方差贡献率
Figure FDA0003560818430000028
时的增长率是否小于1%,如果是则将k值固定为2,否则继续设置k=3,并获取k=3时第i个主成分的累计方差贡献率
Figure FDA0003560818430000031
并判断该值相对于k=2时第i个主成分的累计方差贡献率
Figure FDA0003560818430000032
时的增长率是否小于1%,如果是则将k值固定为3,否则继续设置k=4,…以此类推;
然后,依据各主成分的方差贡献率进行由大到小排序,从排序结果中选取前k个主成分的方差贡献率对应的特征值,记这些特征值对应的下标所组成的下标集合为index={index1,index2,…,indexk},从新特征集合Y中按下标集合index选取对应下标的列,从而得到降维后所有样本的新特征向量集合,记为
Figure FDA0003560818430000033
其中zd,(d=1,2,…,n)表示降维后的第d个样本的特征向量,其包含k个特征,即zd={fd1fd2 … fdk},其维度为1×k;
(4)使用异常检测模型中的环形多粒度扫描结构对步骤(3)降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有n个特征子向量集合组成大集合H;步骤(4)具体为,首先对步骤(3)降维后的新特征向量集合中的第一个特征向量z1={f11 f12 … f1k}进行环形多粒度扫描处理,将特征f11与特征f1k连接,使得特征向量z1={f11 f12 … f1k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f11开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f12,再获取的特征子向量记为F2={f12,f13,…,f1(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为f1k,获取的特征子向量记为Fk={f1k,f11,…,f1(t-1)},所有k个特征子向量构成特征子向量集合H1={F1 F2 …Fk};
然后,首先对步骤(3)降维后的新特征向量集合中的第二个特征向量z2={f21 f22 …f2k}进行环形多粒度扫描处理,将特征f21与特征f2k连接,使得特征向量z2={f21 f22 …f2k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f21开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f22,再获取的特征子向量记为F2={f22,f23,…,f2(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={f2k,f21,…,f2(t-1)},所有k个特征子向量构成特征子向量集合H2={F1 F2 … Fk};
…以此类推;随后,对步骤(3)降维后的新特征向量集合中的第n个特征向量zn={fn1fn2 … fnk}进行环形多粒度扫描处理,将特征fn1与特征fnk连接,使得特征向量zn={fn1 fn2… fnk}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征fn1开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为fn2,再获取的特征子向量记为F2={fn2,fn3,…,fn(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={fnk,fn1,…,fn(t-1)},所有k个特征子向量构成特征子向量集合Hn={F1 F2 … Fk};
最终,将所有n个样本特征向量对应的所有特征子向量集合所组成的大集合记为H={H1,H2,…,Hd},(d=1,2,…,n);
(5)将步骤(4)获取的大集合H中的每个特征子向量集合Hd,d∈{1,2,…,n}中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得2个c维的类特征向量U={u1,u2,…,uc},每个特征子向量集合Hd,d∈{1,2,…,n}中所有k个特征子向量对应的k个2c维特征向量组成初始类特征向量bd,其维度为1×2kc,集合H中的所有特征子向量集合对应的n个初始类特征向量组成初始类特征向量集合B={b1 b2 … bn},其维度为n×2kc,其中c表示分类类别数;
(6)将步骤(5)中生成的初始类特征向量输入多元化级联森林结构中进行迭代训练,直到多元化级联森林结构收敛为止,从而得到训练好的异常检测模型;步骤(6)具体为,
首先,对多元化级联森林结构的第一层做如下处理:
首先,将初始类特征向量集合B中的第一个初始类特征向量b1分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维类特征向量e11={o1 o2 o3 o4 o5 b1};
然后,将初始类特征向量集合B中的第二个最终类特征向量b2分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e12={o1 o2 o3 o4 o5 b2},…以此类推;
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维类特征向量组成第一层的类特征向量集合E1={e11 e12 … e1n};
然后,对多元化级联森林结构的第二层做如下处理:
首先,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第一个类特征向量e11分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维特征向量e21={o1 o2 o3 o4 o5 b1};
其次,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第二个类特征向量e12分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e22={o1 o2 o3 o4 o5 b2},…以此类推;
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维特征向量组成第二层的类特征向量集合E2={e21 e22 … e2n};
随后,多元化级联森林结构的后续层按照与上述第一层和第二层相同的方式进行处理,直至多元化级联森林结构收敛为止,模型训练完成。
2.根据权利要求1所述的基于改进的深度森林的工业控制***异常检测方法,其特征在于,步骤(1)具体为,对获取的网络数据的数据类别进行统一数值化转换,将正常数据和异常数据的标签分别用0和1表示,然后采用Z-score方法对数值化转换后的网络数据进行归一化处理,最后,将归一化后的网络数据中每个样本的一个特征作为一个数据维度,从而将样本转换成特征向量,所有样本对应的特征向量组成样本集合。
3.根据权利要求1或2所述的基于改进的深度森林的工业控制***异常检测方法,其特征在于,步骤(2)具体为,使用PCA方法对步骤(1)得到的样本集合进行特征提取,以得到降维后的新特征向量集合,使用训练好的异常检测模型中的环形多粒度扫描结构对降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有特征子向量集合组成大集合,将大集合中的每个特征子向量集合中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得类特征向量,集合中的所有特征子向量集合对应的多个初始类特征向量组成类特征向量集合,然后,将类特征向量输入训练好的异常检测模型中的级联森林模型,以得到最终的类特征向量,最后,将最终的类特征向量输入到最后一层的集成分类模型中,以得到多个分类结果,并获取所有分类结果的均值,如果该均值大于0.5,则说明待检测的工业控制***出现异常,否则说明其正常。
4.一种基于改进的深度森林的工业控制***异常检测***,其特征在于,包括:
第一模块,用于获取来自待检测的工业控制***的网络数据,对该网络数据进行预处理,以得到样本集合;
第二模块,用于将第一模块得到的样本集合输入到预先训练好的异常检测模型中,以得到异常检测的结果;异常检测模型是通过以下步骤训练得到的:
(1)获取网络数据,并根据网络数据构建数据集X,X∈Rn×m,其中R表示实数集,n表示数据集中的样本总数;
Figure FDA0003560818430000071
其中,xi=[x1i x2i … xni]Τ,(i=1,2,…m)表示数据集中每个样本的第i维特征组成的特征集合;
(2)采用Z-score归一化方法对步骤(1)得到的数据集进行归一化处理,并对归一化处理后的数据集按5:1的比例划分为训练集Xtrain,Xtrain∈Rn×m和测试集Xtest,Xtest∈Rn×m
(3)使用PCA方法对步骤(2)得到的训练集Xtrain进行特征提取,以得到降维后的新特征向量集合;步骤(3)具体为,首先是利用PCA方法将训练集Xtrain中的m个特征集合进行线性转换如下:
Figure FDA0003560818430000072
其中,Y=[y1 y2 … ym]是经过转换后的新特征集合,样本协方差矩阵A等于:
Figure FDA0003560818430000081
其中,
Figure FDA0003560818430000082
xi为步骤(1)中每个样本的第i维特征组成的特征集合,
Figure FDA0003560818430000083
表示数据集中所有样本对应的特征集合的平均值;
然后,依据λα=Yα求得新特征集合Y的特征向量集合α和特征值集合λ,
其中α=[α12,…,αm],λ=[λ12,…,λm],其中λi表示第i个主成分对应的特征值;
随后,根据第i个主成分对应的特征值λi计算第i个主成分的方差贡献率pi
Figure FDA0003560818430000084
其中,pi表示第i个主成分的方差贡献率;
随后,设置k=1,并根据第i个主成分对应的特征值λi、使用以下公式获取k=1时第i个主成分的累计方差贡献率
Figure FDA0003560818430000085
Figure FDA0003560818430000086
然后,设置k=2,沿用上一段的计算公式,以获取k=2时第i个主成分的累计方差贡献率
Figure FDA0003560818430000087
并判断该值相对于k=1时第i个主成分的累计方差贡献率
Figure FDA0003560818430000088
时的增长率是否小于1%,如果是则将k值固定为2,否则继续设置k=3,并获取k=3时第i个主成分的累计方差贡献率
Figure FDA0003560818430000091
并判断该值相对于k=2时第i个主成分的累计方差贡献率
Figure FDA0003560818430000092
时的增长率是否小于1%,如果是则将k值固定为3,否则继续设置k=4,…以此类推;
然后,依据各主成分的方差贡献率进行由大到小排序,从排序结果中选取前k个主成分的方差贡献率对应的特征值,记这些特征值对应的下标所组成的下标集合为index={index1,index2,…,indexk},从新特征集合Y中按下标集合index选取对应下标的列,从而得到降维后所有样本的新特征向量集合,记为
Figure FDA0003560818430000093
其中zd,(d=1,2,…,n)表示降维后的第d个样本的特征向量,其包含k个特征,即zd={fd1fd2 … fdk},其维度为1×k;
(4)使用异常检测模型中的环形多粒度扫描结构对步骤(3)降维后的新特征向量集合中的每个特征向量进行处理,以获取该特征向量对应的特征子向量集合,所有n个特征子向量集合组成大集合H;步骤(4)具体为,首先对步骤(3)降维后的新特征向量集合中的第一个特征向量z1={f11 f12 … f1k}进行环形多粒度扫描处理,将特征f11与特征f1k连接,使得特征向量z1={f11 f12 … f1k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f11开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f12,再获取的特征子向量记为F2={f12,f13,…,f1(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为f1k,获取的特征子向量记为Fk={f1k,f11,…,f1(t-1)},所有k个特征子向量构成特征子向量集合H1={F1 F2 …Fk};
然后,首先对步骤(3)降维后的新特征向量集合中的第二个特征向量z2={f21 f22 …f2k}进行环形多粒度扫描处理,将特征f21与特征f2k连接,使得特征向量z2={f21 f22 …f2k}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征f21开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为f22,再获取的特征子向量记为F2={f22,f23,…,f2(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={f2k,f21,…,f2(t-1)},所有k个特征子向量构成特征子向量集合H2={F1 F2 … Fk};
…以此类推;随后,对步骤(3)降维后的新特征向量集合中的第n个特征向量zn={fn1fn2 … fnk}进行环形多粒度扫描处理,将特征fn1与特征fnk连接,使得特征向量zn={fn1 fn2… fnk}成为一个首尾特征相连的环形;其次,以长度为t的滑动窗口从起始特征fn1开始,以一个单位从左往右滑动,每滑动一个单位,获取一个特征子向量,然后,把滑动窗口向右移动一个单位,使得起始特征为fn2,再获取的特征子向量记为F2={fn2,fn3,…,fn(t+1)},以此类推,…,最后,把滑动窗口移动到使起始特征为Fk={fnk,fn1,…,fn(t-1)},所有k个特征子向量构成特征子向量集合Hn={F1 F2 … Fk};
最终,将所有n个样本特征向量对应的所有特征子向量集合所组成的大集合记为H={H1,H2,…,Hd},(d=1,2,…,n);
(5)将步骤(4)获取的大集合H中的每个特征子向量集合Hd,d∈{1,2,…,n}中的每个特征子向量分别输入完全随机森林分类器和半随机森林分类器中,以获得2个c维的类特征向量U={u1,u2,…,uc},每个特征子向量集合Hd,d∈{1,2,…,n}中所有k个特征子向量对应的k个2c维特征向量组成初始类特征向量bd,其维度为1×2kc,集合H中的所有特征子向量集合对应的n个初始类特征向量组成初始类特征向量集合B={b1 b2 … bn},其维度为n×2kc,其中c表示分类类别数;
(6)将步骤(5)中生成的初始类特征向量输入多元化级联森林结构中进行迭代训练,直到多元化级联森林结构收敛为止,从而得到训练好的异常检测模型;步骤(6)具体为,
首先,对多元化级联森林结构的第一层做如下处理:
首先,将初始类特征向量集合B中的第一个初始类特征向量b1分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维类特征向量e11={o1 o2 o3 o4 o5 b1};
然后,将初始类特征向量集合B中的第二个最终类特征向量b2分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以得到五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e12={o1 o2 o3 o4 o5 b2},…以此类推;
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维类特征向量组成第一层的类特征向量集合E1={e11 e12 … e1n};
然后,对多元化级联森林结构的第二层做如下处理:
首先,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第一个类特征向量e11分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b1组合生成(5c+2kc)维特征向量e21={o1 o2 o3 o4 o5 b1};
其次,将第一层生成的类特征向量集合E1={e11 e12 … e1n}中的第二个类特征向量e12分别输入多元化级联森林结构的半随机森林、完全随机森林、XGBoost、GBDT、CatBoost五个决策树,以获得五个c维的类特征向量o1,o2,o3,o4,o5,将类特征向量o1,o2,o3,o4,o5与初始类特征向量b2组合生成(5c+2kc)维特征向量e22={o1 o2 o3 o4 o5 b2},…以此类推;
最后,初始类特征向量集合B中的所有n个初始类特征向量对应的所有(5c+2kc)维特征向量组成第二层的类特征向量集合E2={e21 e22 … e2n};
随后,多元化级联森林结构的后续层按照与上述第一层和第二层相同的方式进行处理,直至多元化级联森林结构收敛为止,模型训练完成。
CN202110438900.4A 2021-04-23 2021-04-23 基于改进的深度森林的工业控制***异常检测方法和*** Active CN113159181B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110438900.4A CN113159181B (zh) 2021-04-23 2021-04-23 基于改进的深度森林的工业控制***异常检测方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110438900.4A CN113159181B (zh) 2021-04-23 2021-04-23 基于改进的深度森林的工业控制***异常检测方法和***

Publications (2)

Publication Number Publication Date
CN113159181A CN113159181A (zh) 2021-07-23
CN113159181B true CN113159181B (zh) 2022-06-10

Family

ID=76869794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110438900.4A Active CN113159181B (zh) 2021-04-23 2021-04-23 基于改进的深度森林的工业控制***异常检测方法和***

Country Status (1)

Country Link
CN (1) CN113159181B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115078552B (zh) * 2022-07-06 2023-09-08 江南大学 一种倒装焊芯片缺陷检测方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107958255A (zh) * 2017-11-21 2018-04-24 中国科学院微电子研究所 一种基于图像的目标检测方法及装置
CN109741597A (zh) * 2018-12-11 2019-05-10 大连理工大学 一种基于改进深度森林的公交车路段运行时间预测方法
WO2020215671A1 (zh) * 2019-08-19 2020-10-29 平安科技(深圳)有限公司 数据智能分析方法、装置、计算机设备及存储介质
CN111931953A (zh) * 2020-07-07 2020-11-13 北京工业大学 一种废旧手机多尺度特征深度森林识别方法
CN112633368A (zh) * 2020-12-21 2021-04-09 四川大学 基于改进多粒度级联森林的扁平振动电机缺陷检测***及方法
CN112686313A (zh) * 2020-12-31 2021-04-20 江西理工大学 基于信息论改进的并行深度森林分类方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11277420B2 (en) * 2017-02-24 2022-03-15 Ciena Corporation Systems and methods to detect abnormal behavior in networks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107958255A (zh) * 2017-11-21 2018-04-24 中国科学院微电子研究所 一种基于图像的目标检测方法及装置
CN109741597A (zh) * 2018-12-11 2019-05-10 大连理工大学 一种基于改进深度森林的公交车路段运行时间预测方法
WO2020215671A1 (zh) * 2019-08-19 2020-10-29 平安科技(深圳)有限公司 数据智能分析方法、装置、计算机设备及存储介质
CN111931953A (zh) * 2020-07-07 2020-11-13 北京工业大学 一种废旧手机多尺度特征深度森林识别方法
CN112633368A (zh) * 2020-12-21 2021-04-09 四川大学 基于改进多粒度级联森林的扁平振动电机缺陷检测***及方法
CN112686313A (zh) * 2020-12-31 2021-04-20 江西理工大学 基于信息论改进的并行深度森林分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孙一恒.基于改进深度森林的入侵检测方法研究.《中国优秀硕士学位论文全文数据库(电子期刊)》.2021,I139-95. *
王雪宁.A Research of GcForest Methods for Network Abnormal Behavior Detection.《2020 International Conference on Computer Engineering and Application (ICCEA)》.2020,218-221. *

Also Published As

Publication number Publication date
CN113159181A (zh) 2021-07-23

Similar Documents

Publication Publication Date Title
CN108632279B (zh) 一种基于网络流量的多层异常检测方法
Javaid et al. A deep learning approach for network intrusion detection system
CN110287983B (zh) 基于最大相关熵深度神经网络单分类器异常检测方法
CN111901340B (zh) 一种面向能源互联网的入侵检测***及其方法
CN110602120B (zh) 一种面向网络的入侵数据检测方法
CN111835707B (zh) 一种基于改进后的支持向量机的恶意程序识别方法
CN111143838B (zh) 数据库用户异常行为检测方法
CN113505826B (zh) 基于联合特征选择的网络流量异常检测方法
CN113489685B (zh) 一种基于核主成分分析的二次特征提取及恶意攻击识别方法
CN108256449B (zh) 一种基于子空间分类器的人体行为识别方法
CN115277189B (zh) 基于生成式对抗网络的无监督式入侵流量检测识别方法
CN113159181B (zh) 基于改进的深度森林的工业控制***异常检测方法和***
Shao et al. Deep learning hierarchical representation from heterogeneous flow-level communication data
Du et al. Large-scale signature matching using multi-stage hashing
CN113609480B (zh) 基于大规模网络流的多路学习入侵检测方法
Wu et al. Intrusion Detection System Using a Distributed Ensemble Design Based Convolutional Neural Network in Fog Computing
JP4476078B2 (ja) 時系列データ判定用プログラム
CN106778775B (zh) 一种基于sift特征软匹配的图像分类方法
CN114584350B (zh) 基于流形的网络数据包特征的降维及聚类的攻击识别方法
Yin et al. High-Quality Triggers Based Fragile Watermarking for Optical Character Recognition Model
Seyedghorban et al. Anomaly Detection in File Fragment Classification of Image File Formats
CN114547601A (zh) 一种基于多层分类策略的随机森林入侵检测方法
Jie et al. Handwritten digits recognition based on improved label propagation algorith
Bustos-Brinez et al. AD-DMKDE: Anomaly Detection Through Density Matrices and Fourier
Jammoussi et al. Genetic algorithms-based dominant feature selection for face detection application

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