CN113837325A - 基于无监督算法的用户异常检测方法及装置 - Google Patents
基于无监督算法的用户异常检测方法及装置 Download PDFInfo
- Publication number
- CN113837325A CN113837325A CN202111410811.5A CN202111410811A CN113837325A CN 113837325 A CN113837325 A CN 113837325A CN 202111410811 A CN202111410811 A CN 202111410811A CN 113837325 A CN113837325 A CN 113837325A
- Authority
- CN
- China
- Prior art keywords
- target user
- user
- service scene
- initial
- abnormal
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本申请公开了基于无监督算法的用户异常检测方法及装置,涉及网络安全检测技术领域,可以提升用户异常检测的准确率。其中方法包括:获取web***的用户行为日志数据;根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的;根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果;根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
Description
技术领域
本发明涉及网络安全检测技术领域,具体涉及基于无监督算法的用户异常检测方法及装置。
背景技术
随着互联网在各行各业的广泛应用,企业面向的互联网用户数量在不断增长,用户类型也日益多样,尤其是电商、金融等拥有海量用户的大规模应用互联网的企业,日活跃用户数量可达上千万,其中,以灰产、黑产为代表的恶意访问的占比居高不下。但目前以发现潜在问题或检测出恶意用户、恶意行为的用户行为异常检测方法比较片面,无法基于部分数据信息获取更加综合的用户行为评价。
在数据挖掘中,针对用户行为日志数据的异常检测是对不符合预期模式或分布样本的识别,即“异常点”的识别。在现有异常检测的解决方案中,根据检测数据类型的不同,应用到的异常检测算法也不同,多维特征数据的异常检测通常根据是否有数据标签选择有监督或无监督算法;单维特征数据的异常检测,一般通过规则阈值、分位数、3σ法则原理统计算法实现,但均存在检测周期内不同时刻波动区间差别较大,误报率较高、准确率较低等技术问题。
发明内容
有鉴于此,本申请提供了一种基于无监督算法的用户异常检测方法及装置,主要目的在于解决实际业务场景中,现有用户行为特征数据异常检测存在的误报率高、准确率低的技术问题。
根据本申请提供了一种基于无监督算法的用户异常检测方法,该方法包括:
获取web***的用户行为日志数据;
根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的;
根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果;
根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
根据本申请的另一方面,提供了一种基于无监督算法的用户异常检测装置,该装置包括:
数据采集模块,用于获取web***的用户行为日志数据;
特征处理模块,用于根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的;
初始评估模块,用于根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果;
异常评估模块,用于根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
根据本申请的又一方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述基于无监督算法的用户异常检测方法。
根据本申请的再一方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于无监督算法的用户异常检测方法。
借由上述技术方案,本申请提供的基于无监督算法的用户异常检测方法及装置,与现有根据不同的检测数据类型,应用不同的异常检测算法的技术方案相比,本申请能够获取web***的用户行为日志数据,根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,贝叶斯平均值是根据目标用户的单维行为特征数据确定的,根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果,根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。可见,通过本申请的上述方法,利用目标用户在多个业务场景类别,多个不同时间周期的单维行为特征数据对目标用户进行检测,能够有效避免现有异常检测方法中检测周期内不同时刻波动区间差别较大,导致误报率高、准确率较低的技术问题,从而在降低异常检测误报率的同时,提升异常判定的准确性。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种基于无监督算法的用户异常检测方法的流程示意图;
图2示出了本申请实施例提供的另一种基于无监督算法的用户异常检测方法的流程示意图;
图3a示出了本申请实施例提供的孤立森林模型中相关数据的关系示意图一;
图3b示出了本申请实施例提供的孤立森林模型中相关数据的关系示意图二;
图3c示出了本申请实施例提供的孤立森林模型中相关数据的关系示意图三;
图4示出了本申请实施例提供的一种基于无监督算法的用户异常检测装置的结构示意图;
图5示出了本申请实施例提供的另一种基于无监督算法的用户异常检测装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
针对现有用户异常检测方法存在的检测周期内不同时刻波动区间差别较大,导致误报率较高、准确率较低的技术问题。本实施例提供了一种基于无监督算法的用户异常检测方法,根据用户行为日志数据中的多个业务场景类别,多个不同时间周期的单维行为特征数据进行异常检测,能够有效避免现有异常检测方法中检测周期内不同时刻波动区间差别较大,导致误报率高、准确率较低的技术问题,从而在降低异常检测误报率的同时,提升用户行为异常判定的准确性,如图1所示,该方法包括:
步骤101、获取web***的用户行为日志数据。
在本实施例中,获取web***中多个业务场景类别下的用户行为日志数据,用户行为日志数据包括:每个业务场景类别对应的初始单维行为特征数据,用户标识信息及用户***操作时间信息。其中,用户标识信息为标识用户唯一性的字段,如账号ID(ACCT_ID)、IP地址(IP_ADDR)等;用户***操作时间信息为时间(OPR_TIME),但不限于以上字段。
步骤102、根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的。
在本实施例中,根据获取到的web***中多个业务场景类别下的用户行为日志数据,分别计算出目标用户在每个业务场景类别下的多个不同的时间周期的贝叶斯平均值,贝叶斯平均值是根据目标用户的单维行为特征数据确定的,其中,贝叶斯平均值根据目标用户的第一初始单维行为特征数据计算出相对目标用户相邻时间周期的第二初始单维行为特征数据,根据第二初始单维行为特征数据计算出相对全量用户的第三初始单维行为特征数据,以及根据第一初始单维行为特征数据计算出相对全量用户的第四初始单维行为特征数据,进而根据第一初始单维行为特征数据、第二初始单维行为特征数据、第三初始单维行为特征数据和第四初始单维行为特征数据,确定目标用户在每个时间周期内的贝叶斯平均值。可见,针对每个业务场景类别,通过获取目标用户多个不同的时间周期内的初始单维行为特征数据,以及全量用户当前时间周期内的初始单维行为特征数据,计算出的目标用户的贝叶斯平均值能够反映目标用户行为日志数据在时间维度上的纵向波动水平,以及目标用户行为日志数据在全量用户行为日志数据中的横向波动水平,从而能够为后续异常评估提供更为准确的数据依据。
步骤103、根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果。
在本实施例中,基于每个业务场景类别,分别将多个不同时间周期内的贝叶斯平均值作为无监督模型的输入,得到目标用户每个业务场景类别的评估分值和评估标签。基于目标用户的多业务场景维度,能够实现对目标用户操作行为的全面评估,以及,基于目标用户的多个不同时间周期维度,能够反映目标用户当前周期内的行为特征的同时,还反映目标用户在前时间周期内的行为特征,从而对目标用户异常行为进行更加准确的评估。此外,利用无监督算法进行异常评估,无需标签数据训练,能够实现对贝叶斯平均值简单、高效的处理,进而实现对用户行为的实时在线检测,及时发现用户异常行为。
步骤104、根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
在本实施例中,根据目标用户每个业务场景类别对应的初始评估结果中的评估标签类型,通过对初始评估结果中的评估分值进行调整,确定目标用户的异常风险分值;基于目标用户触发的业务场景类别数量及在前操作时间(用户最近一次操作时间)与当前时间的间隔时长,对目标用户的异常风险分值进行加权计算得到目标用户的异常检测结果。此外,在确定目标用户行为是否异常的同时,还能够实现对目标用户行为异常程度的评估,利于快速识别重要异常,进而作出快速响应,提升异常处理时效性。
对于本实施例可以按照上述方案,获取web***的用户行为日志数据,根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的单维行为特征数据,根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,贝叶斯平均值是根据目标用户的单维行为特征数据确定的,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果,根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果,与现有根据不同的检测数据类型,应用不同的异常检测算法的技术方案相比,本实施例基于目标用户在多个业务场景类别,多个不同时间周期的单维行为特征数据对目标用户进行检测,能够有效避免现有异常检测方法中检测周期内不同时刻波动区间差别较大,导致误报率高、准确率低的技术问题,从而在降低用户异常检测误报率的同时,提升用户异常检测的准确性。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种基于无监督算法的用户异常检测方法,如图2所示,该方法包括:
步骤201、获取web***的用户行为日志数据。
实施中,获取web***当前自然日以及预设时间段(如近15天)内的用户行为日志数据DATA,用户行为日志数据DATA包含但不限于以下字段:标识用户唯一性的用户标识如账号ID(ACCT_ID)、IP地址(IP_ADDR)等,用户***操作时间(OPR_TIME)。
步骤202、对用户行为日志数据进行业务场景类别分组,得到目标用户标识对应的多个业务场景类别的用户行为日志数据。其中,所述多个业务场景类别的用户行为日志数据类型包括:***操作次数信息、用户登录次数信息、敏感接口调用次数信息、敏感数据访问量信息、短间隔操作次数信息中的一个或者多个。
步骤203、针对每个业务场景类别,分别得到目标用户标识对应的多个不同时间周期内的第一初始单维行为特征数据。
实施中,基于web***的每个业务场景类别,根据用户行为日志数据DATA中的用户标识,以及每个用户标识对应的多个不同时间周期,分别对用户行为日志数据进行统计,得到每个用户标识对应的多个不同时间周期内的用户行为日志数据,即第一初始单维行为特征数据。其中,时间周期可以按照自然日划分为1日、3日、7日、15日4个不同的时间周期,此处不对时间周期进行具体限定。
步骤204、根据所述每个业务场景类别对应的所述第一初始单维行为特征数据,利用贝叶斯平均算法计算得到目标用户在每个时间周期内的贝叶斯平均值。
为了说明步骤204的具体实施方式,作为一种优选实施例,步骤203具体包括:将当前时间周期内目标用户的第一初始单维行为特征数据在相邻时间周期内的初始单维行为特征数据中的占比,作为第二初始单维行为特征数据,根据当前周期内目标用户的第二初始单维行为特征数据,通过均值处理得到相对全量用户的第三初始单维行为特征数据,根据当前周期内全量用户的第一初始单维行为特征数据,通过均值处理得到相对全量用户的第四初始单维行为特征数据,根据所述第一初始单维行为特征数据、第二初始单维行为特征数据、第三初始单维行为特征数据和第四初始单维行为特征数据,确定目标用户在每个时间周期内的贝叶斯平均值。
实施中,为详细阐明贝叶斯平均算法,以***操作业务场景类别下1日时间周期内的***操作次数(用户行为日志数据类型)为例,对步骤204的计算过程进行说明:
1)获取目标用户前1日(在前时间周期)的***操作次数为opr_cnt1,以及当日的***操作次数为opr_cnt(第一初始单维行为特征数据),得到目标用户当日与在前1日的***操作次数之和sum。
2)计算目标用户当日***操作次数opr_cnt在两日***操作次数之和中的占比percent(第二初始单维行为特征数据),满足下述公式:
3)计算全量用户当日***操作次数在两日***操作次数之和中的占比值的均值percent_avg(第三初始单维行为特征数据),满足下述公式:
4)计算全量用户当日***操作次数的均值oprcnt_avg(第四初始单维行为特征数据),满足下述公式:
5)基于1)-4)中的第一初始单维行为特征数据opr_cnt、第二初始单维行为特征数据percent、第三初始单维行为特征数据percent_avg、第四初始单维行为特征数据oprcnt_avg,计算目标用户当日的贝叶斯平均值score,满足下述公式:
根据实际应用场景的需要,4)中计算的全量用户当日***操作次数的均值oprcnt_avg(第四初始单维行为特征数据)不限于均值计算,也可根据数据分布或者业务实际情况选取能够代表数据整体水平的数值,如中位数、均值等,此处不对第四初始单维行为特征数据oprcnt_avg的计算方式进行具体限定。但需要说明的是,以检测目标用户是否存在***操作次数异常这一业务目的为例,第四初始单维行为特征数据oprcnt_avg不能选择最大值、最小值这类较为极端的计算方式。
在实际应用场景中,如图3a、3b所示,根据上述贝叶斯平均算法,可以得到全量用户ACCT_ID在某一时间周期内的贝叶斯平均值score,进而计算出用户当日DAY_ID针对多个不同时间周期的贝叶斯平均值数据集,表示为:score1、score2、score3、score4。具体为,如图3a所示的目标用户20673当日***操作次数opr_cnt(第一初始单维行为特征数据)为5,近1日***操作次数为6,两日***操作次数之和为11,当日***操作次数占两日***操作次数的占比percent(第二初始单维行为特征数据)为0.454545,当日全量用户***操作次数占两日***操作次数的占比值的均值percent_avg(第三初始单维行为特征数据)为0.643081272,当日全量用户***操作次数oprcnt_avg(第四初始单维行为特征数据)的均值为6,进而通过上述公式(4)计算得到目标用户20673的贝叶斯平均值为0.557383。以此类推,针对每个用户分别计算近1日、3日、7日、15日4个不同时间周期,针对当日***操作次数的贝叶斯平均值score1,score2,score3,score4。
其中,用户的***操作次数可以是累计操作次数也可以是当前操作次数,若需检测目标用户一段时间内的异常情况,则选取累计操作次数,若需检测目标用户当前阶段的异常情况,则选取当前操作次数,此处不对操作次数的统计进行具体限定。
需要说明的是,基于目标用户及全量用户的初始单维行为特征数据,并针对多个不同时间周期,利用贝叶斯平均算法计算得到的目标用户的贝叶斯平均值能够反映目标用户相对于全量用户的行为异常情况,以及,目标用户在时间维度上的行为异常情况,从而有效提升异常用户检测的准确率。
步骤205、确定与所述多个业务场景类别对应的多个孤立森林模型。
步骤206、利用每个业务场景类别对应的孤立森林模型,根据目标用户在多个不同时间周期内的贝叶斯平均值,得到目标用户在每个业务场景类别中的初始评估结果。
实施中,针对多个业务场景类别对应的贝叶斯平均值数据集score1、score2、score3、score4,分别确定每个贝叶斯平均值数据集对应的孤立森林模型。其中,孤立森林(iForest)模型是由多棵二叉树(iTree)构成的,二叉树是一种随机树,每个节点有左右两个子节点或者叶子节点。如图3b所示,以某一业务场景类别对应的孤立森林模型为例,随机选择贝叶斯平均值数据集中的score3,以及随机选择某一用户17660的score3对应的value值,并将该value值设定为阈值,如value=0.2作为阈值,根据该阈值对贝叶斯平均值数据集中的score3逐条分类,将value值大于等于阈值的用户节点归为右节点,将value值小于阈值的用户节点归为左节点,例如,第一条记录的用户18502的属性score3的value值为0.147368,小于阈值(0.2),则将该用户节点记录在左节点,依此递归构造左右节点,直到满足节点无法再进行分类或树的高度达到预设值,二叉树构造完成。
具体地,通过遍历每个业务场景类别对应的孤立森林模型中的二叉树,例如,将某一业务场景类别对应的贝叶斯平均值数据集score1、score2、score3、score4作为所确定的孤立森林模型的输入,并利用无监督异常检测算法对各节点进行分类,得到每个节点的评估分值pred_score及评估标签label,即目标用户在每个业务场景类别中的初始评估结果。其中,若评估标签label为-1,则属于异常标签;若评估标签label为1,则属于正常标签。
步骤207、若目标用户在业务场景类别中的评估标签类型为异常标签,则将所述目标用户在所述业务场景类别中的评估分值调整为所述业务场景类别对应的第一异常风险分值,所述第一异常风险分值为所述业务场景类别的异常基准分值。
步骤208、若目标用户在业务场景类别中的评估标签类型为正常标签,则将所述业务场景类别的异常基准分值作为权重值,计算出所述目标用户在业务场景类别中的第二异常风险分值。
实施中,利用每个业务场景类别对应的孤立森林模型分别计算***操作次数、用户登录次数、敏感接口调用次数、敏感数据访问量、短间隔操作次数中一个或者多个的初始评估结果。根据初始评估结果,确定目标用户在每个业务场景类别中的评估标签,若业务场景类别对应的评估标签label为-1,则将其评估分值调整为异常基准分值,即该业务场景类别的第一异常风险分值。其中,异常基准分值为,根据每个业务场景类别的重要程度分别设定的,具体包括:***操作次数信息的异常基准分值为15,用户登录次数信息的异常基准分值为15,敏感接口调用次数信息的异常基准分值为25,敏感数据访问量信息的异常基准分值为25,短间隔操作次数信息的异常基准分值为20。
相应地,若目标用户在某一业务场景类别中的评估标签label为1,则将该业务场景类别的评估分值pred_score作为权重值,并与对应的异常基准分值相乘,得到目标用户在该业务场景类别中的第二异常风险分值base_score。例如,如图3c所示,用户22717在***操作次数的业务场景类型下,评估标签label为-1,即异常标签,调整其异常风险分值base_score为业务场景类别对应的异常基准分值15;用户18142在***操作次数的业务场景类型下,评估标签label为1,即正常标签,确定其异常风险分值base_score为0.457169 *15=6.857535。最后,针对目标用户,累加所涉及业务场景类型的异常风险分值,即sum_base_score(x)=Σbase_score,x为评估标签,满足如下公式:
步骤209、根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
为了说明步骤209的具体实施方式,作为一种优选实施例,步骤209具体可以包括:根据目标用户对应的业务场景类别数量,确定用于修正目标用户异常检测结果的业务场景级联系数,根据目标用户在前操作时间与当前时间的间隔时长,确定用于修正目标用户异常检测结果的衰减系数,将所述业务场景级联系数和/或衰减系数作为权重系数,根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
实施中,设定用户触发的业务场景类别数量为n,定义业务场景级联系数j满足如下公式:
进一步,根据目标用户在前操作时间与当前时间的间隔时长Δt及冷却系数c,确定衰减系数为。其中,冷却系数c值的大小与需要冷却时间负相关,即c值设定越大,冷却时间越短,根据实际应用场景的需求,可以设定冷却系数c值为0.3,此处不对冷却系数c值的大小进行具体限定。例如,设定目标用户操作的所有业务场景类型中的最后一次的操作时间为异常发生的时间,定义冷却分值cool_score(目标用户的异常检测结果),若异常发生的时间间隔越长,该异常可能造成的影响越小,即异常的重要性随时间衰减,因此,利用衰减系数修正目标用户异常检测结果,有助于区分异常程度,进一步提升检测的准确性。
异常发生的时间越早,则该目标用户造成的影响越小,受到的关注也相应降低,满足如下公式:
此外,根据实际应用场景的需求,根据目标用户两日的冷却分值cool_score(目标用户的异常检测结果),利用上述贝叶斯平均算法进一步确定目标用户最终的异常检测结果。例如,定义浮动分值(用户最终的异常检测结果)risk_score满足如下公式:
其中,cool_score_percent表示目标用户当日冷却分值在两日冷却分值之和中的占比, cool_score_percent_avg表示全量用户当日冷却分值在两日冷却分值之和中的占比值的均值, cool_score_ avg表示全量用户当日冷却分值的均值,计算公式参照公式(1)~(3),此处不再赘述。综上,定义风险评分的阈值为0.7,当cool_score或者risk_score大于0.7时,针对该目标用户进行异常报警,此处不对该阈值大小进行具体限定。
可见,本实施例利用贝叶斯平均算法,对不同业务场景类别、不同时间周期内的初始单维行为特征数据进行贝叶斯平均值转换,并结合用户行为日志数据横向和纵向两个方向的变化特征,进一步基于无监督算法的孤立森林模型确定目标用户的异常情况。此外,基于无监督算法的异常检测,孤立森林模型不需要标签数据训练,且贝叶斯平均值加工过程简单,效率高,能够应用于***实时在线检测,及时发现目标用户的异常情况,其中,通过结合各分值场景定义的异常基准分值、级联系数和冷却系数、浮动分值构建用户评分体系,准确、客观、全面地体现目标用户的异常程度,从而及时处理重要的异常情况,提高响应速度,避免造成损失。
通过应用本实施例的技术方案,获取web***的用户行为日志数据,根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的单维行为特征数据,根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,贝叶斯平均值是根据目标用户的单维行为特征数据确定的,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果,根据所述初始评估结果中的评估分值和评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果,与现有根据不同的检测数据类型,应用不同的异常检测算法的技术方案相比,本实施例基于目标用户在多个业务场景类别,多个不同时间周期的单维行为特征数据对目标用户进行检测,能够有效避免现有异常检测方法中检测周期内不同时刻波动区间差别较大,导致误报率高、准确率低的技术问题,从而在降低用户异常检测误报率的同时,提升用户异常检测的准确性。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种用户异常检测装置,如图4所示,该装置包括:数据获取模块41、特征处理模块42、初始评估模块43、异常评估模块44。
数据获取模块41,可以用于获取web***的用户行为日志数据。
特征处理模块42,可以用于根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的。
初始评估模块43,可以用于根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果。
异常评估模块44,可以用于根据所述初始评估结果中的评估分值和评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
在具体的应用场景中,如图5所示,特征处理模块42包括场景数据分组单元421、周期数据获取单元422、贝叶斯平均计算单元423。
场景数据分组单元421,可以用于对用户行为日志数据进行业务场景类别分组,得到目标用户标识对应的多个业务场景类别的用户行为日志数据。
在实际应用场景中,所述多个业务场景类别的用户行为日志数据包括:***操作次数信息、用户登录次数信息、敏感接口调用次数信息、敏感数据访问量信息、短间隔操作次数信息中的一个或者多个。
周期数据获取单元422,可以用于针对每个业务场景类别,分别得到目标用户标识对应的多个不同时间周期内的第一初始单维行为特征数据。
贝叶斯平均计算单元423,可以用于根据所述每个业务场景类别对应的所述第一初始单维行为特征数据,利用贝叶斯平均算法计算得到目标用户在每个时间周期内的贝叶斯平均值。
在实际应用场景中,贝叶斯平均计算单元423,具体可以用于:将当前时间周期内目标用户的第一初始单维行为特征数据在相邻时间周期内的初始单维行为特征数据中的占比,作为第二初始单维行为特征数据;根据当前周期内目标用户的第二初始单维行为特征数据,通过均值处理得到相对全量用户的第三初始单维行为特征数据;根据当前周期内全量用户的第一初始单维行为特征数据,通过均值处理得到相对全量用户的第四初始单维行为特征数据;根据所述第一初始单维行为特征数据、第二初始单维行为特征数据、第三初始单维行为特征数据和第四初始单维行为特征数据,确定目标用户在每个时间周期内的贝叶斯平均值。
在具体的应用场景中,初始评估模块43包括确定单元431、初始评估单元432。
确定单元431,可以用于确定与所述多个业务场景类别对应的多个孤立森林模型。
初始评估单元432,可以用于利用每个业务场景类别对应的孤立森林模型,根据目标用户在多个不同时间周期内的贝叶斯平均值,得到目标用户在每个业务场景类别中的初始评估结果。
在具体的应用场景中,异常评估模块44包括第一异常分值确定单元441、第二异常分值确定单元442、异常结果确定单元443。
第一异常分值确定单元441,可以用于若目标用户在业务场景类别中的评估标签类型为异常标签,则将所述目标用户在所述业务场景类别中的评估分值调整为所述业务场景类别对应的第一异常风险分值,所述第一异常风险分值为所述业务场景类别的异常基准分值。
第二异常分值确定单元442,可以用于若目标用户在业务场景类别中的评估标签类型为正常标签,则将所述业务场景类别的异常基准分值作为权重值,计算出所述目标用户在业务场景类别中的第二异常风险分值。
异常结果确定单元443,可以用于根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
在具体的应用场景中,异常结果确定单元443,具体可以用于:根据目标用户对应的业务场景类别数量,确定用于修正目标用户异常检测结果的业务场景级联系数;根据目标用户在前操作时间与当前时间的间隔时长,确定用于修正目标用户异常检测结果的衰减系数;将所述业务场景级联系数和/或衰减系数作为权重系数,根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
需要说明的是,本申请实施例提供的一种基于无监督算法的用户异常检测装置所涉及各功能单元的其他相应描述,可以参考图1和图2中的对应描述,在此不再赘述。
基于上述如图1和图2所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1和图2所示的基于无监督算法的用户异常检测方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1、图2所示的方法,以及图4所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1和图2所示的基于无监督算法的用户异常检测方法。
可选的,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的计算机设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本存储介质中还可以包括操作***、网络通信模块。操作***是管理计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本申请的技术方案,与现有根据不同的检测数据类型,应用不同的异常检测算法的技术方案相比,本实施例基于目标用户在多个业务场景类别,多个不同时间周期的单维行为特征数据对目标用户进行检测,能够有效避免现有异常检测方法中检测周期内不同时刻波动区间差别较大,导致误报率高、准确率低的技术问题,从而在降低用户异常检测误报率的同时,提升用户异常检测的准确性。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种基于无监督算法的用户异常检测方法,其特征在于,包括:
获取web***的用户行为日志数据;
根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的;
根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在多个业务场景类别中的初始评估结果;
根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值的步骤,包括:
对用户行为日志数据进行业务场景类别分组,得到目标用户标识对应的多个业务场景类别的用户行为日志数据;
针对每个业务场景类别,分别得到目标用户标识对应的多个不同时间周期内的第一初始单维行为特征数据;
根据所述每个业务场景类别对应的所述第一初始单维行为特征数据,利用贝叶斯平均算法计算得到目标用户在每个时间周期内的贝叶斯平均值。
3.根据权利要求2所述的方法,其特征在于,所述多个业务场景类别的用户行为日志数据类型包括:***操作次数信息、用户登录次数信息、敏感接口调用次数信息、敏感数据访问量信息、短间隔操作次数信息中的一个或者多个。
4.根据权利要求2所述的方法,其特征在于,所述根据所述每个业务场景类别对应的所述第一初始单维行为特征数据,利用贝叶斯平均算法计算得到目标用户在每个时间周期内的贝叶斯平均值步骤,包括:
将当前时间周期内目标用户的第一初始单维行为特征数据在相邻时间周期内的初始单维行为特征数据中的占比,作为第二初始单维行为特征数据;
根据当前周期内目标用户的第二初始单维行为特征数据,通过均值处理得到相对全量用户的第三初始单维行为特征数据;
根据当前周期内全量用户的第一初始单维行为特征数据,通过均值处理得到相对全量用户的第四初始单维行为特征数据;
根据所述第一初始单维行为特征数据、第二初始单维行为特征数据、第三初始单维行为特征数据和第四初始单维行为特征数据,确定目标用户在每个时间周期内的贝叶斯平均值。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果步骤,包括:
确定与所述多个业务场景类别对应的多个孤立森林模型;
利用每个业务场景类别对应的孤立森林模型,根据目标用户在多个不同时间周期内的贝叶斯平均值,得到目标用户在每个业务场景类别中的初始评估结果。
6.根据权利要求1所述的方法,其特征在于,根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果步骤,包括:
若目标用户在业务场景类别中的评估标签类型为异常标签,则将所述目标用户在所述业务场景类别中的评估分值调整为所述业务场景类别对应的第一异常风险分值,所述第一异常风险分值为所述业务场景类别的异常基准分值;
若目标用户在业务场景类别中的评估标签类型为正常标签,则将所述业务场景类别的异常基准分值作为权重值,计算出所述目标用户在业务场景类别中的第二异常风险分值;
根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果步骤,包括:
根据目标用户对应的业务场景类别数量,确定用于修正目标用户异常检测结果的业务场景级联系数;
根据目标用户在前操作时间与当前时间的间隔时长,确定用于修正目标用户异常检测结果的衰减系数;
将所述业务场景级联系数和/或衰减系数作为权重系数,根据所述第一异常风险分值和第二异常风险分值,确定目标用户的异常检测结果。
8.一种基于无监督算法的用户异常检测装置,其特征在于,该装置包括:
数据获取模块,用于获取web***的用户行为日志数据;
特征处理模块,用于根据所述用户行为日志数据对应的多个业务场景类别,分别计算出目标用户在多个不同时间周期内的贝叶斯平均值,所述贝叶斯平均值是根据目标用户的单维行为特征数据确定的;
初始评估模块,用于根据目标用户在多个业务场景类别,以及多个不同时间周期内的贝叶斯平均值,利用不同的无监督模型分别得到目标用户在每个业务场景类别中的初始评估结果;
异常评估模块,用于根据所述初始评估结果中的评估标签类型,通过对所述初始评估结果中的评估分值进行调整,得到目标用户的异常检测结果。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至7中任一项所述的基于无监督算法的用户异常检测方法。
10.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7中任一项所述的基于无监督算法的用户异常检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111410811.5A CN113837325B (zh) | 2021-11-25 | 2021-11-25 | 基于无监督算法的用户异常检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111410811.5A CN113837325B (zh) | 2021-11-25 | 2021-11-25 | 基于无监督算法的用户异常检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113837325A true CN113837325A (zh) | 2021-12-24 |
CN113837325B CN113837325B (zh) | 2022-03-01 |
Family
ID=78971329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111410811.5A Active CN113837325B (zh) | 2021-11-25 | 2021-11-25 | 基于无监督算法的用户异常检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113837325B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338451A (zh) * | 2013-06-24 | 2013-10-02 | 西安电子科技大学 | 一种无线传感器网络中分布式的恶意节点检测方法 |
US20160078365A1 (en) * | 2014-03-21 | 2016-03-17 | Philippe Baumard | Autonomous detection of incongruous behaviors |
CN107888602A (zh) * | 2017-11-23 | 2018-04-06 | 北京白山耘科技有限公司 | 一种检测异常用户的方法及装置 |
CN110751231A (zh) * | 2019-10-30 | 2020-02-04 | 上海观安信息技术股份有限公司 | 一种基于无监督算法的养***码检测方法及*** |
US20200333777A1 (en) * | 2016-09-27 | 2020-10-22 | Tokyo Electron Limited | Abnormality detection method and abnormality detection apparatus |
CN112182219A (zh) * | 2020-10-09 | 2021-01-05 | 杭州电子科技大学 | 一种基于日志语义分析的在线服务异常检测方法 |
CN113537321A (zh) * | 2021-07-01 | 2021-10-22 | 汕头大学 | 一种基于孤立森林和x均值的网络流量异常检测方法 |
-
2021
- 2021-11-25 CN CN202111410811.5A patent/CN113837325B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338451A (zh) * | 2013-06-24 | 2013-10-02 | 西安电子科技大学 | 一种无线传感器网络中分布式的恶意节点检测方法 |
US20160078365A1 (en) * | 2014-03-21 | 2016-03-17 | Philippe Baumard | Autonomous detection of incongruous behaviors |
US20200333777A1 (en) * | 2016-09-27 | 2020-10-22 | Tokyo Electron Limited | Abnormality detection method and abnormality detection apparatus |
CN107888602A (zh) * | 2017-11-23 | 2018-04-06 | 北京白山耘科技有限公司 | 一种检测异常用户的方法及装置 |
CN110751231A (zh) * | 2019-10-30 | 2020-02-04 | 上海观安信息技术股份有限公司 | 一种基于无监督算法的养***码检测方法及*** |
CN112182219A (zh) * | 2020-10-09 | 2021-01-05 | 杭州电子科技大学 | 一种基于日志语义分析的在线服务异常检测方法 |
CN113537321A (zh) * | 2021-07-01 | 2021-10-22 | 汕头大学 | 一种基于孤立森林和x均值的网络流量异常检测方法 |
Non-Patent Citations (2)
Title |
---|
YUXIANG ZHANG等: "Hyperspectral Anomaly Detection With Otsu-Based Isolation Forest", 《IEEE JOURNAL OF SELECTED TOPICS IN APPLIED EARTH OBSERVATIONS AND REMOTE SENSING》 * |
莫凡等: "基于机器学习的用户实体行为分析技术在账号异常检测中的应用", 《通信技术》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113837325B (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109558951B (zh) | 一种欺诈账号检测方法、装置及其存储介质 | |
US9800601B2 (en) | Systems and methods for detecting and scoring anomalies | |
US8676818B2 (en) | Dynamic storage and retrieval of process graphs representative of business processes and extraction of formal process models therefrom | |
US11436617B2 (en) | Behavior pattern search system and behavior pattern search method | |
US8619084B2 (en) | Dynamic adaptive process discovery and compliance | |
CN111475680A (zh) | 检测异常高密子图的方法、装置、设备及存储介质 | |
CN106656996B (zh) | 一种信息安全风险评估方法 | |
JP2021533474A (ja) | ノード分類方法、モデル訓練方法並びに、その装置、機器及びコンピュータプログラム | |
CN110807488B (zh) | 一种基于用户对等组的异常检测方法及装置 | |
CN108053087A (zh) | 反洗钱监测方法、设备及计算机可读存储介质 | |
CN112435137B (zh) | 一种基于社团挖掘的欺诈信息检测方法及*** | |
CN113378899B (zh) | 非正常账号识别方法、装置、设备和存储介质 | |
CN108961019B (zh) | 一种用户账户的检测方法和装置 | |
US20220156795A1 (en) | Segment content optimization delivery system and method | |
CN109558298B (zh) | 基于深度学习模型的告警执行频率优化方法及相关设备 | |
CN112163096A (zh) | 一种恶意团体确定方法、装置、电子设备及存储介质 | |
CN111092880B (zh) | 一种网络流量数据提取方法及装置 | |
CN108898308A (zh) | 风险评估方法、装置、服务器及可读存储介质 | |
CN108076032B (zh) | 一种异常行为用户识别方法及装置 | |
CN114117421A (zh) | 用户访问行为的异常检测方法及装置 | |
CN113837325B (zh) | 基于无监督算法的用户异常检测方法及装置 | |
CN111783883A (zh) | 一种异常数据的检测方法及装置 | |
CN111723338A (zh) | 一种检测方法和检测设备 | |
CN113449112A (zh) | 异常寄递行为识别方法、装置、计算机设备及存储介质 | |
CN111382345B (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 |