CN113919415A - 一种基于无监督算法的异常群组检测方法 - Google Patents
一种基于无监督算法的异常群组检测方法 Download PDFInfo
- Publication number
- CN113919415A CN113919415A CN202111052393.7A CN202111052393A CN113919415A CN 113919415 A CN113919415 A CN 113919415A CN 202111052393 A CN202111052393 A CN 202111052393A CN 113919415 A CN113919415 A CN 113919415A
- Authority
- CN
- China
- Prior art keywords
- group
- aggregation
- users
- cluster
- user
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于无监督算法的异常群组检测方法,包括以下步骤:S1:数据预处理,特征筛选;S2:计算用户相似度;S3:根据用户相似度,使用无监督算法聚类,形成群组;S4:使用频繁集挖掘算法分析群组聚集原因和聚集程度;S5:对聚类形成的群组评分,挑选风险群组。本发明在建模之前不需要有大量的有标签样本,只需要少量有标签样本或基本的业务经验即可。标签样本往往需要大量的人工标注工作,甚至在有些业务场景中无法获取较多的标签样本,本发明在节省人工标注成本的同时丰富了模型适用的业务场景。
Description
技术领域
本发明涉及电子信息技术领域,特别涉及一种基于无监督算法的异常群组检测方法。
背景技术
随着社会的高速发展,互联网已经渗透到各行各业中,影响着每一个人。正所谓有阳光的地放就有阴影。人们在享受互联网带来的舒适、便捷生活的同时却也面临着各种各样的风险。在互联网快速发展的行业如:电商,金融,支付等风险尤为突出。套利、刷单、洗钱、虚假注册等词语对大众来说已经不再陌生。黑产攻击手段的多样化给风险识别带来了困难,传统的黑产对抗方法主要分为三种:专家规则,有监督模型,黑白名单机制。专家规则具有较高的准确率,规则变更灵活,检测效果显著等优点,但是需要业务人员有很强的业务经验,而且覆盖有限,规则基本都是基于对历史风险事件的总结和归纳,无法做到对新风险类型的提前感知。有监督模型使用较为广泛,但同样无法应对不断变化的黑产攻击手段,只能被动地应对欺诈,而且需要大量的准确的样本标签,结果缺乏可解释性。黑白名单机制的特点是准确率高召回率低,覆盖样本量较少。
发明内容
本发明要解决的技术问题是克服现有技术的缺陷,提供一种基于无监督算法的异常群组检测方法。
本发明提供了如下的技术方案:
本发明提供一种基于无监督算法的异常群组检测方法,包括以下步骤:
S1:数据预处理,特征筛选;
S2:计算用户相似度;
S3:根据用户相似度,使用无监督算法聚类,形成群组;
S4:使用频繁集挖掘算法分析群组聚集原因和聚集程度;
S5:对聚类形成的群组评分,挑选风险群组。
上述的步骤S1,包含:
S1.1:整合用户的交易数据和操作数据,根据业务经验选择相关入模特征。
上述的步骤S2,包含:
S2.1:基于步骤S1.1中确定的入模特征特征,根据业务经验或少部分带标签样本训练有监督模型,确定不同特征的权重;
S2.2:基于不同特征的权重,利用Jaccard系数计算用户间的相似度,形成用户相似度矩阵。
上述的步骤S3,包含:
S3.1:根据步骤S2.2中计算的用户相似度矩阵,利用自底向上的层次聚类算法对用户聚类,形成群组。
上述的步骤S4,包含:
S4.1:根据步骤S3.1中得到的用户群组,使用FP-growth频繁集挖掘算法,分析每个群组的聚集原因和聚集度。
上述的步骤S5,包含:
S5.1:根据步骤S4.1中得到的群组聚集度,给群组一个聚集度评分;
S5.2:根据群组内用户的聚集特征异常情况,如:用户黑名单占比,设备黑名单占比等,给群组一个风险程度评分;
S5.3:将聚集度评分和风险程度评分结合,给群组一个综合的风险评分。
与现有技术相比,本发明的有益效果如下:
本发明在建模之前不需要有大量的有标签样本,只需要少量有标签样本或基本的业务经验即可。标签样本往往需要大量的人工标注工作,甚至在有些业务场景中无法获取较多的标签样本,本发明在节省人工标注成本的同时丰富了模型适用的业务场景;
同时,本发明所采用的无监督算法,由于没有依赖已经发现的黑样本标签,能够检测黑产不断演变的新型攻击方式,在与黑产的攻防战中能够及时发现新的作案模式,做到早发现早处置;
最后,本发明使用频繁集挖掘算法分析群组聚集原因和聚集程度,这样每个异常群组都有对应的风险描述,增加了模型的可解释性,方便业务人员对群组进行认定和处置,此外可以将一些高风险群组的预警原因提炼成规则因子,放到规则引擎中。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是本发明的系统总体示意图;
图2是本发明的层次聚类示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。其中附图中相同的标号全部指的是相同的部件。
实施例1
如图1-2,本发明提供一种基于无监督算法的异常群组检测方法,首先整合用户的交易数据和操作数据进行数据预处理,根据业务经验选择相关入模特征,然后确定不同特征的权重和样本之间的相似性的度量标准,使用无监督聚类算法对用户进行分组。接着使用FP-growth频繁集挖掘算法,分析每个群组的聚集原因和聚集度。最后结合每个群组的聚集度和风险程度,给群组一个综合的风险评分,风险评分越高表示群组的风险越大。
图1是根据实例的实施过程所展示的基于无监督算法的异常群组检测方法的流程图,参照图1所示,该方法包括如下步骤:
S1:数据预处理,特征筛选;
S1.1:整合用户的交易数据和操作数据,根据业务经验选择相关入模特征。
具体的,整合用户的交易数据如:转账,消费等,操作数据如:登录,绑卡等,对整合后的数据进行预处理,删除缺失值和唯一值占比较高的特征。根据业务经验选择入模特征,在本实施例中使用的特征有:交易时间,交易 IP,操作的经纬度,交易金额,设备型号,手机归属等46个特征。
S2:计算用户相似度;
S2.1:基于步骤S1.1中确定的入模特征特征,根据业务经验或少部分带标签样本训练有监督模型,确定不同特征的权重;
具体的,在步骤S1.1中我们确定了46个入模特征,为了更好的衡量两个用户的相似度,必须对这些特征赋予不同的权重,可以采取根据业务经验或者训练一个有监督模型的方法。在本实施例中我们使用一小部分有标签样本训练了一个LightGBM有监督模型,根据模型输出的特征重要性来确定原特征的重要性,并做归一化处理。
S2.2:基于不同特征的权重,利用Euclidean距离和Jaccard距离计算用户间的相似度,形成用户相似度矩阵。
具体的,在步骤S2.1中已经得到了归一化后不同特征的重要性,接下来考虑如何量化两个用户的相似性。本实施例的46个业务特征可以分为2类:数值特征和类别特征。对于数值特征计算用户之间的Euclidean距离,得到两个用户A,B间的距离为Distince1,计算公式如下:
equal函数用于判断两个值是否相等,相等值返回1,否则返回0。
最终,两个用户间的距离取Distince1和Distince2的平均值,计算公式如下:
这样就可以计算任意两个用户间的距离,形成用户相似度矩阵 Dis_Matrix。
S3:根据用户相似度,使用无监督算法聚类,形成群组;
S3.1:根据步骤S2.2中计算的用户相似度矩阵,利用自底向上的层次聚类算法对用户聚类,形成群组。
具体的,层次聚类算法可以分为自底向上的层次聚类算法和自顶向下的层次聚类算法。自底向上是把小的cluster合并聚集形成大的cluster,自顶向下则是将大的cluster进行分隔形成小的cluster。在本实施例中我们采用自底向上的层次聚类算法,刚开始将每个用户看做单独的cluster,每次迭代根据相似度矩阵Dis_Matrix找到距离最近的两个cluster进行合并,形成一个大的cluster,直到合并为一个cluster或者不能满足合并的最小距离阈值,整个聚类过程结束。这样每个用户都会被分到一个cluster,如图2所示。刚开始每个用户每个用户独自作为一类,他们之间的距离就是这两个用户之间的距离。随着合并的进行,有些cluster可能包含多个用户,这时衡量两个 cluster之间的距离有很多方法,例如:最小距离,最大距离,平均距离等。在我们的实施例中实验结果表明用平均距离效果最好。关于平均距离阈值的选择,没有唯一的标准,应该根据具体业务场景而定。在本实施例中我们是先选择小批量数据尝试不同的阈值进行聚类,观察聚类结果的聚集度变化,最后确定距离阈值为0.6。
S4:使用频繁集挖掘算法分析群组聚集原因和聚集程度;
S4.1:根据步骤S3.1中得到的用户群组,使用FP-growth频繁集挖掘算法,分析每个群组的聚集原因和聚集度。
具体的,经过步骤S3.1我们已经得到了很多的用户群组,每个用户群组中包含多个用户,一般来说群组大小和风险程度成正比,在本实施例中群组大小的阈值取值为10,即只考虑群组中用户数大于等于10的群组。为了找到每个群组中用户的聚集原因,我们使用FP-growth频繁项集挖掘算法。
FP-growth算法采用分治策略,首先,将代表频繁项集的数据库(每个群组的用户信息)压缩到一颗频繁模式树(FP树),该树仍保留项集的关联信息。然后,把这种压缩后的数据库划分成一组条件数据库,每个数据库关联一个频繁项或模式段,并分别挖掘每个条件数据库。对于每个“模式片段”,只需要考察它相关联数据集。因此,随着被考察的模式的“增长”,这种方法可以显著地压缩被搜索的数据集的大小。
FP-growth算法针对每个群组的具体执行步骤如下:
1)扫描一次群组中的用户特征信息,找出频繁1项集合,记为L,并把它们按照支持度计数进行降序排列,本实施例中最小支持度计数为3;
2)基于步骤1)中的L,再次扫描群组用户信息,构造表示群组信息项集关联的FP树;
3)在FP上递归地找出所有频繁项集;
4)最后在所有频繁项集中产生强关联规则,即用户特征的关联信息。
S5:对聚类形成的群组评分,挑选风险群组;
S5.1:根据步骤S4.1中得到的群组聚集度,给群组一个聚集度评分;
具体的,在步骤S4中我们使用频繁集挖掘算法得到每个群组的频繁项集和对应的支持度。利用每个群组最大的频繁项集L和最大频繁项集的支持度S 计算每个群组的聚集度评分Score1,计算公式如下:
其中size(G)表示群组G的大小,size(features)表示特征数,在本实施例中取46。α用来控制支持度计数S和频繁项集大小L对聚集度分值的影响,本实施例中α取值为0.5。
S5.2:根据群组内用户的聚集特征异常情况,如:用户黑名单占比,设备黑名单占比等,给群组一个风险程度评分;
具体的,将群组中用户的特征信息和已知的黑名单库对比,计算命中黑名单的用户比例。风控场景中的黑名单库有手机号黑名单,设备黑名单,IP 黑名单等,在本实施例中使用手机号黑名单、设备ID黑名单和设备型号黑名单维度计算群组的风险评分,计算公式如下:
其中,PhoneNum,DeviceNnum,ModelNum分别表示群组中手机号数数量,设备数量,设备型号数量,BlackPhoneNum,BlackDeviceNum, BlackModelNum则分别表示命中黑名单的手机号数量,设备数量和设备型号数量。
S5.3:将聚集度评分和风险程度评分结合,给群组一个综合的风险评分。
具体的,根据步骤S5.1中得到的聚集度评分Score1和步骤S5.2中得到风险度评分Score2,计算群组的综合风险评分,计算公式如下:
Score=(Scor1+Score2)*50
其中Scor1和Scor2分别为群组的聚集度评分和风险度评分, Score的分值范围为0到100。
挑选出群组风险分值大于一定阈值的群组或取前TOP N的群组,作为风险群组输出。在本实施例中选取群组风险分值大于85分的为高风险群组,对这些群组中的用户直接做拦截或加黑处置,其余中低风险群组则有人工进行复核审查。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (1)
1.一种基于无监督算法的异常群组检测方法,其特征在于,包括以下步骤:
S1:数据预处理,特征筛选;
S2:计算用户相似度;
S3:根据用户相似度,使用无监督算法聚类,形成群组;
S4:使用频繁集挖掘算法分析群组聚集原因和聚集程度;
S5:对聚类形成的群组评分,挑选风险群组。
上述的步骤S1,包含:
S1.1:整合用户的交易数据和操作数据,根据业务经验选择相关入模特征。
上述的步骤S2,包含:
S2.1:基于步骤S1.1中确定的入模特征特征,根据业务经验或少部分带标签样本训练有监督模型,确定不同特征的权重;
S2.2:基于不同特征的权重,利用Jaccard系数计算用户间的相似度,形成用户相似度矩阵。
上述的步骤S3,包含:
S3.1:根据步骤S2.2中计算的用户相似度矩阵,利用自底向上的层次聚类算法对用户聚类,形成群组。
上述的步骤S4,包含:
S4.1:根据步骤S3.1中得到的用户群组,使用FP-growth频繁集挖掘算法,分析每个群组的聚集原因和聚集度。
上述的步骤S5,包含:
S5.1:根据步骤S4.1中得到的群组聚集度,给群组一个聚集度评分;
S5.2:根据群组内用户的聚集特征异常情况,如:用户黑名单占比,设备黑名单占比等,给群组一个风险程度评分;
S5.3:将聚集度评分和风险程度评分结合,给群组一个综合的风险评分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111052393.7A CN113919415A (zh) | 2021-09-08 | 2021-09-08 | 一种基于无监督算法的异常群组检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111052393.7A CN113919415A (zh) | 2021-09-08 | 2021-09-08 | 一种基于无监督算法的异常群组检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113919415A true CN113919415A (zh) | 2022-01-11 |
Family
ID=79234485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111052393.7A Pending CN113919415A (zh) | 2021-09-08 | 2021-09-08 | 一种基于无监督算法的异常群组检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113919415A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363082A (zh) * | 2022-01-12 | 2022-04-15 | 平安普惠企业管理有限公司 | 网络攻击检测方法、装置、设备及计算机可读存储介质 |
-
2021
- 2021-09-08 CN CN202111052393.7A patent/CN113919415A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363082A (zh) * | 2022-01-12 | 2022-04-15 | 平安普惠企业管理有限公司 | 网络攻击检测方法、装置、设备及计算机可读存储介质 |
CN114363082B (zh) * | 2022-01-12 | 2024-05-03 | 南昌首页科技股份有限公司 | 网络攻击检测方法、装置、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110223168B (zh) | 一种基于企业关系图谱的标签传播反欺诈检测方法及系统 | |
CN110245981B (zh) | 一种基于手机信令数据的人群类型识别方法 | |
CN111882446B (zh) | 一种基于图卷积网络的异常账户检测方法 | |
CN107294993B (zh) | 一种基于集成学习的web异常流量监测方法 | |
CN111614690B (zh) | 一种异常行为检测方法及装置 | |
CN102937951B (zh) | 建立ip地址分类模型的方法、对用户分类的方法及装置 | |
CN110213222A (zh) | 基于机器学习的网络入侵检测方法 | |
CN103853744B (zh) | 一种面向用户生成内容的欺骗性垃圾意见检测方法 | |
CN108268886B (zh) | 用于识别外挂操作的方法及系统 | |
CN115794803A (zh) | 一种基于大数据ai技术的工程审计问题监测方法与系统 | |
CN116384736A (zh) | 一种智慧城市的风险感知方法及系统 | |
CN113919415A (zh) | 一种基于无监督算法的异常群组检测方法 | |
CN111612531B (zh) | 一种点击欺诈的检测方法及系统 | |
CN111831881B (zh) | 一种基于网站流量日志数据与优化谱聚类算法的恶意爬虫检测方法 | |
CN113254580A (zh) | 一种特殊群体搜索方法及系统 | |
CN113343123A (zh) | 一种生成对抗多关系图网络的训练方法和检测方法 | |
CN115115369A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN105930430A (zh) | 一种基于非累积属性的实时欺诈检测方法及装置 | |
CN115842645A (zh) | 基于umap-rf的网络攻击流量检测方法、装置及可读存储介质 | |
CN115392351A (zh) | 风险用户识别方法、装置、电子设备及存储介质 | |
CN114189545A (zh) | 一种互联网用户行为大数据分析方法及系统 | |
CN114860903A (zh) | 一种面向网络安全领域的事件抽取、分类和融合方法 | |
CN110278189B (zh) | 一种基于网络流量特征权重图谱的入侵检测方法 | |
CN113852612A (zh) | 一种基于随机森林的网络入侵检测方法 | |
CN111652734B (zh) | 基于区块链和大数据的金融信息管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |