CN110866030A - 一种基于无监督学习的数据库异常访问检测方法 - Google Patents

一种基于无监督学习的数据库异常访问检测方法 Download PDF

Info

Publication number
CN110866030A
CN110866030A CN201911010410.3A CN201911010410A CN110866030A CN 110866030 A CN110866030 A CN 110866030A CN 201911010410 A CN201911010410 A CN 201911010410A CN 110866030 A CN110866030 A CN 110866030A
Authority
CN
China
Prior art keywords
node
data
user
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.)
Pending
Application number
CN201911010410.3A
Other languages
English (en)
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.)
Institute of Information Engineering of CAS
Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd
State Grid E Commerce Co Ltd
Original Assignee
Institute of Information Engineering of CAS
Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd
State Grid E Commerce 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 Institute of Information Engineering of CAS, Information and Telecommunication Branch of State Grid Zhejiang Electric Power Co Ltd, State Grid E Commerce Co Ltd filed Critical Institute of Information Engineering of CAS
Priority to CN201911010410.3A priority Critical patent/CN110866030A/zh
Publication of CN110866030A publication Critical patent/CN110866030A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/29Graphical models, e.g. Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于无监督学习的数据库异常访问检测方法,其步骤包括:1)对于历史审计日志中的各查询记录,分别提取每一查询记录中的特征并根据所提取的特征生成对应用户的行为轮廓;2)对各用户的行为轮廓进行聚类,并将聚类的结果标记为对应用户的用户组别;3)利用标记了用户组别的行为轮廓进行训练,得到异常检测模块;4)对于用户提交到数据库的一查询语句,提取该查询语句中的特征;根据所提取的特征生成该用户的行为轮廓并将其输入到训练后的异常检测模块中进行检测,确定是否为异常访问。本发明极大地提高了异常访问的检测速度。

Description

一种基于无监督学习的数据库异常访问检测方法
技术领域
本发明使用了无监督聚类的方法对用户角色进行标注,同时利用分类算法训练异常检测器。具体而言,就是在基础的数据库异常检测模型中加入了聚类模块,在异常检测器的训练阶段对用户行为轮廓进行聚类,并将聚类的结果作为用户组别加入到异常检测器的训练中。
背景技术
聚类是一种运用广泛的探索性数据分析技术,直观上讲,聚类是一项将对象进行有意义分组的任务,使相似的对象归为一类,不相似的对象归为不同类。由于对象间的距离(或相似性)有多种隐式的定义,给定一个数据集,可以有多种不同的聚类解决方案。但是,聚类分类任务在实际情况下是存在问题的:一个是对不同对象而言相似性不存在传递性,也就是说,虽然聚类共享具有等价关系甚至传递关系,但其相似性是不具传递性的,这就导致对一个对象序列而言,可能所有相邻元素之间都非常相似,但头元素与尾元素的相似度却相差甚远;另一个问题则是无监督学习所共有的问题,即聚类缺乏实际情况,也就是说,我们无法预测标签,因此我们没有明确的聚类评估过程。
聚类算法中应用最广泛的一种算法是k-means聚类。文献1(Han Jiawei,KamberM,Pei Jian,等.数据挖掘:概念与技术.范明,孟小峰,译.3版.北京:机械工业出版社,2012:293-294)认为从几何上看,k-means算法的主要思想是将一个数据集按照数据点的空间分布分为几个簇,使得簇内数据点的距离接近而簇与簇之间相聚较远。k-means聚类算法的现实意义是将数据按照其属性的相似度进行分组,但存在一定的局限性,在算法开始时对簇数目k和初始聚类中心点的选择将会影响最终的聚类效果。
决策树算法模型是一种非参数型的分类器,是分类模型中应用最广泛的算法之一。决策树算法模型的构建一般包括三个步骤:属性选择、决策树生成和剪枝。决策树算法的关键在于如何在生成树的过程中选择最优的划分属性作为子节点。根据属性选择标准的不同,决策树算法分为ID3、C4.5、CART等。ID3算法的核心是在决策树各个节点上应用信息增益准则选择特征递归地构建决策树。C4.5算法与ID3算法很相似,对ID3算法做了改进,在生成决策树过程中采用信息增益比来选择特征。相比ID3和C4.5,CART(Classificationand Regression tree)应用要多一些,既可以用于分类也可以用于回归,CART分类时,使用基尼指数(Gini)来选择最好的数据分割的特征,Gini描述的是纯度,与信息熵的含义相似。
文献2(Tin Kam Ho.Random decision forests.1995)指出决策树算法计算速度快、准确率高,但在分类过程中容易出现过拟合现象。而早在1994年由Leo Breiman提出的Bootstrap Aggregating算法,可以提高统计分类器和回归器的稳定性和准确度,帮助模型避免过拟合。因此文献2结合了Bootstrap Aggregating算法和决策树算法生成一种新的分类算法:随机森林算法。
随机森林算法是一种集成式决策树分类器,由多个决策树组合而成。随机森林算法改进了决策树构建过程中的属性选择方式,由遍历所有属性特征取最优,改为随机选取k个属性计算其信息增益。其主要思想是从训练集中随机抽取n个样本,再从特征集中随机抽取k个属性构造决策树;重复多次得到的决策树集合就是随机森林模型。随机森林运用的随机思想能避免决策树可能出现的过拟合,提高了决策树的泛化能力;随机森林的结构可以并行实现,增强了决策树的可扩展性。
发明内容
有鉴于此,本发明的目的在于提供一种基于无监督学习的数据库异常访问检测方法,用于对数据库异常访问进行检测。经过不同的算法分类,可以实现异常检测准确度的对比,可以保证模型的准确性和鲁棒性,本发明通过无监督聚类算法对用户轮廓进行聚类分组,提高用户行为轮廓构造的效率和准确率,并利用映射与统计相结合的用户轮廓构造方法来描述无用户分组的数据库用户查询语句,节省了存储空间,有效降低了异常检测模型的训练时间,极大地提高了异常访问的检测速度。
为了实现上述目标,本发明采用如下技术方案:
一种基于无监督学习的数据库异常访问检测方法的模型,模型主要包含以下五个模块:
S1:特征提取模块,特征提取模块的主要功能是采集用户提交到数据库的查询语句(SQL语句),提取语句中的主要特征。SQL语句的格式如下:
SELECT {Project-Attributes}
FROM {Relations}
WHERE {Select-Attributes}
S2:用户轮廓构造模块,用户轮廓构造模块的主要功能是将提取到的用户特征属性标准化为用户的行为轮廓。使用映射与统计相结合的用户轮廓构造方法来描述无用户分组的数据库用户查询语句。
S3:聚类模块,在异常检测器的训练阶段对用户行为轮廓进行聚类,并将聚类的结果作为用户组别加入到异常检测器的训练中。
S4:异常检测模块,历史审计日志中的SQL查询语句,经过特征提取、用户行为轮廓构建,使用分类算法训练可得异常检测模块,这是整个模型的核心部分。
S5:响应模块,根据异常检测模块提交的检测结果,向数据库管理员做出响应。如有异常情况则会发出告警,并中断用户的访问以起到预防数据库泄露的目的。
在特征提取模块,采集用户查询的主要特征主要有以下几个步骤:
S11:提取用户提交的查询命令类型,主要包括SELECT(筛选)、UPDATE(更新)、DELETE(删除)、INSERT(插入)等四种用户命令;
S12:提取查询语句检索与操作的属性,对于SELECT命令,检索属性的信息一般由WHERE引导,待操作属性的信息由SELECT命令引导;
S13:提取查询检索的数据表,一般由FROM引导,通过提取用户查询的数据表可以得知用户的查询范围。
在用户轮廓构造模块包括以下步骤:
S21:构造向量V(C,T,A,R)来表示从查询记录中提取出的属性特征,则该向量即表示用户轮廓;
S22:构造向量Q(Cm,Pr,Pa,Sr),即另一种用户轮廓的构造方法,通过对比实验结果以验证使用向量V(C,T,A,R)更加节省空间和时间。
构造向量V(C,T,A,R),则需分别构造用户相关的4个属性,包括以下步骤:
S211:构造V向量中的C元素,C为语句命令类型;
S212:构造V向量中的T元素,T为查询检索的数据表,用1—N表示,N为数据库中包含数据表的个数。若数据库中仅包含少量的交叉查询,为了减少向量的存储空间,将几种交叉查询检索的数据表中的属性重新整合为几个新表,从N+1开始表示;
S213:构造V向量中的A元素,A为查询语句检索的属性信息,由一个向量来表示,向量的长度为所有表长度中的最大值,属性与向量之间的映射方式为:当查询中包含数据表中的某个属性时,将向量中该属性所在位设为1,否则为0;
S214:构造V向量中的R元素,R为查询结果所占的比例,计算方式为查询结果的行数与数据表的总行数之比。
构造向量Q(Cm,Pr,Pa,Sr)则需分别构造用户相关的4个属性以作验证,包括以下步骤:
S221:构造Q向量中的Cm元素,Cm表示用户命令类型;
S222:构造Q向量中的Pr元素,Pr表示检索表向量;即如果检索了n个数据表,则将n个数据表对应的编号组成向量Pr;
S223:构造Q向量中的Pa元素,Pa表示检索属性,该属性来标识被检索数据表中,具体被检索到的属性;
S224:构造Q向量中的Sr元素,Sr表示检索信息的比例。
在用户聚类模块包括以下步骤:
S31:输入:用户行为轮廓的样本集D={V1,V2,...,Vm},聚类的簇数k,最大迭代次数N,从数据集D中随机选择k个样本作为初始的聚类中心:{μ12,...,μk};
S32:将簇集合C初始化为
Figure BDA0002244041930000041
S33:计算各个聚类中心向量,所有聚类中心向量没有变化则跳转至S24;
S34:输出簇集合C={C1,C2,...,Ck}。
在用户聚类模块中使用以下步骤计算各个聚类中心向量:
S331:对于i=1,2,...,m,计算样本xi和各个聚类中心μj(j=1,2,...,k)的距离:
Figure BDA0002244041930000042
选择dij最小的μj作为xi所对应的类别λi。更新
Figure BDA0002244041930000043
S332:对于j=1,2,...,k,对Cj中所有样本点重新计算新的聚类中心
Figure BDA0002244041930000044
本发明采取了多种分类算法对异常检测模块进行训练,以验证模型的准确性,保证模型对异常检测有效,包括以下步骤:
S41:使用朴素贝叶斯算法对异常检测模块进行训练;
S42:使用贝叶斯网络对异常检测模块进行训练;
S43:使用C4.5决策树(Decision Tree)对异常检测模块进行训练;
S44:使用随机树对异常检测模块进行训练;
S45:使用随机森林对异常检测模块进行训练;
S46:使用支持向量机(Support Vector Machine,SVM)对异常检测模块进行训练;
S47:使用序列最小最优化(Sequential Minimal Optimization,SMO)算法对异常检测模块进行训练;
S48:使用反向传播神经网络(Back Propagation Neural Network,BP)对异常检测模块进行训练;
在条件独立假设下,使用贝叶斯定理对标记了用户组别的行为轮廓进行训练,包括以下步骤:
S411:输入用户轮廓待分类系项x={V1,V2,...,Vm},其中Vi(i=1,2,...,m)为x的特征属性,输入类集合C={y1,y2,...,yn},即用户组别集合;输入训练数据集T={(x1,y1),(x2,y2),...,(xn,yn)};
S412:使用如下公式计算训练数据集的先验概率分布;
P(Y=yj),j=1,2,...,n 式(1)
S413:使用如下公式计算训练数据集中各类别下每个特征属性的条件概率分布;
P(Vi|yj),i=1,2,...,m;j=1,2,...,n 式(2)
S414:由贝叶斯定理可得如下概率,即在特征为x的情况下,其类别为yj的概率:
Figure BDA0002244041930000051
其中分母P(x|yj)和分子P(x)分别为
Figure BDA0002244041930000052
Figure BDA0002244041930000053
将公式(4)、(5)代入(3)中可得
Figure BDA0002244041930000054
S415:若有P(yk|x)=max{P(y1|x),P(y2|x),...,P(yn|x)},则x∈yk,输出yk
使用C4.5决策树算法对标记了用户组别的行为轮廓进行训练,包括以下步骤:
S431:输入用于训练的用户行为轮廓的样本集D={V1,V2,...,Vm},有n个类Ck,k=1,2,...,n。其中,在Vi向量中的某个特征(C、T、A、R)可以有m个不同的取值{a1,a2,...,am},此处假设取第三个特征A,根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S432:生成结点node;
S433:如果D中数据全部属于同一类别Ck,则将node标记为类别Ck叶子结点;
S434:如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S435:遍历A中所有特征,选择最优划分;
S436:输出以node为根结点的一棵决策树。
基于C4.5决策树算法,从A中选择最优划分,包括以下步骤:
S4351:计算数据集D的熵H(D),用来衡量属性取值的不确定度,记为
Figure BDA0002244041930000055
S4352:计算属性A对数据集D的条件熵H(D|A),记为:
Figure BDA0002244041930000056
S4353:结合式(7)和式(8)计算特征A的信息增益G(D,A),记为:
G(D,A)=H(D)-H(D|A) 式(9)
S4354:计算特征A的信息熵HA(D),记为:
Figure BDA0002244041930000061
S4355:结合式(10)计算特征A的信息增益比定义为A的信息增益与熵之比,记为:
Figure BDA0002244041930000062
S4356:选择最大增益比,如果决策树已建成则返回S436步,否则返回S435。
使用随机树算法对标记了用户组别的行为轮廓进行训练,包括以下步骤:
S441:输入用于训练的用户行为轮廓的样本集D={V1,V2,...,Vm},有n个类Ck,k=1,2,...,n。其中,在Vi向量中的某个特征(C、T、A、R)有m个不同的取值{a1,a2,...,am},此处假设取第三个特征A,根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S442:生成结点node;
S443:如果D中数据完全属于同一类别Ck,则将node标记为Ck类叶子结点;
S444:如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S445:从A中随机选取K个特征,选择最优划分;
S446:输出以node为根结点的一棵决策树。
基于随机树算法,从S445中选取的K个特征中选择最优划分,包括以下步骤:
S4451:使用S4351步到S4355步所用的公式计算增益比;
S4452:选择最大增益比,如果决策树已建成则执行S446步,否则执行S443步。
使用随机森林算法对标记了用户组别的行为轮廓进行训练,包括以下步骤:
S451:输入训练数据集D,有n个类Ck,k=1,2,...,n。其中,特征A有m个不同的取值,即特征集{a1,a2,...,am},根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S452:从训练数据集D中随机抽取n个样本,再从特征集中随机抽取k个特征值构造决策树,共随机采样m次;
S453:生成结点node;
S454:如果D中随机抽取n个样本数据完全属于同一类别Ck,则将node标记为Ck类叶子结点;
S455:如果特征A中随机抽取k个特征值为空集或者D中随机抽取n个样本数据在A随机抽取k个特征值上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S456:从A中随机选取k个特征值里,选择最优划分;
S457:以node为根结点建立一棵决策树;
S458:判断是否建立了m棵决策树,建立完成则进入S459步,否则跳回S452步;
S459:输出为决策树集合,也就是随机森林模型。
基于随机森林算法,从S456中选取的k个特征中选择最优划分,包括以下步骤:
S4561:使用S4351步到S4355步所用的公式计算增益比;
S4562:选择最大增益比,如果决策树已建成则执行S457步,否则执行S453。
使用反向传播(BP)神经网络对标记了用户组别的行为轮廓进行训练,包括以下步骤:
S481:输入向量用户行为轮廓的样本集D={V1,V2,...,Vm}和目标输出类集合C={y1,y2,...,yn};
S482:根据输入向量求得各隐含层和输出层各单元的输出值;
S483:计算输出值与目标输出之间的差值e,与预先设定的误差阈值t:
S484:若e>t,则根据e计算误差梯度,从输出层向输入层反向更新各单元的权值,返回步骤S482;若e≤t,固定当前的权值与阈值,训练结束;
S485:输出各层之间的权值。
对S41~S48的各分类算法的异常检测效果进行评估,使用以下四个评价指标:
准确率(Accuracy):反映了被分类器正确分类的样本数占总样本数的比例,其定义如下:
Figure BDA0002244041930000071
召回率(Recall),也称为True Positive Rate,反映了被正确判定的正常样本占总的正常样本的比例,定义如下:
Figure BDA0002244041930000072
误检率(False Positive Rate):反映了被分类器误判为正常的异常样本数占总异常样本的比例,其定义如下:
Figure BDA0002244041930000073
漏检率(False Negative Rate):反映了被分类器误判为异常的正常样本占总正常样本的比例,其定义如下:
Figure BDA0002244041930000074
其中:TP—将正常样本预测为正常类数;FN—将正常样本预测为异常类数;FP—将异常样本预测为正常类数;TN—将异常样本预测为异常类数。
本发明的有益之处在于:
使用k-means聚类算法对用户进行分组标记,再利用分类算法训练异常检测模型,提供了基于无用户分组的数据库异常检测模型的构造方法。其中,用户轮廓构造方法极大地提高了计算速度,所使用的k-means与不同分类算法相结合的方法对异常数据的检测效果良好。
附图说明
图1示出了本发明所提供的一种基于无监督学习的数据库异常检测模型的流程图;
图2示出了本发明在无监督聚类算法中初始聚类中心点对聚类效果的影响;
图3示出了本发明数据集的C4.5分类模型图例;
图4示出了本发明数据集的随机树分类模型图例;
图5示出了本发明不同分类算法的准确率对比图;
图6示出了本发明不同分类算法的召回率对比图;
图7示出了本发明不同分类算法的误检率对比图;
图8示出了本发明不同分类算法的漏检率对比图。
具体实施方式
下面将结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
本发明的实施例在INTEL Core i7-4790CPU 3.60GHz、8GB RAM台式机上完成。使用联机交易处理模型的测试标准数据库TPC-C作为基于无监督学习的数据库异常检测模型的实验数据集。
出于安全隐私顾虑,企业往往不会将数据库后台的审计日志进行共享,本发明采用了事务处理性能测试委员会(Transaction Processing Performance Council,TPC)所制定的标准测试数据库作为数据集。TPC是一个定义事务处理和为数据库性能测试制定规范的非盈利性组织,其制定的规范在数据库异常检测领域已有多次应用。TPC制定的数据测试标准主要包括以下几种类型:
1)联机交易处理模型(On-Line Transaction Process,OLTP)测试标准:TPC-C、TPC-E等;
2)决策支持(Decision Support)测试标准:TPC-H、TPC-DS、TPC-DI等;
3)服务器虚拟化(Virtualization)测试标准:TPC-VMS、TPCx-V、TPCx-HCI等;
4)大数据(Big Data)测试标准:TPCx-HS V1、TPCx-HS V2、TPCx-HS BB等;
5)物联网网关模型(IoT Gateway Systems)测试标准:TPCx-IoT等。
TPC根据被测试模型的发展,对当前的测试标准进行补充、完善,不断提出更加贴近现实生活中的测试模型,如1992年提出TPC-C标准来替代原有的联机交易处理模型标准TPC-A;1999年提出了新的决策支持测试标准TPC-H以替代TPC-D等。
TPC-C原始数据集中包含大量模型命令等与用户交易无关的数据,去除这些数据仅留下用户查询的相关信息。分别将五个数据集的80%作为训练数据集,剩余的20%作为测试集。数据集的数据分布情况如表1所示。
表1为TPC-C五个数据集的数据分布
Figure BDA0002244041930000091
如图1示出了本发明所提供的一种基于无监督学习的数据库异常检测模型的流程图,模型主要包含以下五个模块:
S1:特征提取模块,特征提取模块的主要功能是采集用户提交到数据库的查询语句(SQL语句),提取语句中的主要特征。SQL语句的格式如下:
SELECT {Project-Attributes}
FROM {Relations}
WHERE {Select-Attributes}
S2:用户轮廓构造模块,用户轮廓构造模块的主要功能是将提取到的用户特征属性标准化为用户的行为轮廓。使用映射与统计相结合的用户轮廓构造方法来描述无用户分组的数据库用户查询语句。
S3:聚类模块,在异常检测器的训练阶段对用户行为轮廓进行聚类,并将聚类的结果作为用户组别加入到异常检测器的训练中。
S4:异常检测模块,历史审计日志中的SQL查询语句,经过特征提取、用户行为轮廓构建,使用分类算法训练可得异常检测模块,这是整个模型的核心部分。
S5:响应模块,根据异常检测模块提交的检测结果,向数据库管理员做出响应。如有异常情况则会发出告警,并中断用户的访问以起到预防数据库泄露的目的。
在特征提取模块,采集用户查询的主要特征主要有以下几个步骤:
S11:提取用户提交的查询命令类型,主要包括SELECT(筛选)、UPDATE(更新)、DELETE(删除)、INSERT(插入)等四种用户命令;
S12:提取查询语句检索与操作的属性,对于SELECT命令,检索属性的信息一般由WHERE引导,待操作属性的信息由SELECT命令引导;
S13:提取查询检索的数据表,一般由FROM引导,通过提取用户查询的数据表可以得知用户的查询范围。
由于无监督聚类算法中k-means算法的局限性,在用户聚类模块中需改变初始簇中心对k-means算法进行多次实验。如图2所示,不同的随机种子数目会产生不同的初始类簇中心点,导致最后的聚类结果发生变化。由于随机种子数目的微量变化不会影响最终的聚类结果,本次实验将随机种子数目变化的幅度设为50,分别记录了随机种子数目从50变化到1000时,五个数据集的聚类结果——簇内平方误差和的变化。
作为评价k-means聚类结果的指标,簇内平方误差和的值越小代表聚类效果越好。由图2可知五个数据集分别在随机种子数目为50、100、200、200、250时取得最小簇内平方误差和129914、250275、368786、503264、625951。因此分别取随机种子数50、100、200、200、250作为五个数据集的聚类参数,构造用户组别聚类模型。
在用户轮廓构造模块包括以下步骤:
S21:构造向量V(C,T,A,R)来表示从查询记录中提取出的属性特征;
S22:构造向量Q(Cm,Pr,Pa,Sr)以验证使用向量V(C,T,A,R)更加节省空间和时间。
构造向量V(C,T,A,R),则需分别构造用户相关的4个属性,包括以下步骤:
S211:构造V向量中的C元素,C为语句命令类型;
S212:构造V向量中的T元素,T为查询检索的数据表,用1—N表示,N为数据库中包含数据表的个数。若数据库中仅包含少量的交叉查询,为了减少向量的存储空间,将几种交叉查询检索的数据表中的属性重新整合为几个新表,从N+1开始表示;
S213:构造V向量中的A元素,A为查询语句检索的属性信息,由一个向量来表示,向量的长度为所有表长度中的最大值,属性与向量之间的映射方式为:当查询中包含数据表中的某个属性时,将向量中该属性所在位设为1,否则为0;
S214:构造V向量中的R元素,R为查询结果所占的比例,计算方式为查询结果的行数与数据表的总行数之比。
构造向量Q(Cm,Pr,Pa,Sr)则需分别构造用户相关的4个属性以作验证,包括以下步骤:
S221:构造Q向量中的Cm元素,Cm表示用户命令类型;
S222:构造Q向量中的Pr元素,Pr表示检索表向量;
S223:构造Q向量中的Pa元素,Pa表示检索属性;
S224:构造Q向量中的Sr元素,Sr表示检索信息的比例;
表2为向量表示举例对比表
Figure BDA0002244041930000111
表2为Q向量和V向量构造举例的对比表,以第一个Q向量[‘SELECT’,[1,0],[[1,0],[0,0]],[’s’,null]]为例:该语句的命令Cm为SELECT命令;检索数据表Pr为[1,0],即第一个表用户表;检索属性Pa为[[1,0],[0,0]],即第一个表(用户表)的第一个属性c_ID,第二个表(产品表)没有被检索到,所以表示该表的属性向量全为零;检索信息的比例Sr为[’s’,null],即第一个表检索信息的比例小于
Figure BDA0002244041930000112
(检索信息大于
Figure BDA0002244041930000113
小于
Figure BDA0002244041930000114
则记为m,检索信息大于
Figure BDA0002244041930000115
记为l),第二个表为0。
V向量[‘SELECT’,0,[1,0],0.25]表示:该语句的命令C为SELECT命令;检索的数据表T为数据表1即用户表;检索的属性A为[1,0],即用户表中的第一个属性c_ID;查询结果所占的比例R为0.25,即符合条件c_ID=3的记录数目占整个数据表的比例为0.25。
使用V向量表示交叉查询较少的用户查询,与向量Q相比节省了一半的存储空间,可以有效地降低异常检测模型的训练时间。
在用户聚类模块包括以下步骤:
S31:输入:用户行为轮廓的样本集D={V1,V2,...,Vm},聚类的簇数k,最大迭代次数N,从数据集D中随机选择k个样本作为初始的聚类中心:{μ12,...,μk};
S32:将簇集合C初始化为
Figure BDA0002244041930000116
S33:计算各个聚类中心向量,所有聚类中心向量没有变化则跳转至S24;
S34:输出簇集合C={C1,C2,...,Ck}。
在用户聚类模块中使用以下步骤计算各个聚类中心向量:
S331:对于i=1,2,...,m,计算样本xi和各个聚类中心μj(j=1,2,...,k)的距离:
Figure BDA0002244041930000117
选择dij最小的μj作为xi所对应的类别λi。更新
Figure BDA0002244041930000118
S332:对于j=1,2,...,k,对Cj中所有样本点重新计算新的聚类中心
Figure BDA0002244041930000121
高维数据集的分类模型不易直观表示,C4.5与随机树这两种决策树的分类模型为树形结构,可通过图形描述,如图3、图4所示。
根据数据库数据对用户轮廓进行构造,用户表如表3所示,产品表如表4所示。
表3为用户表
c_ID c_name
1 c1
2 c2
3 c3
4 c4
表4为产品表
p_ID p_price
1 1
2 2
3 5
4 8
本发明采取了多种分类算法对异常检测模块进行训练,以验证模型的准确性,保证模型对异常检测有效,包括以下步骤:
S41:使用朴素贝叶斯算法对异常检测模块进行训练;
S42:使用贝叶斯网络对异常检测模块进行训练;
S43:使用C4.5决策树(Decision Tree)对异常检测模块进行训练;
S44:使用随机树对异常检测模块进行训练;
S45:使用随机森林对异常检测模块进行训练;
S46:使用支持向量机(Support Vector Machine,SVM)对异常检测模块进行训练;
S47:使用序列最小最优化(Sequential Minimal Optimization,SMO)算法对异常检测模块进行训练;
S48:使用反向传播神经网络(Back Propagation Neural Network,BP)对异常检测模块进行训练;
在条件独立假设下,使用贝叶斯定理对标记了用户组别的用户轮廓进行分类,包括以下步骤:
S411:输入用户轮廓待分类系项x={V1,V2,...,Vm},其中Vi(i=1,2,...,m)为x的特征属性,输入类集合C={y1,y2,...,yn},输入训练数据集T={(x1,y1),(x2,y2),...,(xn,yn)};
S412:使用如下公式计算训练数据集的先验概率分布;
P(Y=yj),j=1,2,...,n 式(1)
S413:使用如下公式计算训练数据集中各类别下每个特征属性的条件概率分布;
P(ai|yj),i=1,2,...,m;j=1,2,...,n 式(2)
S414:由贝叶斯定理可得如下概率,即在特征为x的情况下,其类别为yj的概率:
Figure BDA0002244041930000131
其中分母P(x|yj)和分子P(x)分别为
Figure BDA0002244041930000132
Figure BDA0002244041930000133
将公式(4)、(5)代入(3)中可得
Figure BDA0002244041930000134
S415:若有P(yk|x)=max{P(y1|x),P(y2|x),...,P(yn|x)},则x∈yk,输出yk
使用C4.5决策树算法对标记了用户组别的用户轮廓进行分类,包括以下步骤:
S431:输入用于训练的用户行为轮廓的样本集D={V1,V2,...,Vm},有n个类Ck,k=1,2,...,n。其中,在Vi向量中的某个特征(C、T、A、R)可以有m个不同的取值{a1,a2,...,am},此处假设取第三个特征A,根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S432:生成结点node;
S433:如果D中数据完全属于同一类别C,则将node标记为类别C叶子结点;
S434:如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S435:遍历A中所有特征,选择最优划分;
S436:输出以node为根结点的一棵决策树。
基于从C4.5决策树算法,从A中选择最优划分,包括以下步骤:
S4351:计算数据集D的熵H(D),用来衡量属性取值的不确定度,记为
Figure BDA0002244041930000135
S4352:计算属性A对数据集D的条件熵H(D|A),记为:
Figure BDA0002244041930000141
S4353:结合式(7)和式(8)计算特征A的信息增益G(D,A),记为:
G(D,A)=H(D)-H(D|A) 式(9)
S4354:计算特征A的信息熵HA(D),记为:
Figure BDA0002244041930000142
S4355:结合式(10)计算特征A的信息增益比定义为A的信息增益与熵之比,记为:
Figure BDA0002244041930000143
S4356:选择最大增益比,如果决策树已建成则返回S436步,否则返回10中S433。
使用随机树算法对标记了用户组别的用户轮廓进行分类,包括以下步骤:
S441:输入用于训练的用户行为轮廓的样本集D={V1,V2,...,Vm},有n个类Ck,k=1,2,...,n。其中,在Vi向量中的某个特征(C、T、A、R)有m个不同的取值{a1,a2,...,am},此处假设取第三个特征A,根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S442:生成结点node;
S443:如果D中数据完全属于同一类别C,则将node标记为C类叶子结点;
S444:如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S445:从A中随机选取k个特征,选择最优划分;
S446:输出以node为根结点的一棵决策树。
基于随机树算法,从S445中选取的k个特征中选择最优划分,包括以下步骤:
S4451:使用S4351步到S4355步所用的公式计算增益比;
S4452:选择最大增益比,如果决策树已建成则执行S446步,否则执行S443步。
使用随机森林算法对标记了用户组别的用户轮廓进行分类,包括以下步骤:
S451:输入训练数据集D,有n个类Ck,k=1,2,...,n。其中,特征A有m个不同的取值{a1,a2,...,am},根据特征A的取值可将数据集D划分为m个子集{D1,D2,...,Dm};
S452:从训练集中随机抽取n个样本,再从特征集中随机抽取k个属性构造决策树,共随机采样m次;
S453:生成结点node;
S454:如果D中随机抽取n个样本数据完全属于同一类别C,则将node标记为C类叶子结点;
S455:如果特征A中随机抽取k个属性为空集或者D中随机抽取n个样本数据在A随机抽取k个属性上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
S456:从A中随机选取k个特征里,选择最优划分;
S457:以node为根结点建立一棵决策树;
S458:判断是否建立了m棵决策树,建立完成则进入S459步,否则跳回S452步;
S459:输出为决策树集合,也就是随机森林模型。
基于随机森林算法,从S456中选取的k个特征中选择最优划分,包括以下步骤:
S4561:使用S4351步到S4355步所用的公式计算增益比;
S4562:选择最大增益比,如果决策树已建成则执行S457步,否则执行S453。
使用反向传播(BP)神经网络对标记了用户组别的用户轮廓进行分类,包括以下步骤:
S481:输入向量和目标输出;
S482:根据输入向量求得各隐含层和输出层各单元的输出值;
S483:计算输出值与目标输出之间的差值e,与预先设定的误差阈值t;
S484:若e>t,则根据e计算误差梯度,从输出层向输入层反向更新各单元的权值,返回步骤S482;若e≤t,固定当前的权值与阈值,训练结束;
S485:输出各层之间的权值。
对8中的各分类算法的异常检测效果进行评估,使用以下四个评价指标:
准确率(Accuracy):反映了被分类器正确分类的样本数占总样本数的比例,其定义如下:
Figure BDA0002244041930000151
召回率(Recall),也称为True Positive Rate,反映了被正确判定的正常样本占总的正常样本的比例,定义如下:
Figure BDA0002244041930000152
误检率(False Positive Rate):反映了被分类器误判为正常的异常样本数占总异常样本的比例,其定义如下:
Figure BDA0002244041930000153
漏检率(False Negative Rate):反映了被分类器误判为异常的正常样本占总正常样本的比例,其定义如下:
Figure BDA0002244041930000154
其中:TP—将正常样本预测为正常类数;FN—将正常样本预测为异常类数;FP—将异常样本预测为正常类数;TN—将异常样本预测为异常类数。
不同分类算法构造分类器对五个测试数据集进行测试,得到的实验结果对比图如图5-图8所示。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种基于无监督学习的数据库异常访问检测方法,其步骤包括:
1)对于历史审计日志中的各查询记录,分别提取每一查询记录中的特征并根据所提取的特征生成对应用户的行为轮廓;
2)对各用户的行为轮廓进行聚类,并将聚类的结果标记为对应用户的用户组别;
3)利用标记了用户组别的行为轮廓进行训练,得到异常检测模块;
4)对于用户提交到数据库的一查询语句,提取该查询语句中的特征;根据所提取的特征生成该用户的行为轮廓并将其输入到训练后的异常检测模块中进行检测,确定是否为异常访问。
2.如权利要求1所述的方法,其特征在于,所述特征包括:查询命令类型、查询语句检索与操作的属性、查询检索的数据表。
3.如权利要求1或2所述的方法,其特征在于,所述行为轮廓为向量V(C,T,A,R);其中,C为语句命令类型,T为查询检索的数据表,A为查询语句检索的属性信息,R为查询结果所占的比例。
4.如权利要求3所述的方法,其特征在于,构造一向量Q(Cm,Pr,Pa,Sr)用于验证向量V(C,T,A,R);其中,Cm表示用户命令类型,Pr表示检索表向量,Pa表示检索属性,Sr表示检索信息的比例。
5.如权利要求3所述的方法,其特征在于,A为一个向量,向量的长度为所有数据表长度中的最大值,属性与向量之间的映射方式为:当查询中包含数据表中的某个属性时,将向量中该属性所在位设为1,否则为0;R为查询结果的行数与数据表的总行数之比。
6.如权利要求1所述的方法,其特征在于,使用贝叶斯定理对标记了用户组别的行为轮廓进行训练,得到所述异常检测模块,其方法为:
311)计算训练数据集T={(x1,y1),(x2,y2),…,(xn,yn)}的先验概率分布P(Y=yj);其中,(xn,yn)为第n个样本数据,yn为第n个样本数据的类别,xn为第n个样本数据的行为轮廓,xn={V1,V2,…,Vm},Vi为xn的第i项特征属性;
312)计算训练数据集T中各类别下每个特征属性的条件概率分布P(Vi|yj);
313)计算特征x的类别为yj的概率P(yj|x);其中,x代表x1~xn中任意一特征;
314)根据步骤313)的计算结果,若有P(yk|x)=max{P(y1|x),P(y2|x),…,P(yn|x)},则x∈yk,即特征x属于输出类别yk
7.如权利要求1所述的方法,其特征在于,使用C4.5决策树算法对标记了用户组别的行为轮廓进行训练,得到所述异常检测模块,其方法为:
321)设用于训练的行为轮廓的样本集D={V1,V2,…,Vm},有n个类Ck,k=1,2,…,n;其中,对于任一样本Vi,根据Vi中特征A的取值将数据集D划分为m个子集{D1,D2,…,Dm};
322)生成一结点node;如果D中数据全部属于同一类别Ck,则将node标记为类别Ck叶子结点;如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
323)遍历A中所有特征,选择最优划分;输出以node为根结点的一棵决策树;其中,选择最优划分的方法为:
3231)计算数据集D的熵H(D),计算特征A对数据集D的条件熵H(D|A);
3232)计算特征A的信息增益G(D,A)=H(D)-H(D|A);
3233)计算特征A的信息增益比定义为A的信息增益与熵之比
Figure FDA0002244041920000021
其中,HA(D)为特征A的信息熵;
3234)选择GR(D,A)取值最大时对应的划分为最优划分。
8.如权利要求1所述的方法,其特征在于,使用随机树算法对标记了用户组别的行为轮廓进行训练,得到所述异常检测模块,其方法为:
331)设用于训练的行为轮廓的样本集D={V1,V2,…,Vm},有n个类Ck,k=1,2,…,n;其中,对于任一样本Vi,根据Vi中特征A的取值将数据集D划分为m个子集{D1,D2,…,Dm};
332)生成一结点node;如果D中数据全部属于同一类别Ck,则将node标记为类别Ck叶子结点;如果特征A为空集或者D中数据在A上取值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
333)从A中随机选取K个特征,选择最优划分,输出以node为根结点的一棵决策树;其中,选择最优划分的方法为:计算数据集D的熵H(D),计算特征A对数据集D的条件熵H(D|A);计算特征A的信息增益G(D,A)=H(D)-H(D|A);计算特征A的信息增益比定义为A的信息增益与熵之比
Figure FDA0002244041920000022
HA(D)为特征A的信息熵;选择GR(D,A)取值最大时对应的划分为最优划分。
9.如权利要求1所述的方法,其特征在于,随机森林算法对标记了用户组别的行为轮廓进行训练,得到所述异常检测模块,其方法为:
341)设用于训练的行为轮廓的样本集D={V1,V2,…,Vm},有n个类Ck,k=1,2,…,n;其中,对于任一样本Vi,根据Vi中特征A的取值将数据集D划分为m个子集{D1,D2,…,Dm};
342)从训练数据集D中随机抽取n个样本,再从特征的取值中随机抽取k个特征值构造决策树,共随机采样m次;
343)生成结点node;如果D中随机抽取的n个样本数据全属于同一类别Ck,则将node标记为Ck类叶子结点;如果特征A中随机抽取k个特征值为空集或者D中随机抽取n个样本数据在特征A中随机抽取k个特征值相同,则将node标记为叶结点,其类别标记为D中样本数最多的类;
344)从特征A中随机选取的k个特征值里,选择最优划分;以node为根结点建立一棵决策树;其中,选择最优划分的方法为:计算数据集D的熵H(D),计算特征A对数据集D的条件熵H(D|A);计算特征A的信息增益G(D,A)=H(D)-H(D|A);计算特征A的信息增益比定义为A的信息增益与熵之比
Figure FDA0002244041920000031
HA(D)为特征A的信息熵;选择GR(D,A)取值最大时对应的划分为最优划分;
345)判断是否建立了m棵决策树,如果是则输出为决策树集合,否则返回步骤342)。
10.如权利要求1所述的方法,其特征在于,采用多种分类算法对所述异常检测模块进行训练,分别评估每种方法所训练的异常检测模块的效果;其中效果指标包括准确率、召回率、误检率和漏检率;然后选取训练效果最好的异常检测模块。
CN201911010410.3A 2019-10-23 2019-10-23 一种基于无监督学习的数据库异常访问检测方法 Pending CN110866030A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911010410.3A CN110866030A (zh) 2019-10-23 2019-10-23 一种基于无监督学习的数据库异常访问检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911010410.3A CN110866030A (zh) 2019-10-23 2019-10-23 一种基于无监督学习的数据库异常访问检测方法

Publications (1)

Publication Number Publication Date
CN110866030A true CN110866030A (zh) 2020-03-06

Family

ID=69653036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911010410.3A Pending CN110866030A (zh) 2019-10-23 2019-10-23 一种基于无监督学习的数据库异常访问检测方法

Country Status (1)

Country Link
CN (1) CN110866030A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541687A (zh) * 2020-04-21 2020-08-14 厦门网宿有限公司 一种网络攻击检测方法及装置
CN111860692A (zh) * 2020-07-31 2020-10-30 国网重庆市电力公司电力科学研究院 一种基于K-mediod的物联网环境下的异常数据检测方法
CN113111098A (zh) * 2021-06-11 2021-07-13 阿里云计算有限公司 检测时序数据的查询的方法、装置及时序数据库系统
CN113128913A (zh) * 2021-05-14 2021-07-16 北京邮电大学 一种基于反转信息熵动态集成的电力调度监控数据异常检测方法
CN113240381A (zh) * 2021-04-14 2021-08-10 广东电网有限责任公司 微电网电力审计系统
CN113746780A (zh) * 2020-05-27 2021-12-03 极客信安(北京)科技有限公司 基于主机画像的异常主机检测方法、装置、介质和设备
US11416469B2 (en) 2020-11-24 2022-08-16 International Business Machines Corporation Unsupervised feature learning for relational data
CN115033747A (zh) * 2022-06-24 2022-09-09 北京百度网讯科技有限公司 异常状态的检索方法及其装置
WO2022269387A1 (en) * 2021-06-22 2022-12-29 International Business Machines Corporation Anomaly detection over high-dimensional space
CN116701846A (zh) * 2023-08-04 2023-09-05 长江水利委员会长江科学院 一种基于无监督学习的水电站调度运行数据清洗方法
CN116861467A (zh) * 2023-08-31 2023-10-10 中国科学院软件研究所 一种基于上下文特征的数据库异常查询访问控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107229849A (zh) * 2016-03-24 2017-10-03 全球能源互联网研究院 面向电力信息内外网边界的数据库用户行为安全审计方法
WO2018160177A1 (en) * 2017-03-01 2018-09-07 Visa International Service Association Predictive anomaly detection framework
CN108881194A (zh) * 2018-06-07 2018-11-23 郑州信大先进技术研究院 企业内部用户异常行为检测方法和装置
CN109787979A (zh) * 2019-01-22 2019-05-21 电子科技大学 一种电力网络事件和入侵的检测方法
CN110147321A (zh) * 2019-04-19 2019-08-20 北京航空航天大学 一种基于软件网络的缺陷高风险模块的识别方法
CN110263119A (zh) * 2019-07-01 2019-09-20 西北师范大学 一种案例推理分类器案例检索方法
CN110347547A (zh) * 2019-05-27 2019-10-18 中国平安人寿保险股份有限公司 基于深度学习的日志异常检测方法、装置、终端及介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107229849A (zh) * 2016-03-24 2017-10-03 全球能源互联网研究院 面向电力信息内外网边界的数据库用户行为安全审计方法
WO2018160177A1 (en) * 2017-03-01 2018-09-07 Visa International Service Association Predictive anomaly detection framework
CN108881194A (zh) * 2018-06-07 2018-11-23 郑州信大先进技术研究院 企业内部用户异常行为检测方法和装置
CN109787979A (zh) * 2019-01-22 2019-05-21 电子科技大学 一种电力网络事件和入侵的检测方法
CN110147321A (zh) * 2019-04-19 2019-08-20 北京航空航天大学 一种基于软件网络的缺陷高风险模块的识别方法
CN110347547A (zh) * 2019-05-27 2019-10-18 中国平安人寿保险股份有限公司 基于深度学习的日志异常检测方法、装置、终端及介质
CN110263119A (zh) * 2019-07-01 2019-09-20 西北师范大学 一种案例推理分类器案例检索方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
汪秋云: "移动环境下的自动信任协商研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541687B (zh) * 2020-04-21 2022-10-11 厦门网宿有限公司 一种网络攻击检测方法及装置
CN111541687A (zh) * 2020-04-21 2020-08-14 厦门网宿有限公司 一种网络攻击检测方法及装置
CN113746780A (zh) * 2020-05-27 2021-12-03 极客信安(北京)科技有限公司 基于主机画像的异常主机检测方法、装置、介质和设备
CN111860692B (zh) * 2020-07-31 2022-05-31 国网重庆市电力公司电力科学研究院 一种基于K-mediod的物联网环境下的异常数据检测方法
CN111860692A (zh) * 2020-07-31 2020-10-30 国网重庆市电力公司电力科学研究院 一种基于K-mediod的物联网环境下的异常数据检测方法
US11416469B2 (en) 2020-11-24 2022-08-16 International Business Machines Corporation Unsupervised feature learning for relational data
CN113240381A (zh) * 2021-04-14 2021-08-10 广东电网有限责任公司 微电网电力审计系统
CN113128913B (zh) * 2021-05-14 2022-05-17 北京邮电大学 一种基于反转信息熵动态集成的电力调度监控数据异常检测方法
CN113128913A (zh) * 2021-05-14 2021-07-16 北京邮电大学 一种基于反转信息熵动态集成的电力调度监控数据异常检测方法
CN113111098A (zh) * 2021-06-11 2021-07-13 阿里云计算有限公司 检测时序数据的查询的方法、装置及时序数据库系统
WO2022269387A1 (en) * 2021-06-22 2022-12-29 International Business Machines Corporation Anomaly detection over high-dimensional space
US11943244B2 (en) 2021-06-22 2024-03-26 International Business Machines Corporation Anomaly detection over high-dimensional space
CN115033747A (zh) * 2022-06-24 2022-09-09 北京百度网讯科技有限公司 异常状态的检索方法及其装置
CN116701846A (zh) * 2023-08-04 2023-09-05 长江水利委员会长江科学院 一种基于无监督学习的水电站调度运行数据清洗方法
CN116861467A (zh) * 2023-08-31 2023-10-10 中国科学院软件研究所 一种基于上下文特征的数据库异常查询访问控制方法
CN116861467B (zh) * 2023-08-31 2023-12-26 中国科学院软件研究所 一种基于上下文特征的数据库异常查询访问控制方法

