一种社群挖掘方法、装置、设备及存储介质转让专利

申请号 : CN202210643187.1

文献号 : CN114741433B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘博文孙悦蔡准郭晓鹏

申请人 : 北京芯盾时代科技有限公司

摘要 :

本公开提供了一种社群挖掘方法、装置、设备及存储介质,涉及数据挖掘技术领域,方法主要包括:获取多条交易数据,交易数据用于记录用户之间的交易行为,多条交易数据包括标注数据;构建多条交易数据对应的网络拓扑图,网络拓扑图的节点为用户,网络拓扑图中连接两个节点的边表示用户之间存在交易行为;根据网络拓扑图,生成每条交易数据对应特征的特征向量;根据特征向量,搜索标注数据所属的交易数据集,交易数据集包括标注数据和目标数据,目标数据包括与标注数据关联的交易数据;将满足预设条件的交易数据集确定为社群挖掘结果。本公开提供的一种社群挖掘方法、装置、设备及存储介质,可以提高社群挖掘的效率和准确率。

权利要求 :

1.一种社群挖掘方法,其特征在于,所述方法包括:获取多条交易数据,所述交易数据用于记录用户之间的交易行为,所述多条交易数据包括标注数据;

构建所述多条交易数据对应的网络拓扑图,所述网络拓扑图的节点为所述用户,所述网络拓扑图中连接两个节点的边表示用户之间存在交易行为;

根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量;

根据所述特征向量,搜索所述标注数据所属的交易数据集,所述交易数据集包括标注数据和目标数据,所述目标数据包括与标注数据关联的交易数据;

将满足预设条件的所述交易数据集确定为社群挖掘结果;

其中,所述构建所述多条交易数据对应的网络拓扑图,包括:构建所述多条交易数据对应的初始拓扑图,所述初始拓扑图的节点为所述用户,所述初始拓扑图中连接两个节点的边表示用户之间存在交易行为;

根据所述多条交易数据中的交易数量和交易频率,计算所述初始拓扑图中每条边的边权重,得到所述网络拓扑图;

其中,所述根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量,包括:根据所述边权重,对所述网络拓扑图进行概率游走,生成所述网络拓扑图对应的多条第一随机序列;

根据所述多条交易数据,对所述多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列;

根据向量生成模型和所述多条第二随机序列,生成所述网络拓扑图中每个节点对应特征的特征向量。

2.根据权利要求1所述的方法,其特征在于,所述根据所述特征向量,搜索所述标注数据所属的交易数据集,包括:对所述特征向量进行降维处理;

搜索与所述标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将所述目标特征向量对应的交易数据确定为所述目标数据;

根据所述标注数据与目标数据,组成所述交易数据集。

3.根据权利要求2所述的方法,其特征在于,所述搜索与所述标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,包括:构建进行降维处理后的所述特征向量对应的K维树;

根据所述K维树,搜索所述目标特征向量。

4.根据权利要求1所述的方法,其特征在于,所述将满足预设条件的所述交易数据集确定为社群挖掘结果,包括:判断所述交易数据集中的标注数据与目标数据对应的节点是否在同一个子网络拓扑图中;

判断结果为是,将所述交易数据集确定为所述社群挖掘结果。

5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:根据所述社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,对所述社群挖掘结果中的社群进行风险性排序,并输出风险性排序结果;

所述社群标注覆盖率包括社群内标注数据的占比;

所述社群目标覆盖率包括社群内目标数据的占比;

所述平均交易距离包括社群内标注数据到目标数据之间的最短距离和与社群内标注数据的比值;

所述时间偏移区间包括社群内数据触发时间与当前时间差值的平均值。

6.一种社群挖掘装置,其特征在于,所述装置包括:获取模块,用于获取多条交易数据,所述交易数据用于记录用户之间的交易行为,所述多条交易数据包括标注数据;

构建模块,用于构建所述多条交易数据对应的网络拓扑图,所述网络拓扑图的节点为所述用户,所述网络拓扑图中连接两个节点的边表示用户之间存在交易行为;

生成模块,用于根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量;

