CN112685272B - 一种具备可解释性的用户行为异常检测方法 - Google Patents
一种具备可解释性的用户行为异常检测方法 Download PDFInfo
- Publication number
- CN112685272B CN112685272B CN202011590113.3A CN202011590113A CN112685272B CN 112685272 B CN112685272 B CN 112685272B CN 202011590113 A CN202011590113 A CN 202011590113A CN 112685272 B CN112685272 B CN 112685272B
- Authority
- CN
- China
- Prior art keywords
- user
- graph
- node
- classification model
- users
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种具备可解释性的用户行为异常检测方法,其步骤包括:1)使用特征提取模块收集目标网络中用户的特征信息;2)图矩阵模块根据各用户的特征信息构建邻接矩阵;其中所述图矩阵模块根据用户特征信息确定用户之间是否存在直接联系,根据用户之间的相似度确定用户之间的联系;3)利用邻接矩阵训练图神经网络,得到分类模型;4)利用图解释模块以设定优化目标函数对该分类模型进行训练,得到图掩膜M和特征选择器F;5)将一待检测用户的特征输入训练后的分类模型,得到分类结果,如果该用户为异常节点,则利用M从分类模型中得到该异常节点的关联节点、利用F得到分类模型各节点的特征中与异常节点最相关的关联特征。
Description
技术领域
本发明属于机器学习领域,尤其涉及一种利用图卷积网络的具备可解释性的用户行为异常检测方法。
背景技术
从近几年的安全事故中可以看到,内部威胁已经成为企业或组织威胁的主要原因。内部威胁是指内部人员利用获得的信任做出对授信组织造成损害的行为。这些利益包括企业的经济利益、业务运行、对外服务以及授信主体声誉等。内部威胁不仅仅包括组织合法成员有意或无意导致组织利益受损的行为,还包括一些外部伪装成内部成员的攻击。随着信息化的普及,人们在工作中普遍地使用电子设备,产生并积累了越来越多的行为数据。通过对这些行为数据的挖掘和应用,对用户行为数据进行异常检测,能够实现内部威胁的检测,为企业或组织提供内部威胁的预警。
较早的用户行为异常检测方法主要基于分类的方法。主要有支持向量机(SupportVector Machines)、多层感知器(Multi Layered Perceptron)等方法,将异常检测转化为二分类问题。在测试阶段,使用已经训练好的这类算法通常很快。但是,这样的算法存在需要大规模标注数据的问题。尤其是在用户行为异常数据通常是非常不均衡数据的情况下,这类方法在训练中会由于异常数据相对于正常数据过少的原因达不到理想的效果。
最近流行的基于深度学习的方法相较传统方法有多种优势,一是表示学习上可以通过深度学习模型自动发掘用于异常检测的特征,二是以循环神经网络(RecurrentNeural Network)为代表的深度学习模型在建模序列数据上有非常优秀的表现,三是深度学习模型可以融合异构数据从而引入更多的信息加强异常检测的最终效果。
上述的这些主流算法中,基于分类的传统算法在获取合适的训练数据在用户行为异常检测任务上存在困难,而基于深度学习的方法通常被称为“黑盒子”。虽然深度学习的模型在一些领域中取得了令人振奋的效果,但是可解释性的缺失造成了深度学习在一些领域中的使用存在不确定性。特别是在用户行为异常检测这个任务上,即使深度学习的模型性能很好,但也不能达到100%的准确性,如果误报并且不能解释造成异常的原因很有可能对某些员工造成不必要的伤害。
发明内容
根据上述发展现状,本发明的目的在于提出一种利用图卷积网络的具备可解释性的用户行为异常检测方法。本发明能够通过对用户属性、关系等信息构建拓扑图,因此图上的节点不但包含其本身的属性信息例如IP地址、端口等,还包含一些结构化信息比如节点间交流的模式;之后使用图卷积网络(Graph Convolutional Networks)进行用户行为的异常检测,之后使用图解释网络对图卷积网络进行分析增强可解释性。
为了达到上述目的,本发明采用了以下方案:
一种具备可解释性的用户行为异常检测方法,其步骤包括:
1)使用特征提取模块收集目标网络中用户的特征信息;
2)图矩阵模块根据各用户的特征信息构建邻接矩阵;其中所述图矩阵模块根据用户特征信息确定用户之间是否存在直接联系,然后使用权重方程A(i,j)=w*cos(Fi,Fj)+(1-w)*Cij计算用户i与用户j之间的相似度A(i,j),根据相似度确定用户之间的联系;Fi为用户i的特征信息,Fj为用户j的特征信息,w为权重系数,Cij代表用户i与用户j之间是否存在直接联系,如果存在则Cij=1,否则Cij=0;
3)利用所述邻接矩阵训练图神经网络,得到一个用于异常检测的分类模型;
4)将用户的特征信息输入上述得到的分类模型,得到分类结果(即异常或非异常);
6)将一待检测用户的特征输入训练后的分类模型,得到分类结果,如果该用户为异常节点,则利用图掩模M从分类模型中得到该异常节点的关联节点、利用特征选择器F得到分类模型各节点的特征中与该异常节点最相关的关联特征,将得到的关联节点和关联特征作为该异常节点的解释信息。
利用训练后得到的GCN分类模型,根据上述的目标函数进行训练,得到图掩膜M和特征选择器F。利用图掩模M在训练好的GCN分类模型中得到对分类结果贡献较大的节点(通过调整阈值大小将图掩膜中低于阈值的边移除,保留的节点为对分类结果贡献较大的节点)。利用特征选择器F得到节点的特征中贡献较大的节点。解释模型是在得到分类模型后,在已经训练好的分类模型上做的操作,不对检测结果有影响,但会对得到的结果得到解释,通过对贡献值较大的节点和特征,我们可以知道该异常节点跟哪些节点和特征关系较大,这样得到的解释性。
一种具备可解释性的用户行为异常检测方法,本发明首先使用特征提取模块收集网络中每个用户的特征信息,包括登入登出特征、设备特征、文件特征、邮件特征、网页浏览特征等用户行为特征。之后,本发明利用图矩阵模块构建邻接矩阵体现用户之间的联系,由于在内部威胁监测应用里有很多用户在社交网络上是孤立的,因此本发明在构建邻接矩阵(即用户关系的拓扑图)的时候使用权重方程通过用户行为特征的相似度建立一些用户的弱联系。之后,本发明利用所述邻接矩阵和用户属性特征作为输入,训练一个用于异常检测的GCN分类模型。之后,本发明利用图解释模块对训练好的分类模型进行结构上和特征上的解释。
所述特征提取模块是一个包含所有用户和他们的行为特征(特征提取模块最终得到的结果为一个矩阵,每一行表示一个用户,每一列表示一个特征)。该模块收集目标网络上每一个用户的行为,提取特定的行为特征,包括设备使用的特征,登录特征,文件使用特征,社交特征,浏览特征等。这些特征提供了用户作为图的节点的属性信息。
进一步的,所述特征提取模块得到特征矩阵F为一个N*D的矩阵,其中N代表网络中所包含用户的数量,D代表每个用户的行为特征数量。
所述图矩阵模块是一个构建邻接矩阵的模块,该邻接矩阵体现了用户之间的联系,对构建社交网络图提供了重要的信息。在传统的图神经网络中,邻接矩阵通常是由1和0分别表示了节点和节点之间有或没有联系。本发明定义有过邮件沟通的用户之间有直接联系,没有邮件沟通记录的用户之间表示没有联系。但不同于社交网络和知识图谱,在内部威胁的用户数据中有很多没有邮件沟通记录的孤立用户,每一用户对应一个节点。由于这部分用户的存在,本发明使用了权重方程为这些孤立用户建立与其他节点的联系。
进一步的,所述图矩阵模块中的邻接矩阵定义一个N*N的矩阵A,体现用户与用户之间的联系。
进一步的,用户i和用户j的直接联系用Cij=(0,1)表示。
进一步的,所述邻接矩阵的构成,为解决孤立用户的问题,本发明使用权重方程A(i,j)=w*cos(Fi,Fj)+(1-w)*Cij为用户建立联系,这里使用参数w(01)平衡用户间直接联系和相似性的关系(即权重系数w的取值为0~1);Cij代表用户i与用户j之间是否存在直接联系,如果存在则Cij=1,否则Cij=0。
进一步的,当A(i,j)>0.5的时候,本发明将用户i和用户j建立联系。
所述图卷积网络模块是作为用户行为异常检测分类模型。本发明使用图卷积网络(GCN)去训练一个异常分类的模型。其中输入为特征提取矩阵和邻接矩阵,经过图卷积网络后,输出为每个节点的分类结果,即确定每个节点是否异常。
进一步的,图卷积网络模块使用的是一个两层的图卷积网络。
进一步的,图卷积网络的具体表达式为Z=f(X,A)=soft max(A ReLU(AXW0)W1),其中W0代表从输入层到隐含层的权重矩阵,W1代表从隐含层到输出层的权重矩阵;X是节点特征向量的矩阵,对应于前面的特征矩阵F。
进一步的,为了计算每个节点的分类结果,本发明使用softmax激活函数进行每个节点的输出计算,具体方程为xi是代表softmax(AReLU(AXW0)W1)中的AReLU(AXW0)W1矩阵中的第i行,也就是图卷积网络的输出结果,取值范围是0~N。
进一步的,在训练图卷积网络模型的W0和W1矩阵时,本发明使用了批梯度下降(batch gradient descent)方法。
所述图解释模块是对训练好的图卷积网络分类模型做出分析和解释。本发明从图的结构和特征信息两方面对分类模型进行分析。该模块通过训练,得到对分类结果最有贡献的部分图结构信息和特征信息,从而在贡献值上对分类模型进行一定程度的解释。
进一步的,对于一个节点来说,如其与模型预测结果Y最相关的结构和特征分别是Gs和Xs,那么相关的重要性可以用互信息(Mutual Information)衡量:其中H(Y)是信息熵函数H()对Y的计算结果,因为模型在已经训练好的GCN上进行解释,所以上式等价于最小化H(Y|G=Gs,X=Xs)。
进一步的,对于特征选择部分的解释与图结构的解释类似,通过选择与预测结果最相关的部分来实现对模型的解释,具体公式为扣r其中是最有贡献的子图Gs中的节点特征子集,是没有被mask(图掩模M)盖住的节点特征,vj是图结构中节点j,F是特征选择器,F∈{0,1}d,d是特征数。
进一步的,利用图解释模块以设定优化目标函数对该分类模型进行训练,得到图掩膜M和特征选择器F;其中图解释模块的优化目标函数为XS为节点S对异常节点Y最优贡献的特征、GS为节点S对异常节点Y最优贡献的子图、H()为信息熵函数;通过训练得到的图掩膜M和特征选择器F,本发明可以得到,在结构上对分类结果有较大贡献的节点;在特征上对分类结果有较大贡献的特征。从而得到对分类结果的一定程度的解释。
与现有技术相比,本发明的积极效果为:
通过使用图神经网络进行用户异常行为的检测,可以更好的捕捉用户与用户之间的联系和相似性,同时通过使用权重方程增加孤立用户之间的联系,又通过图解释模型对检测的结果进行结构上的和特征上的分析,得出最相关的结构和特征。
本方法可以利用图神经网络,从用户的关联性和行为特征中捕捉用户的深层次联系,从而发现异常用户,通过图可解释模块,对分类结果最相关的图结构上的其他节点和最相关的特征,更好的了解得出异常的原因,包括相关用户和显著的异常行为特征等,在用户行为异常检测上,取得不错的效果。
附图说明
图1为整个***示意图;
图2为图卷积网络模块示意图;
图3为图解释模块结果示意图;
(a)结构上贡献较大的节点,(b)特征上贡献较大的特征值。
具体实施方式
为了使本发明的目的、方案及优点更加清楚明白,以下以在真实数据集上进行的实验为例,对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
以CMU CERT v4.2数据集为例,描述一个具备可解释性的用户行为异常检测方案的具体实施步骤。
CMU CERT v4.2数据集模拟了恶意内部人实施的***破坏、信息窃取与内部欺诈三类主要的攻击行为数据以及大量正常背景数据。CMU CERT v4.2数据集中涉及多个维度的1000个用户行为数据,如文件访问(创建、修改、删除以文件名称、类型等)、邮件收发、设备使用(移动存储设备、打印机等)、HTTP访问以及***登录等行为,还包括了用户的工作岗位以及工作部门等信息。CMU CERT v4.2数据集提供了用户全面的行为观测数据以刻画用户行为模型。
本实施例中,本发明的任务为对用户行为进行异常检测发现内部威胁用户。本发明的整体***构架如附图1所示。本实例将CMU CERT v4.2数据集中的160个正常节点和40个异常节点作为训练集,170个正常节点和30个异常节点作为测试集。评价标准为准确率,精度和召回率。
首先描述特征提取模块,每个用户的行为特征有30个,其中登入、登出的特征包括每日登入、登出的时间、休息时段的登入、登出时间、登入、登出设备的数量,设备的特征包括每日连接设备的数量、休息时段连接设备的数量、连接设备的电脑数量,文件的特征包括每日修改文件的数量、总文件数量、休息时段修改的文件数量、exe文件的数量、包含文件的电脑数量,邮件特征包括每日发送数量、组织外发送数量、组织内发送数量、平均邮件大小、收件人数量、话题相关的邮件数量、跟情感相关的邮件数量,网页浏览的特征包括每日浏览网页的数量、情感相关的网页数量、话题相关的网页数量、特定网站相关的网页数量。特征提取矩阵F定义一个N*D的矩阵,其中N代表网络中所包含用户的数量,D代表每个用户的行为特征数量。
之后,为构建图卷积网络的输入,本发明使用图矩阵模块构建N*N的邻接矩阵A。在本实施例中的1000个用户的网络上,使用传统的有无直接联系的方式,总共一共构造了3556条边。使用本发明的权重方程A(i,j)=w*cos(Fi,Fj)+(1-w)*Cij后,新的邻接矩阵构造了超过1,000,000条非零的边,为孤立的用户构建了丰富的联系。
之后,图卷积网络模块如图2所示,使用上面构建的矩阵F和矩阵A作为输入,使用一个两层的图卷积网络,输出分类的结果。其中卷积网络表达式为Z=f(X,A)=soft max(AReLU(AXW0)W1),为了计算每个节点的分类结果,本发明使用softmax激活函数在训练图卷积网络中,使用比梯度下降的方法和交叉熵损失函数
之后,图解释模块对图卷积网络进行可解释性分析,本发明对图卷积网络图结构和特征信息两方面进行分析。本发明使用该模块,得到对分类结果最有贡献的图结构和特征信息如图3所示,从而得到在贡献值上对分类结果的解释。对于训练后得到的分类模型的图结构的解释部分,优化函数为只需要设定阈值将M中的部分低于阈值的边移除,这样就从结构的角度得到对结果最有贡献的图结构。对于特征选择部分的解释与图结构的解释类似,通过选择与预测结果最相关的部分来实现对模型的解释,具体公式为for同时考虑结构和特征的选择,图解释模块最终的优化目标为其中
本实施例中在与传统方法比如支持感知机、随机森林、Logistic回归、卷积神经网络的实验对比中,本发明在准确率、精度、召回率上都取得了最好的实验效果。同时能够对分类结果提供图结构上和属性特征上的贡献分析,提高分类结果的可解释性。
以上所述为本发明的一个实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (5)
1.一种具备可解释性的用户行为异常检测方法,其步骤包括:
1)使用特征提取模块收集目标网络中用户的特征信息;
2)图矩阵模块根据各用户的特征信息构建邻接矩阵;其中所述图矩阵模块根据用户特征信息确定用户之间是否存在直接联系,然后使用权重方程A(i,j)=w*cos(Fi,Fj)+(1-w)*Cij计算用户i与用户j之间的相似度A(i,j),根据相似度确定用户之间的联系;Fi为用户i的特征信息,Fj为用户j的特征信息,w为权重系数,Cij代表用户i与用户j之间是否存在直接联系,如果存在则Cij=1,否则Cij=0;其中,所述图矩阵模块根据用户之间是否有过邮件沟通确定对应用户之间是否有直接联系,对于有邮件沟通记录的用户之间确定有直接联系;
3)利用所述邻接矩阵训练图卷积网络,得到一个用于异常检测的分类模型;
4)利用图解释模块以设定优化目标函数对该分类模型进行训练,得到图掩膜M和特征选择器F;其中图解释模块的优化目标函数为 XS为节点S对异常节点Y最优贡献的特征、GS为节点S对异常节点Y最有贡献的子图、H()为信息熵函数、MI()为互信息函数;
5)将一待检测用户的特征输入训练后的分类模型,得到分类结果,如果该用户为异常节点,则利用图掩模M从分类模型中得到该异常节点的关联节点、利用特征选择器F得到分类模型各节点的特征中与该异常节点最相关的关联特征,将得到的关联节点和关联特征作为该异常节点的解释信息。
2.如权利要求1所述的方法,其特征在于,所述用户特征信息包括设备使用的特征、登录特征、文件使用特征、社交特征和浏览特征。
3.如权利要求1所述的方法,其特征在于,当A(i,j)>0.5的时候,将用户i和用户j建立联系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590113.3A CN112685272B (zh) | 2020-12-29 | 2020-12-29 | 一种具备可解释性的用户行为异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590113.3A CN112685272B (zh) | 2020-12-29 | 2020-12-29 | 一种具备可解释性的用户行为异常检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112685272A CN112685272A (zh) | 2021-04-20 |
CN112685272B true CN112685272B (zh) | 2022-10-14 |
Family
ID=75454861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011590113.3A Active CN112685272B (zh) | 2020-12-29 | 2020-12-29 | 一种具备可解释性的用户行为异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112685272B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113989574B (zh) * | 2021-11-04 | 2024-04-02 | 中国科学技术大学 | 图像解释方法、图像解释装置、电子设备和存储介质 |
CN115098563B (zh) * | 2022-07-14 | 2022-11-11 | 中国海洋大学 | 基于gcn和注意力vae的时序异常检测方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108648095A (zh) * | 2018-05-10 | 2018-10-12 | 浙江工业大学 | 一种基于图卷积网络梯度的节点信息隐藏方法 |
CN109670446A (zh) * | 2018-12-20 | 2019-04-23 | 泉州装备制造研究所 | 基于线性动态***和深度网络的异常行为检测方法 |
CN109889436A (zh) * | 2019-02-20 | 2019-06-14 | 北京航空航天大学 | 一种社交网络中垃圾邮件发送者的发现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544535B2 (en) * | 2019-03-08 | 2023-01-03 | Adobe Inc. | Graph convolutional networks with motif-based attention |
-
2020
- 2020-12-29 CN CN202011590113.3A patent/CN112685272B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108648095A (zh) * | 2018-05-10 | 2018-10-12 | 浙江工业大学 | 一种基于图卷积网络梯度的节点信息隐藏方法 |
CN109670446A (zh) * | 2018-12-20 | 2019-04-23 | 泉州装备制造研究所 | 基于线性动态***和深度网络的异常行为检测方法 |
CN109889436A (zh) * | 2019-02-20 | 2019-06-14 | 北京航空航天大学 | 一种社交网络中垃圾邮件发送者的发现方法 |
Non-Patent Citations (1)
Title |
---|
社交网络异常用户识别技术综述;仲丽君等;《计算机工程与应用》;20180831(第16期);第13-23页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112685272A (zh) | 2021-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cai et al. | Structural temporal graph neural networks for anomaly detection in dynamic graphs | |
Koc et al. | A network intrusion detection system based on a Hidden Naïve Bayes multiclass classifier | |
US10289841B2 (en) | Graph-based attack chain discovery in enterprise security systems | |
US10298607B2 (en) | Constructing graph models of event correlation in enterprise security systems | |
Ibrahimi et al. | Management of intrusion detection systems based-KDD99: Analysis with LDA and PCA | |
Ambusaidi et al. | A novel feature selection approach for intrusion detection data classification | |
CN108540329B (zh) | 基于两层贝叶斯网络模型的网络安全推断方法 | |
Nguyen et al. | Vasabi: Hierarchical user profiles for interactive visual user behaviour analytics | |
CN112685272B (zh) | 一种具备可解释性的用户行为异常检测方法 | |
Ahmed et al. | Network sampling designs for relational classification | |
Silva et al. | A statistical analysis of intrinsic bias of network security datasets for training machine learning mechanisms | |
CN110995643A (zh) | 一种基于邮件数据分析的异常用户识别方法 | |
Dubey et al. | A novel approach to intrusion detection system using rough set theory and incremental SVM | |
Katar | Combining multiple techniques for intrusion detection | |
Ourston et al. | Coordinated internet attacks: responding to attack complexity | |
Petersen | Data mining for network intrusion detection: A comparison of data mining algorithms and an analysis of relevant features for detecting cyber-attacks | |
Riad et al. | Visualize network anomaly detection by using k-means clustering algorithm | |
Zekri et al. | Immunological approach for intrusion detection | |
Huang et al. | Network-traffic anomaly detection with incremental majority learning | |
Ball et al. | Anomaly detection using autoencoders with network analysis features | |
CN110737890A (zh) | 一种基于异质时序事件嵌入学习的内部威胁检测***及方法 | |
Devaraju et al. | Performance comparison of intrusion detection system using various techniques–A review | |
CN109063721A (zh) | 一种行为特征数据提取的方法及装置 | |
Guillén et al. | Detection of non-content based attacks using GA with extended KDD features | |
Termos et al. | Intrusion Detection System for IoT Based on Complex Networks and Machine Learning |
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 |