Similar Documents

Publication Publication Date Title
CN110866030A (zh) 一种基于无监督学习的数据库异常访问检测方法
US10467234B2 (en) Differentially private database queries involving rank statistics
US10713597B2 (en) Systems and methods for preparing data for use by machine learning algorithms
Aggarwal An introduction to cluster analysis
US20230289665A1 (en) Failure feedback system for enhancing machine learning accuracy by synthetic data generation
US10586068B2 (en) Differentially private processing and database storage
Qin et al. DTU: a decision tree for uncertain data
CN105224872A (zh) 一种基于神经网络聚类的用户异常行为检测方法
CN111612041A (zh) 异常用户识别方法及装置、存储介质、电子设备
CN108550077A (zh) 一种面向大规模非平衡征信数据的个人信用风险评估方法及评估系统
Zhang et al. A relevant subspace based contextual outlier mining algorithm
CN104239553A (zh) 一种基于Map-Reduce框架的实体识别方法
CN115688024A (zh) 基于用户内容特征和行为特征的网络异常用户预测方法
Xiao et al. A survey of parallel clustering algorithms based on spark
Pristyanto et al. The effect of feature selection on classification algorithms in credit approval
Xia et al. Conceptual clustering categorical data with uncertainty
Aghabozorgi et al. A new approach to present prototypes in clustering of time series
Rahman et al. An efficient approach for selecting initial centroid and outlier detection of data clustering
Gholamian et al. A new method for clustering in credit scoring problems
KR102358357B1 (ko) 시장규모추정장치 및 그 동작 방법
Liço et al. Analyzing Performance of Clustering Algorithms on a Real Retail Dataset
KR101085066B1 (ko) 대용량 다속성 데이터집합에서 의미 있는 지식 탐사를 위한 연관 분류 방법
Aksoy et al. Cluster Analysis for Housing Market Segmentation
Hou A new clustering validity index based on K-means algorithm
Su et al. Data stream clustering by fast density-peak-search

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200306

RJ01 Rejection of invention patent application after publication