搜索模块,用于根据所述特征向量,搜索所述标注数据所属的交易数据集,所述交易数据集包括标注数据和目标数据,所述目标数据包括与标注数据关联的交易数据;

确定模块,用于将满足预设条件的所述交易数据集确定为社群挖掘结果;

其中,所述构建所述多条交易数据对应的网络拓扑图,包括:构建所述多条交易数据对应的初始拓扑图,所述初始拓扑图的节点为所述用户,所述初始拓扑图中连接两个节点的边表示用户之间存在交易行为;

根据所述多条交易数据中的交易数量和交易频率,计算所述初始拓扑图中每条边的边权重,得到所述网络拓扑图;

其中,所述根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量,包括:根据所述边权重,对所述网络拓扑图进行概率游走,生成所述网络拓扑图对应的多条第一随机序列;

根据所述多条交易数据,对所述多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列;

根据向量生成模型和所述多条第二随机序列,生成所述网络拓扑图中每个节点对应特征的特征向量。

7.一种电子设备,其特征在于,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1‑5中任一项所述的方法。

8.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1‑5中任一项所述的方法。

说明书 :

一种社群挖掘方法、装置、设备及存储介质

技术领域

[0001] 本公开涉及数据挖掘技术领域,尤其涉及一种社群挖掘方法、装置、设备及存储介质。

背景技术

[0002] 近年来,很多互联网企业的业务规模和用户规模均不断扩大,相应的,从这些业务中利用不法手段获取利益的用户也越来越多,且这些用户经常以社群的形式存在,为了避免此类社群造成的危害,需要从大量用户数据中挖掘出此类社群。
[0003] 现有技术一般采用人工审核或构建专家规则进行社群挖掘。然而,人工审核一方面会因为不同专家的识别标准不同,导致社群挖掘结果稳定性太差,另一方面会因为数据量太大,导致社群挖掘效率低下;另外,现阶段构建的专家规则单一且固定,难以适应如今的海量复杂数据,会导致社群挖掘结果的精确度不高。

发明内容

[0004] 本公开提供了一种社群挖掘方法、装置、设备及存储介质,以至少解决现有技术中存在的以上技术问题。
[0005] 根据本公开的第一方面,提供了一种社群挖掘方法,该方法主要包括:获取多条交易数据,所述交易数据用于记录用户之间的交易行为,所述多条交易数据包括标注数据;构建所述多条交易数据对应的网络拓扑图,所述网络拓扑图的节点为所述用户,所述网络拓扑图中连接两个节点的边表示用户之间存在交易行为;根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量;根据所述特征向量,搜索所述标注数据所属的交易数据集,所述交易数据集包括标注数据和目标数据,所述目标数据包括与标注数据关联的交易数据;将满足预设条件的所述交易数据集确定为社群挖掘结果。
[0006] 在一可实施方式中,所述构建所述多条交易数据对应的网络拓扑图,包括:构建所述多条交易数据对应的初始拓扑图,所述初始拓扑图的节点为所述用户,所述初始拓扑图中连接两个节点的边表示用户之间存在交易行为;根据所述多条交易数据中的交易数量和交易频率,计算所述初始拓扑图中每条边的边权重,得到所述网络拓扑图。
[0007] 在一可实施方式中,所述根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量,包括:根据所述边权重,对所述网络拓扑图进行概率游走,生成所述网络拓扑图对应的多条第一随机序列;根据所述多条交易数据,对所述多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列;根据向量生成模型和所述多条第二随机序列,生成所述网络拓扑图中每个节点对应特征的特征向量。
[0008] 在一可实施方式中,所述根据所述特征向量,搜索所述标注数据所属的交易数据集,包括:对所述特征向量进行降维处理;搜索与所述标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将所述目标特征向量对应的交易数据确定为所述目标数据;根据所述标注数据与目标数据,组成所述交易数据集。
[0009] 在一可实施方式中,所述搜索与所述标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,包括:构建进行降维处理后的所述特征向量对应的K维树;根据所述K维树,搜索所述目标特征向量。
[0010] 在一可实施方式中,所述将满足预设条件的所述交易数据集确定为社群挖掘结果,包括:判断所述交易数据集中的标注数据与目标数据对应的节点是否在同一个子网络拓扑图中;判断结果为是,将所述交易数据集确定为所述社群挖掘结果。
[0011] 在一可实施方式中,所述方法还包括:根据所述社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,对所述社群挖掘结果中的社群进行风险性排序,并输出风险性排序结果;所述社群标注覆盖率包括社群内标注数据的占比;所述社群目标覆盖率包括社群内目标数据的占比;所述平均交易距离包括社群内标注数据到目标数据之间的最短距离和与社群内标注数据的比值;所述时间偏移区间包括社群内数据触发时间与当前时间差值的平均值。
[0012] 根据本公开的第二方面,提供了一种社群挖掘装置,该装置主要包括:获取模块,用于获取多条交易数据,所述交易数据用于记录用户之间的交易行为,所述多条交易数据包括标注数据;构建模块,用于构建所述多条交易数据对应的网络拓扑图,所述网络拓扑图的节点为所述用户,所述网络拓扑图中连接两个节点的边表示用户之间存在交易行为;生成模块,用于根据所述网络拓扑图,生成每条所述交易数据对应特征的特征向量;搜索模块,用于根据所述特征向量,搜索所述标注数据所属的交易数据集,所述交易数据集包括标注数据和目标数据,所述目标数据包括与标注数据关联的交易数据;确定模块,用于将满足预设条件的所述交易数据集确定为社群挖掘结果。
[0013] 根据本公开的第三方面,提供了一种电子设备,包括:
[0014] 至少一个处理器;以及
[0015] 与所述至少一个处理器通信连接的存储器;其中,
[0016] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开所述的方法。
[0017] 根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开所述的方法。
[0018] 本公开的一种社群挖掘方法、装置、设备及存储介质,首先构建多条交易数据对应的网络拓扑图,之后根据网络拓扑图,生成每条交易数据对应特征的特征向量,再根据特征向量,搜索标注数据所属的交易数据集,最后将满足预设条件的交易数据集确定为社群挖掘结果,这样采用自动化社群挖掘机制,避免了专家的识别标准不同,导致社群挖掘结果稳定性太差,并提高了对大规模数据的识别效率;而且引入交易数据的多维度特征,使得生成的特征向量包含的特征信息更全面,从而提高了社群挖掘的准确性;另外,对社群挖掘结果进行风险性排序,可以衡量各个社群可能带来的风险程度,使社群挖掘结果更加清晰直观。
[0019] 应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

[0020] 通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
[0021] 在附图中,相同或对应的标号表示相同或对应的部分。
[0022] 图1示出了本公开第一实施例的一种社群挖掘方法的流程示意图;
[0023] 图2示出了本公开第一实施例的网络拓扑图的结构示意图;
[0024] 图3示出了本公开第三实施例的一种社群挖掘方法的流程示意图;
[0025] 图4示出了本公开第三实施例的第一随机序列;
[0026] 图5示出了本公开第四实施例的一种社群挖掘方法的流程示意图;
[0027] 图6示出了本公开第七实施例的一种社群挖掘方法的流程示意图;
[0028] 图7示出了本公开第八实施例的一种社群挖掘装置的结构示意图;
[0029] 图8示出了本公开实施例一种电子设备的组成结构示意图。

具体实施方式

[0030] 为使本公开的目的、特征、优点能够更加的明显和易懂,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而非全部实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0031] 图1示出了本公开第一实施例的一种社群挖掘方法的流程示意图,如图1所示,该方法主要包括:
[0032] 步骤S101,获取多条交易数据,交易数据用于记录用户之间的交易行为,多条交易数据包括标注数据。
[0033] 在本实施例中,首先获取多条交易数据,交易数据用于记录用户之间的交易行为,多条交易数据包括标注数据,标注数据为已经标注为特定类型数据的交易数据。具体地,一条交易数据包括用户的标识信息,例如身份证号、账号和卡号等,还包括用户之间的交易信息的流向、交易信息的大小和交易的时间等。需要强调的是,交易数据并非单指金融交易数据,而是泛指任何领域中用于记录用户之间交易行为的数据,例如在金融领域中,交易数据可以包括客户账号、交易金额、交易时间、交易类型和对方客户账号等,用户之间的交易行为包括交易金额由客户账号流向对方客户账号,标注数据可以为已经标注为经常进行欺诈操作的黑产帐号对应的交易数据;在互联网领域,交易数据可以包括媒体平台、流量大小、流量转移时间和对方媒体平台等,用户之间的交易行为包括流量从媒体平台流向对方媒体平台,标注数据可以为已经标注为经常发布广告的目标媒体平台对应的交易数据;在普通消费领域,交易数据可以包括消费账号、消费平台、消费资金和商户账号等,用户之间的交易行为包括消费资金从消费账号流向商户账号,标注数据为已经标注为经常退货的目标消费账号对应的交易数据。当然,交易数据还可以来自其他领域,本公开不对交易数据的所属的领域进行限定。
[0034] 步骤S102,构建多条交易数据对应的网络拓扑图,网络拓扑图的节点为用户,网络拓扑图中连接两个节点的边表示用户之间存在交易行为。
[0035] 在本实施例中,获取到多条交易数据之后,需要构建多条交易数据对应的网络拓扑图,其中,网络拓扑图的节点为用户,网络拓扑图中连接两个节点的边表示用户之间存在交易行为,用户可以用交易数据中用户的标识信息进行表征。以金融领域为例,如果一条交易数据包括客户账号、交易金额、交易时间、交易类型和对方客户账号,则网络拓扑图的节点可以为客户账号,网络拓扑图的边可以为客户账号之间的资金流向,如交易金额从客户账号流向对方客户账号。
[0036] 图2示出了本公开第一实施例的网络拓扑图的结构示意图,如图2所示,其中,A、B、C、D、E、F分别为网络拓扑图的节点,连接网络拓扑图的两个节点之间带箭头的线段为网络拓扑图的边,以金融领域为例,A、B、C、D、E、F可以为客户账号,网络拓扑图的边可以为客户账号之间的资金流向,例如资金从客户账号A流向客户账号B,或者资金从客户账号E流向客户账号F等。
[0037] 步骤S103,根据网络拓扑图,生成每条交易数据对应特征的特征向量。
[0038] 在本实施例中,构建得到网络拓扑图之后,需要根据网络拓扑图,生成每条交易数据对应特征的特征向量。具体地,网络拓扑图的节点为用户,该节点包括用户对应的交易数据中的特征,例如用户的标识信息等,根据网络拓扑图生成每个节点对应的特征向量,相当于生成每条交易数据对应特征的特征向量。
[0039] 在一可实施方式中,可以先对网络拓扑图进行随机游走,生成网络拓扑图节点的随机序列,然后将随机序列输入向量生成模型,例如Word2Vec模型和通用预训练模型(GPT,General Pre‑Training)等,生成网络拓扑图每个节点对应的特征向量。
[0040] 步骤S104,根据特征向量,搜索标注数据所属的交易数据集,交易数据集包括标注数据和目标数据,目标数据包括与标注数据关联的交易数据。
[0041] 在本实施例中,生成每条交易数据对应特征的特征向量之后,可以根据特征向量,搜索标注数据所属的交易数据集,其中,交易数据集包括标注数据和目标数据,目标数据包括与标注数据关联的交易数据。具体地,与标注数据关联的交易数据的特征向量与目标数据对应的特征向量的相似度较高。
[0042] 在一可实施方式中,可以利用特征向量之间的距离表征特征向量之间的相似度,特征向量之间的距离越近,则特征向量之间的相似度越高,反之则越低;计算标注数据对应的特征向量与其他交易数据对应的特征向量之间的距离,然后将距离在指定阈值范围内的其他交易数据确定为与标注数据关联的交易数据,即目标数据,并根据标注数据和目标数据,组成交易数据集。具体地,可以根据欧式距离或余弦相似度等计算特征向量之间的距离。
[0043] 步骤S105,将满足预设条件的交易数据集确定为社群挖掘结果。
[0044] 在本实施例中,需要将满足预设条件的交易数据集确定为社群挖掘结果。具体地,交易数据集包括标注数据和目标数据,即特征向量之间的距离比较短的交易数据,但还需要判断交易数据集中的这些数据是否可以聚合成社群,即交易数据集是否满足预设条件,只有满足预设条件的交易数据集才能被确定为社群。
[0045] 在一可实施方式中,可以根据网络拓扑图来确定交易数据集中的数据是否可以聚合成社群,首先找到交易数据集中的标注数据与目标数据在网络拓扑图中对应的节点,并判断标注数据与目标数据在网络拓扑图中对应的节点是否在一个子网络拓扑图中,判断结果为是,则交易数据集中的数据可以聚合成社群。
[0046] 在本公开第一实施例中,首先构建多条交易数据对应的网络拓扑图,之后根据网络拓扑图,生成每条交易数据对应特征的特征向量,再根据特征向量,搜索标注数据所属的交易数据集,最后将满足预设条件的交易数据集确定为社群挖掘结果,这样采用自动化社群挖掘机制,避免了专家的识别标准不同,导致社群挖掘结果稳定性太差,并提高了对大规模数据的识别效率。
[0047] 在本公开第二实施例中,构建多条交易数据对应的网络拓扑图,主要包括:
[0048] 构建多条交易数据对应的初始拓扑图,初始拓扑图的节点为用户,初始拓扑图中连接两个节点的边表示用户之间存在交易行为;根据多条交易数据中的交易数量和交易频率,计算初始拓扑图中每条边的边权重,得到网络拓扑图。
[0049] 在本实施例中,可以先以多条交易数据中的用户作为节点,用户之间的交易信息流向作为边,构建多条交易数据对应的初始拓扑图,然后根据多条交易数据中的交易数量和交易频率,计算初始拓扑图中每条边的边权重,从而得到网络拓扑图。具体地,交易数据中会包括交易数量和交易频率,以金融领域为例,交易数量可以为客户账号与对方客户账号之间的交易金额,交易频率可以为客户账号与对方客户账号之间的转账次数;以互联网领域为例,交易数量可以为媒体平台与对方媒体平台之间的流量大小,交易频率可以为媒体平台与对方媒体平台之间流量转移的次数;以普通消费领域为例,交易数量可以为消费账号流向商户账号的消费资金,交易数量可以为消费账号与商户账号之间的消费次数。
[0050] 在一可实施方式中,以金融领域为例,可以根据如下公式计算初始拓扑图中每条边的边权重: ,其中, 表示客户账号a与客户账号b节点之间边的边权重, 的阈值范围为(0,1], 为客户账号a节点所有转出总金额,为客户账号a转出给客户账号b的总金额, 为客户账号a节点所有转出的转账次数, 为客户账号a转出给客户账号b的转账次数。
[0051] 在本公开第二实施例中,通过为多条交易数据对应的初始拓扑图中的每条边添加边权重,得到网络拓扑图既考虑了用户之间的交易数量,又考虑了用户之间的交易频率,可以保证利用网络拓扑图生成的交易数据对应特征的特征向量更加准确,从而保证社群挖掘结果更加准确。
[0052] 图3示出了本公开第三实施例的一种社群挖掘方法的流程示意图,如图3所示,步骤S103主要包括:
[0053] 步骤S201,根据边权重,对网络拓扑图进行概率游走,生成网络拓扑图对应的多条第一随机序列。
[0054] 在本实施例中,首先根据边权重,对网络拓扑图进行概率游走,生成网络拓扑图对应的多条第一随机序列。具体地,可以利用随机游走模型,例如Node2Vec模型、Deepwalk模型和Line模型等,对网络拓扑图进行概率游走,从而生成多条第一随机序列。
[0055] 在一可实施方式中,将边权重作为访问下一个节点的概率,如给定当前节点v,则访问下一个节点x的概率为: ,
[0056] 其中, 表示下一个节点为节点x, 表示当前节点为节点v, 为连接当前节点v和下一个节点x的边的边权重, 表示两个节点有边相连。在对网络拓扑图进行游走时,将概率最高的下一个节点作为目标节点进行游走,从而生成更加准确的第一随机序列。
[0057] 在一可实施方式中,图4示出了本公开第三实施例的第一随机序列,第一随机序列由图2中的网络拓扑图游走生成,如图2和图4所示,例如,给定当前节点A,其下一个节点为节点B,节点B的下一个节点为节点E,节点E的下一个节点可以为节点F或节点C,其中节点C的下一个节点为节点B,那么以节点A为起始节点的第一随机序列分别为A→B→E→F和A→B→E→C→B。
[0058] 步骤S202,根据多条交易数据,对多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列。
[0059] 在本实施例中,生成的多条第一随机序列的每个节点只对应用户的标识信息这一个特征,无法全面的表征该节点对应的交易数据的全部信息,因此,需要根据多条交易数据,对多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列。
[0060] 在一可实施方式中,以金融领域为例,如果一条交易数据包括客户账号、交易金额、交易时间、交易类型和对方客户账号这些特征,而该交易数据在第一随机序列中对应的节点只包括客户账号这一个特征,此时需要将该交易数据的其他特征,即交易金额、交易时间、交易类型和对方客户账号这些特征,与该交易数据在第一随机序列中对应的节点中的客户账号这一特征进行拼接,得到该节点对应的所有特征,将每条第一随机序列中的每个节点对应的所有特征都拼接完毕之后,即可得到多条第二随机序列。例如,假设某一条第一随机序列为: ,其中, 、 、 等均为网络拓扑图中的节点对应的用户的标识信息,将第一随机序列中的每个节点对应的所有特征都拼接完毕之后,得到的第二随机序列可以为:
,其中,
分别为 节点对应的其他特征,
分别为 节点对应的其他特征。
[0061] 步骤S203,根据向量生成模型和多条第二随机序列,生成网络拓扑图中每个节点对应特征的特征向量。
[0062] 在本实施例中,得到多条第二随机序列之后,可以将第二随机序列输入至向量生成模型,向量生成模型的输出即为网络特征图中每个节点对应特征的特征向量。具体地,由于第二随机序列的每个节点已经包含了其对应的交易数据中的所有特征,因此,将第二随机序列输入向量生成模型,得到的每个节点对应特征的特征向量即为每个节点的交易数据对应特征的特征向量。
[0063] 在一可实施方式中,向量生成模型可以为Word2Vec模型和通用预训练模型(GPT,General Pre‑Training)等,本公开不对向量生成模型进行限定。
[0064] 在本公开第三实施例中,对第一随机序列的每个节点对应的所有特征进行拼接,得到第二随机序列,并利用第二随机序列生成网络拓扑图中每个节点对应特征的特征向量,即每条交易数据对应特征的特征向量,对第一随机序列的每个节点对应的所有特征进行拼接,即引入了交易数据的多维度特征,使得生成的特征向量包含的特征信息更全面,从而提高了社群挖掘的准确性。
[0065] 图5示出了本公开第四实施例的一种社群挖掘方法的流程示意图,如图5所示,根据特征向量,搜索标注数据所属的交易数据集,主要包括:
[0066] 步骤S301,对特征向量进行降维处理。
[0067] 在本实施例中,首先需要对生成的特征向量进行降维处理。具体地,如果特征向量维度偏高,其中会包含大量的冗余信息和噪音信息,如果直接以该特征向量来挖掘社群,可能会导致社群挖掘结果准确率不高,而且后续搜索目标数据的效率也会降低,因此需要对特征向量进行降维处理。
[0068] 在一可实施方式中,可以采用主成分分析法(PCA,Principal Component Analysis)、线性判别分析法(LDA,Linear Discriminant Analysis)和多维尺度变换(MDS,Multidimensional Scaling)等方法对特征向量进行降维。
[0069] 步骤S302,搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将目标特征向量对应的交易数据确定为目标数据。
[0070] 步骤S303,根据标注数据与目标数据,组成交易数据集。
[0071] 在本实施例中,对特征向量进行降维之后,需要搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将目标特征向量对应的交易数据确定为目标数据,然后根据标注数据与目标数据,组成交易数据集。
[0072] 在一可实施方式中,特征向量之间的距离可以表征特征向量之间的相似度,特征向量之间的距离越近,则特征向量之间的相似度越高,反之则越低;可以计算标注数据对应的特征向量与其他交易数据对应的特征向量之间的距离,然后搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,目标特征向量与标注数据对应的特征向量之间的距离较小,因此目标特征向量对应的交易数据与标注数据较为相似,可以将目标特征向量对应的交易数据确定为目标数据,然后由标注数据和与标注数据关联的目标数据,组成交易数据集。具体地,可以根据欧式距离或余弦相似度等计算特征向量之间的距离,预设阈值可以根据实际应用场景进行设置,本公开不对预设阈值进行限定。
[0073] 在本公开第四实施例中,先对特征向量进行降维处理,然后搜索标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将目标特征向量对应的交易数据确定为目标数据,对特征向量进行降维,可以去除特征向量中的冗余信息和噪音信息,保证社群挖掘结果的准确率,然后搜索出与标注数据关联的交易数据,即目标数据,并利用标注数据和目标数据组成交易数据集,便于后续利用交易数据集进行社群挖掘。
[0074] 在本公开第五实施例中,搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,包括:
[0075] 构建进行降维处理后的特征向量对应的K维树;根据K维树,搜索目标特征向量。
[0076] 在本实施例中,可以将进行降维处理后的特征向量输入至K维树(K‑D tree,K‑Dimensional Tree),K‑D tree是一种对K维空间中的实例点进行存储以便对其进行快速检索的树形数据结构,将特征向量输入至K‑D tree之后,K‑D tree会对特征向量进行划分,将特征向量存储在K‑D tree的叶子节点中,生成特征向量对应的K‑D tree,然后根据该K‑D tree,搜索得到目标特征向量。
[0077] 在一可实施方式中,可以直接将与标注数据对应的特征向量存储在同一个叶子节点中的特征向量确定为目标特征向量,还可以根据K‑D tree从标注数据对应的特征向量处回溯搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量。
[0078] 在本公开第五实施例中,首先构建降维处理后的特征向量对应的K‑D tree,然后利用K‑D tree搜索目标特征向量,K‑D tree可以提高近邻搜索的效率,即可以提高搜索目标特征向量的效率,进一步保证社群挖掘的效率。
[0079] 在本公开第六实施例中,步骤S105主要包括:
[0080] 判断交易数据集中的标注数据与目标数据对应的节点是否在同一个子网络拓扑图中;判断结果为是,将交易数据集确定为社群挖掘结果。
[0081] 在本实施例中,构建得到的多条交易数据对应的网络拓扑图中可能有多个子网络拓扑图,例如,获取到的多条交易数据为客户账号M、N、P、Q对应的交易数据,且客户账号M给客户账号N转账,客户账号P给客户账号Q转账,那么构建得到的网络拓扑图就包含两个子网络拓扑图,分别对应客户账号M给客户账号N转账,以及客户账号P给客户账号Q转账。因此,得到交易数据集之后,还需要判断交易数据集中的标注数据与目标数据的节点是否在同一个子网络拓扑图中,只有在同一个子网络拓扑图中的节点之间才存在交易行为,才能被确定为社群,因此若判断结果为是,则将交易数据集确定为社群挖掘结果;若判断结果为否,则交易数据集不为社群。
[0082] 在本公开第六实施例中,将交易数据集中的标注数据与目标数据对应的节点在同一个子网络拓扑图中的交易数据集确定为社群挖掘结果,因此排除了交易数据集中标注数据与目标数据之间可能不存在交易行为的情况,进一步提高了社群挖掘结果的准确性。
[0083] 图6示出了本公开第七实施例的一种社群挖掘方法的流程示意图,如图6所示,该方法还包括:
[0084] 步骤S106,根据社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,对社群挖掘结果中的社群进行风险性排序,并输出风险性排序结果。
[0085] 社群标注覆盖率包括社群内标注数据的占比;社群目标覆盖率包括社群内目标数据的占比;平均交易距离包括社群内标注数据到目标数据之间的最短距离和与社群内标注数据的比值;时间偏移区间包括社群内数据触发时间与当前时间差值的平均值。
[0086] 在本实施例中,得到社群挖掘结果之后,还可以根据社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,计算每个社群的风险性,并对社群挖掘结果中的社群进行风险性排序,最后输出风险性排序结果。
[0087] 在一可实施方式中,社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间的计算公式如下:
[0088] ,
[0089] ,
[0090] ,
[0091] ,
[0092] 其中,社群内交易数据触发时间指每条交易数据中的交易行为的发生时间。
[0093] 在一可实施方式中,可以利用如下公式计算每个社群的风险性 :
[0094] ,
[0095] 其中,、、和 均为系数参数,且 ,可以根据实际应用场景确定 、、和 的取值, 代表归一化结果。计算出每个社群的风险性之后,可以对所有社群的风险性进行排序,并输出风险性排序结果。
[0096] 在本公开第七实施例中,根据社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,计算每个社群的风险性,并将风险性排序结果输出,这样可以衡量各个社群可能带来的风险程度,使社群挖掘结果更加清晰直观。
[0097] 图7示出了本公开第八实施例的一种社群挖掘装置的结构示意图,如图7所示,该装置主要包括:
[0098] 获取模块70,用于获取多条交易数据,交易数据用于记录用户之间的交易行为,多条交易数据包括标注数据;构建模块71,用于构建多条交易数据对应的网络拓扑图,网络拓扑图的节点为用户,网络拓扑图中连接两个节点的边表示用户之间存在交易行为;生成模块72,用于根据网络拓扑图,生成每条交易数据对应特征的特征向量;搜索模块73,用于根据特征向量,搜索标注数据所属的交易数据集,交易数据集包括标注数据和目标数据,目标数据包括与标注数据关联的交易数据;确定模块74,用于将满足预设条件的交易数据集确定为社群挖掘结果。
[0099] 在一可实施方式中,构建模块71主要包括:构建子模块710,用于构建多条交易数据对应的初始拓扑图,初始拓扑图的节点为用户,初始拓扑图中连接两个节点的边表示用户之间存在交易行为;计算子模块711,用于根据多条交易数据中的交易数量和交易频率,计算初始拓扑图中每条边的边权重,得到网络拓扑图。
[0100] 在一可实施方式中,生成模块72主要包括:
[0101] 游走子模块720,用于根据边权重,对网络拓扑图进行概率游走,生成网络拓扑图对应的多条第一随机序列;拼接子模块721,用于根据多条交易数据,对多条第一随机序列的每个节点对应的所有特征进行拼接,得到多条第二随机序列;生成子模块722,用于根据向量生成模型和多条第二随机序列,生成网络拓扑图中每个节点对应特征的特征向量。
[0102] 在一可实施方式中,搜索模块73主要包括:
[0103] 降维子模块730,用于对特征向量进行降维处理;搜索子模块731,用于搜索与标注数据对应的特征向量之间的距离小于预设阈值的目标特征向量,并将目标特征向量对应的交易数据确定为目标数据;组成子模块732,用于根据标注数据与目标数据,组成交易数据集。
[0104] 在一可实施方式中,搜索子模块731主要包括:
[0105] 构建单元7310,用于构建进行降维处理后的特征向量对应的K维树;搜索单元7311,用于根据K维树,搜索目标特征向量。
[0106] 在一可实施方式中,确定模块74主要包括:
[0107] 判断子模块740,用于判断交易数据集中的标注数据与目标数据对应的节点是否在同一个子网络拓扑图中;确定子模块741,用于判断结果为是,将交易数据集确定为社群挖掘结果。
[0108] 在一可实施方式中,该装置还包括:风险性排序模块75,用于根据社群挖掘结果中每个社群的社群标注覆盖率、社群目标覆盖率、平均交易距离和时间偏移区间,对社群挖掘结果中的社群进行风险性排序,并输出风险性排序结果。
[0109] 根据本公开的实施例,本公开还提供了一种电子设备和一种可读存储介质。
[0110] 图8示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0111] 如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
[0112] 设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0113] 计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如一种社群挖掘方法。例如,在一些实施例中,一种社群挖掘方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的一种社群挖掘方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行一种社群挖掘方法。
[0114] 本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0115] 用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0116] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0117] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0118] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
[0119] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0120] 应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0121] 此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0122] 以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。