一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

训练图生成网络、训练图神经网络的方法及装置与流程

2023-01-02 16:31:45 来源:中国专利 TAG:


1.本说明书涉及图神经网络技术领域,尤其涉及一种训练图生成网络、训练图神经网络的方法及装置。


背景技术:

2.各种服务平台,例如电子支付平台、电商平台、金融平台以及社交平台等,可以为用户提供丰富多样的服务内容,用户对于这些服务平台的隐私保护、安全性、稳定性也越来越重视。为了提高平台的安全性,防止不法黑产利用平台账户实施不法行为,一些平台已经部署了一些风控模型,例如基于图神经网络(gnn)的风控产品(即训练所得的用于风控的gnn),且在风控场景中取得了非常可观的效果。然而近来,黑产对于风控产品的攻击方式和频率与日俱增,导致各平台部署的很多风控产品(包括用于风控的gnn)的鲁棒性降低,从而危及平台安全。
3.因此,为了提高用于风控的gnn对于黑产攻击时的对抗能力,亟需升级用于风控的gnn的鲁棒性,即提升其针对存在风险以及有安全隐患的用户(或账户)的识别能力。风控产品对于黑产攻击通常可由两个维度进行防御,一个是直接对用于风控的gnn本身升级对抗能力,二是在其训练数据上增加更多的用于提升gnn的对抗能力的样本图,以提高其鲁棒性。那么,如何提供一种可快速生成可用于提升gnn的对抗能力的样本图的方法成为亟待解决的问题。


技术实现要素:

4.本说明书一个或多个实施例提供了一种训练图生成网络、训练图神经网络的方法及装置,以实现训练得到可快速生成提升gnn的对抗能力的样本图的图生成网络,为提高gnn的鲁棒性即提高其对风险用户的识别能力提供基础。
5.根据第一方面,提供一种训练图生成网络的方法,包括:获取从原始关系图中提取的第一子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;利用图生成网络,处理所述第一子图和所述扰动节点集,生成所述第一子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述第一子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和所述目标节点,构成第二子图;利用图判别网络,预测所述第二子图为原始子图的第一概率;以最大化所述第一概率为目标,训练所述图生成网络。
6.根据第二方面,提供一种一种训练图神经网络的方法,包括:获取从原始关系图中提取的原始子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;
获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;利用训练好的图生成网络,处理所述原始子图和所述扰动节点集,生成所述原始子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述原始子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和所述目标节点,构成扰动子图;利用所述扰动子图和所述原始子图的标签,训练目标图神经网络,其用于识别输入子图中指定节点对应的用户是否为风险用户。
7.根据第三方面,提供一种训练图神经网络的方法,包括:获取从原始关系图中提取的原始子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;利用训练好的图生成网络,处理所述原始子图和所述扰动节点集,生成所述原始子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述原始子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和所述目标节点,构成扰动子图;利用所述扰动子图和所述原始子图的标签,训练目标图神经网络,其用于识别输入子图中指定节点对应的用户是否为风险用户。
8.根据第四方面,提供一种训练图神经网络的装置,包括:第三获取模块,配置为获取从原始关系图中提取的原始子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;第四获取模块,配置为获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;第二处理生成模块,配置为利用训练好的图生成网络,处理所述原始子图和所述扰动节点集,生成所述原始子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述原始子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和所述目标节点,构成扰动子图;第二训练模块,配置为利用所述扰动子图和所述原始子图的标签,训练目标图神经网络,其用于识别输入子图中指定节点对应的用户是否为风险用户。
9.根据第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面所述的方法。
10.根据第六方面,提供一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面所述的方法。
11.根据本说明书实施例提供的方法及装置,首先获取从原始关系图中提取的、包括至少一个对应风险用户的样本节点的第一子图,其中边表示各样本用户之间的关联关系;并获取包括由正常用户构成的目标节点及目标节点的邻居节点的扰动节点集;之后利用图生成网络处理第一子图和扰动节点集,生成第一子图中至少一个样本节点和目标节点之间的预测边,通过在第一子图上添加扰动节点集,并用预测边连接至少一个样本节点和目标节点,构成第二子图,接着利用图判别网络,预测第二子图为原始子图(即为真实的从原始
关系图中提取的图)的第一概率,以最大化第一概率为目标,训练图生成网络。这样,上述过程图生成网络和图判别网络组成生成对抗网络,以生成对抗的方式训练生成网络,以最大化第一概率即提升图生成网络模仿原始子图的能力为目标,训练图生成网络,提升图生成网络生成更贴合实际情况的子图的能力,使得所生成子图的真实性提高,并为提高图神经网络gnn的对抗攻击的防御能力、以及对风险用户的识别能力提供基础。
附图说明
12.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
13.图1为本说明书披露的一个实施例的实施框架示意图;图2为实施例提供的训练图生成网络的方法的一种流程示意图;图3为从原始关系图中提取第一子图的示意图;图4为实施例提供的训练图神经网络的方法的一种流程示意图;图5为实施例提供的训练图生成网络的装置的一种示意性框图;图6为实施例提供的训练图神经网络的装置的一种示意性框图。
具体实施方式
14.下面将结合附图,详细描述本说明书实施例的技术方案。
15.本说明书实施例披露一种训练图生成网络、训练图神经网络的方法及装置,下面首先对相应方法的应用场景和技术构思进行介绍,具体如下:如前所述,为了提高用于风控的gnn的对抗能力,可以在其训练数据上增加更多的用于提升gnn的对抗能力的样本图,以提高其鲁棒性即提升其针对存在风险以及有安全隐患的用户的识别能力。
16.用于风控的gnn(之后称为目标gnn)的训练过程中,为了有较好的训练效果,即其针对存在风险以及有安全隐患的用户(或账户)有较好的识别能力,其训练样本集的样本子图中,一般会包括一些正常样本子图,以及一些风险样本子图,以便从正负样本子图不同角度进行学习。其中,正常样本子图包括多个节点,且多个节点对应多个正常用户;风险样本子图包括多个节点,且多个节点中至少一个节点对应风险用户。
17.在风控的对抗场景中,假定攻击者一般会对风险样本子图进行变换,以期使得目标gnn识别不出其中节点对应的用户为风险用户。例如:在电商平台或者电子支付平台的交易风控的对抗场景中,目标gnn用于识别交易关系图中各节点(或某些指定节点)对应的用户是否为交易风险用户,即识别用户是否出现风险交易行为(例如欺诈、套现或者盗用账号进行交易等风险交易行为)。目前,交易风险用户为了迷惑目标gnn,除了进行风险交易行为,还向一些正常用户(例如福利机构对应的注册用户、正常商铺对应的注册用户等)进行一些正常交易,以扰乱gnn原本针对正常用户和风险用户得到的不同表征特点,使得目标gnn识别不出其为交易风险用户。其中交易关系图中各节点对应各用户,其中的边表示用户之间的交易关系。
18.鉴于此,根据本说明书的实施例,可以模拟攻击者可能进行的子图变换,在风险样本子图中添加正常用户对应的节点集,得到相应的扰动子图(也可称为变换子图或对抗子图)。这样的扰动子图是攻击者有可能使用的、使得目标gnn无法准确识别出用户是否为风险用户的子图。
19.基于上述获得的扰动子图,以及扰动子图对应的原始标签(即变换得到该扰动子图的风险样本子图的原始标签),优化目标gnn,可以提高目标gnn对存在风险以及有安全隐患的用户的识别能力,并提高其防攻击能力。
20.在上述基础上,为了得到识别能力更好的且攻击对抗防御能力更高的目标gnn,则需要得到真实性更高、更贴合实际情况的扰动子图。鉴于此,发明人提出一种训练图生成网络的方法,图1示出根据本说明书披露的一个实施例的实施场景示意图。
21.在该实施场景中,示例性的示出了图生成网络和图判别网络,以通过图生成网络和图判别网络,构成生成对抗网络;并示例性的示出了从原始关系图中提取的子图(称为第一子图),例如第一子图a,其中,第一子图中各样本节点对应各样本用户,该样本用户包括至少一个风险用户,如图1所示的黑色实心节点。其中,图生成网络的输入是第一子图和扰动节点集(包括由正常用户构成的目标节点,如图1所示的阴影节点,和该目标节点的邻居节点),输出是添加有该扰动节点集的第一子图,称为变换子图,如图1所示,第一子图a中至少一个节点通过图生成网络所预测的预测边,与目标节点连接,得到变换子图a1,其中预测边通过虚线表示,第一子图和扰动节点中存在的初始边通过实线表示。图判别网络的输入是变换子图以及第一子图,输出是所判别的输入子图(变换子图及第一子图)为原始子图(即属于从原始关系图中提取出的真实子图)的预测概率,其中,预测概率越大,表示图判别网络判别出该输入子图为原始子图的可能性越大。
22.之后通过相互博弈学习的方式,训练图生成网络和图判别网络,使得图生成网络输出的变换子图尽量欺骗图判别网络,即,使得判别网络将变换子图判别为原始子图;而图判别网络尽量分辨出变换子图,即分辨出变换子图不为原始子图。以此通过图生成网络和图判别网络之间的相互对抗,不断交替调整其两者的参数,直至图判别网络无法判别出图生成网络输出的变换子图是否为原始子图,至此得到训练完成的图生成网络。
23.接着利用训练完成的图生成网络生成扰动子图,至少通过扰动子图和扰动子图对应的原始标签(即图生成网络的输入子图的原始标签),训练优化目标gnn,以提高目标gnn对风险用户的识别能力,提高其对抗攻击的防御能力。
24.上述过程中,图生成网络和图判别网络组成生成对抗网络,以生成对抗的方式训练生成网络,提升图生成网络模仿原始子图的能力,训练得到的图生成网络能够生成更贴合实际情况、真实性更高的子图,为后续的提高目标gnn的对抗攻击的防御能力、以及对风险用户的识别能力提供基础。
25.下面结合具体实施例,对本说明书提供的训练图生成网络、训练图神经网络的方法及装置进行详细阐述。
26.图2示出了本说明书一个实施例中训练图生成网络的方法的流程图。该方法通过可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等来实现。如图2所示,所述方法包括如下步骤s210
‑ꢀ
s250:首先在步骤s210,获取从原始关系图中提取的第一子图,其中各样本节点对应各
样本用户,样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系。在一种实现中,该原始关系图可以是基于目标平台各用户之间的关联关系构建的,其中,各图节点对应目标平台的各用户,其中边表示目标平台各用户之间的关联关系,在一个实施例中,该关联关系可以包括如下关系之一:交易关系、社交关系、转账关系等。
27.在一个示例中,目标平台可以是电子支付平台(电商平台或者金融平台),相应的,原始关系图可以是,基于电子支付平台(电商平台或者金融平台)的各用户之间的资金转换关系(即转账关系和/或交易关系)而构建的,边表示用户之间的资金转换关系。风险用户可以是出现欺诈、套现等行为的用户。用户对应的属性特征可以包括,例如资金转换金额、资金转换时间、资金转换涉及的商品属性信息以及商铺属性信息、资金转换双方的属性信息等。一种实现中,边对应的属性特征可以包括,例如资金转换方向(例如节点a对应的用户向节点b对应的用户转换资金)、资金转换次数、资金转换金额、资金转换时间、资金转换双方所使用设备标识、所在城市等。
28.在又一个示例中,目标平台可以是社交平台,相应的,原始关系图可以基于社交平台各用户之间的社交关系而构建的,边表示社交平台各用户之间的社交关系,风险用户可以是被盗用用户、发送包含敏感内容信息的用户等。用户对应的属性特征可以包括,例如信息发送频率、信息发送时间、信息发送双方的属性信息等。一种实现中,边对应的属性特征可以包括例如:信息发送方向(例如节点c对应的用户向节点d对应的用户发送信息)、信息交互频率、信息发送时间、信息发送所使用设备标识、所在城市等。
29.在一种实现中,可以从原始关系图中提取出多个子图,作为训练目标图神经网络(即目标gnn)的样本子图,该目标gnn用于识别输入子图中指定节点对应的用户是否为风险用户。从原始关系图中提取出的样本子图可以包括正常样本子图以及风险样本子图。正常样本子图包括多个节点,且多个节点对应多个正常用户;风险样本子图包括多个节点,且多个节点中至少一个节点对应风险用户。
30.鉴于本说明书实施例中,需要模拟攻击者可能进行的子图变换,在风险样本子图中添加正常用户对应的节点集,以生成扰动子图,利用扰动子图优化目标gnn,提升目标gnn对风险用户的识别准确性。相应的,前述所获取的第一子图可以为风险样本子图,其中各样本节点对应各样本用户,该样本用户包括至少一个风险用户。
31.接着,在步骤s220,获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点。本步骤中,由正常用户构成的目标节点为原始关系图中被确认为正常用户所对应的节点,目标节点的邻居节点为从原始关系图中确定出的作为目标节点的邻居的节点。
32.在一个实施例中,为了提高目标节点的获取效率,可以预先从原始关系图中确定出多个被确认为正常的用户(正常用户)及其对应的节点(可以称为白节点),并将其存储于预设的白名单库中。之后,在训练图生成网络(用于快速生成真实性高、贴合实际情况的扰动子图)的过程中,可以直接从白名单库中,随机选取正常用户,构成目标节点;并且在原始关系图中,确定出目标节点对应的邻居节点,以得到扰动节点集,其中,该扰动节点集中可以包括目标节点及其对应的邻居节点之间的关联关系。
33.获取到第一子图和扰动节点集之后,在步骤s230,利用图生成网络,处理第一子图和扰动节点集,生成第一子图中至少一个样本节点和目标节点之间的预测边,通过在第一
子图上添加扰动节点集,并用预测边连接至少一个样本节点和目标节点,构成第二子图。可以理解的,该图生成网络为图神经网络,在一个实施例中,该图生成网络至少用于预测节点之间是否存在进行连接的边(称为预测边),并生成该预测边。在又一个实施例中,该图生成网络还可以用于预测该预测边的边预测表征。
34.具体的,在一个实施例中,该图生成网络包括第一聚合层和边预测层;可以将第一子图和扰动节点集输入第一聚合层,利用第一聚合层,对第一子图中各样本节点进行表征聚合,聚合得到第一子图中各样本节点的聚合表征,称为第一聚合表征,以及利用第一聚合层,根据目标节点的邻居节点对目标节点进行表征聚合,聚合得到目标节点的聚合表征,称为第二聚合表征。其中,该第一聚合层可以包括若干个聚合层,可以针对第一子图中各样本节点进行若干级表征聚合。
35.一种情况中,各样本节点的第一聚合表征,聚合有其自身的属性特征及其邻居节点的属性特征;且目标节点的第二聚合表征,聚合有其自身的属性特征及其邻居节点的属性特征。另一种情况中,考虑到第一子图中各边的属性特征,在一定程度上也可以体现相应的样本节点(所对应用户)的特点,相应的,各样本节点的第一聚合表征,可以聚合有其自身的属性特征、其邻居节点的属性特征及其与邻居节点之间的边的属性特征;且目标节点的第二聚合表征,可以聚合有其自身的属性特征、其邻居节点的属性特征及其与邻居节点之间的边的属性特征。
36.之后,将各样本节点的第一聚合表征和第二聚合表征输入边预测层,利用边预测层,基于各第一聚合表征和第二聚合表征,确定各个样本节点分别与目标节点进行连接的连接概率,基于各连接概率,生成第一子图中至少一个样本节点和目标节点之间的预测边,利用预测边连接至少一个样本节点和目标节点,由此得到包含第一子图和扰动节点集的第二子图。连接概率表征所对应样本节点与目标节点进行连接的可能性,其中,连接概率越大,所对应样本节点与目标节点进行连接的可能性越大。在一种实现中,边预测层可以通过mlp(多层感知机)而实现的。
37.在一种实现中,前述的将各样本节点的第一聚合表征和第二聚合表征输入边预测层的过程,可以是:针对各样本节点,对各样本节点的第一聚合表征和第二聚合表征进行融合,得到第一融合表征,将该第一融合表征输入边预测层。其中,该融合可以是:对该样本节点的第一聚合表征和第二聚合表征进行拼接或相加或相乘或进行池化操作。
38.在一种实现方式中,该基于各连接概率,生成至少一个样本节点和目标节点之间的预测边的过程可以是,若连接概率大于预设概率阈值,针对该连接概率对应的样本节点和目标节点,生成预测边。其中,该预设概率阈值可以基于经验进行设置。
39.在又一种实现方式中,该基于各连接概率,生成至少一个样本节点和目标节点之间的预测边的过程还可以是,确定出指定数量个数值最大的连接概率,作为目标连接概率,针对各目标连接概率对应的样本节点和目标节点,生成预测边。
40.通过前述方式,可以利用图生成网络,得到第一子图中至少一个样本节点与目标节点之间的预测边。之后,在一种实现中,第一子图中各边可能存在属性特征(可以转化为边表征),鉴于此,为了得到更真实、且贴合实际情况的变换后的子图,还需要针对各预测边,预测出其边预测表征,在又一个实施例中,该图生成网络还可以包括边表征生成层,该边表征生成层用于生成预测边的边预测表征。相应的,在生成第一子图中至少一个样本节
点和目标节点之间的预测边之后,还可以针对该至少一个样本节点中的各样本节点,利用边表征生成层,根据该样本节点的第一聚合表征和第二聚合表征,确定该样本节点与目标节点之间的预测边的边预测表征。
41.具体的,可以首先针对与目标节点存在预测边的至少一个样本节点中的各样本节点,对该样本节点的第一聚合表征和第二聚合表征进行融合,得到第二融合表征;之后将该第二融合表征输入边表征生成层,以利用边表征生成层处理该融合表征,确定出该样本节点与目标节点之间的预测边的边预测表征。其中,对该样本节点的第一聚合表征和第二聚合表征进行融合,可以是:对该样本节点的第一聚合表征和第二聚合表征进行拼接或相加或相乘或求均值或进行池化操作。在一种实现中,边表征生成层可以通过mlp(多层感知机)而实现的。
42.通过前述方式,可以得到第一子图中至少一个样本节点与目标节点之间的预测边以及各预测边的边预测表征,之后通过预测边连接至少一个样本节点与目标节点,得到包含第一子图以及扰动节点集的第二子图。接着,在步骤s240,利用图判别网络,预测第二子图为原始子图的第一概率。具体的,将第二子图输入图判别网络,利用图判别网络,至少基于第二子图中各节点的属性特征,预测第二子图为原始子图,即为从原始关系图中提取的子图的第一概率。
43.在一个实施例中,该图判别网络包括第二聚合层和分类层;相应的,在步骤s240预测第二子图为原始子图的第一概率的过程,可以是,利用第二聚合层,对第二子图中各节点进行表征聚合,得到各节点的第三聚合表征;利用各节点的第三聚合表征,确定第二子图的综合表征;利用分类层处理综合表征,确定第一概率。
44.本实现方式中,将第二子图输入第二聚合层,利用第二聚合层,至少基于第二子图中各节点的邻居节点的属性特征,对各节点进行表征聚合,得到各节点的第三聚合表征,之后利用各节点的第三聚合表征,确定第二子图的综合表征。将综合表征输入分类层,确定出第二子图为原始子图的第一概率。其中,第二聚合层可以包括若干个聚合层,可以针对第二子图中各节点进行若干级表征聚合。
45.其中,一种情况中,至少基于第二子图中各节点的邻居节点的属性特征,对各节点进行表征聚合的过程,例如可以是,基于第二子图中各节点的邻居节点的属性特征以及节点自身的属性特征,对各节点进行表征聚合;还可以是,基于第二子图中各节点的邻居节点的属性特征、节点自身的属性特征以及节点与邻居节点之间的边的属性特征(或者节点与邻居节点之间的边的边预测表征),对各节点进行表征聚合。
46.在一种实现中,得到第二子图中各节点的第三聚合表征之后,利用各节点的第三聚合表征,确定第二子图的综合表征,其具体过程可以是,从各节点中确定出中心节点,将中心节点的第三聚合表征,确定为综合表征。
47.一种情况中,在从原始关系图中提取第一子图时,如图3所示,首先从原始关系图(局部图)中,确定一个指定节点(该指定节点可以对应风险用户),之后基于该指定节点,从原始关系图中确定其预设邻域内的节点,以得到第一子图,该第一子图包括该指定节点、其预设邻域内的节点、指定节点与其预设邻域内的节点之间的关联关系,以及其预设邻域内的节点之间关联关系。鉴于上述情况,一种情况中,可以将第二子图(包括第一子图和扰动节点集)中该指定节点作为中心节点。在又一种情况中,可以从第二子图的各节点中,确定
出处于第二子图的中心位置的节点,将其作为中心节点。之后将中心节点的第三聚合表征,确定为第二子图的综合表征。
48.其中,预设邻域可以基于图生成网络的第一聚合层的层数确定,例如第一聚合层的层数为2,相应的,如图3所示,预设邻域为2跳,即预设邻域内的节点,为指定节点的2跳内的邻居节点。
49.在另一种实现中,确定第二子图的综合表征的过程可以具体为,对各节点的第三聚合表征进行聚合,得到综合表征。本实现方式中,可以将各节点的第三聚合表征进行拼接或者相加或者相乘或者池化操作,得到第二子图的综合表征。
50.在一个实施例中,考虑到第二子图中边的属性特征在一定程度上也可以体现第二子图的特点,相应的,所述对各节点的第三聚合表征进行聚合的过程,还可以包括:对各节点的第三聚合表征以及第二子图中各边的边表征进行聚合。
51.其中,第二子图中各边包括第一子图中各样本节点之间的边(称为初始边),扰动节点集中目标节点与其邻居节点和目标节点的邻居节点之间的边(称为初始边),以及图生成网络生成的至少一个样本节点与目标节点之间的预测边。在一种情况中,该边表征可以是:通过各初始边的属性特征编码所得的,也可以是预测边的边预测表征。在另一种情况中,该边表征可以是:利用图判别网络的第二聚合层,针对第二子图中各边,利用其连接的节点的属性特征(和/或其邻居边的属性特征/边预测表征)进行表征聚合所得到的。
52.通过前述的方式,可以利用图判别网络,确定得到第二子图为原始子图的第一概率。之后,在步骤s250,以最大化第一概率为目标,训练图生成网络。本步骤中,以最大化第一概率为目标,即以提升图生成网络模仿原始子图的能力为目标,训练图生成网络,使得图生成网络输出的子图可以欺骗图判别网络,即图判别网络无法判别出图生成网络输出的子图是否为原始子图(例如将图生成网络输出的子图判别为原始子图),这样可以通过图生成网络可以得到真实性更高、且更贴合实际情况的子图。
53.在一种实现中,可以基于第一概率构建预测损失,其中预测损失与第一概率负相关。基于该预测损失,利用反向传播算法,确定图生成网络的参数梯度,利用所确定的参数梯度以及图生成网络的参数的当前取值,确定图生成网络的更新后的参数取值,进而基于更新后的参数取值,调整图生成网络的参数,其中,确定图生成网络的参数梯度是以最小化预测损失为目标得到的。
54.上述步骤s210~s250为一次迭代训练过程。为了训练得到更好的图生成网络,可以多次迭代执行上述过程。也就是在步骤s250之后基于图生成网络更新后的参数,返回执行步骤s210。上述迭代训练过程的停止条件可以包括,迭代训练次数达到预设次数阈值,或者迭代训练时长达到预设时长,或者预测损失小于设定的损失阈值等等。
55.本实施例,图生成网络和图判别网络组成生成对抗网络,以生成对抗的方式训练生成网络,以最大化第一概率即提升图生成网络模仿原始子图的能力为目标,训练图生成网络,提升图生成网络生成真实性更高、更贴合实际情况的子图的能力,为提高图神经网络gnn的对抗攻击的防御能力、以及对风险用户的识别能力提供基础。
56.回顾一下步骤s210~s250的执行过程,上述实施例是以一个第一子图为一个样本为例进行说明的。在另一实施例中,也可以针对一批样本即多个第一子图执行上述步骤s210~步骤s240,分别得到每个第一子图的第一概率。进而在步骤s250基于与多个第一子图
的第一概率负相关,确定预测损失,以最小化预测损失(即最大化第一概率)为目标,训练图生成网络。本实施例中,对一批样本确定预测损失,然后再调整图生成网络的参数,这样能够减少对图生成网络的参数调整次数,更易于训练过程的实施。
57.在一个实施例中,图生成网络和图判别网络组成生成对抗网络,为了得到效果更好的图生成网络,如图2所示,所述方法还可以包括训练图判别网络的过程,以通过图生成网络和图判别网络之间的博弈对抗,提高图生成网络生成真实性更高的子图的能力,相应的,训练图判别网络的过程可以包括如下步骤:在步骤s260,利用图判别网络,预测第一子图为原始子图的第二概率。本步骤中,将第一子图输入图判别网络的第二聚合层,利用第二聚合层至少对第一子图中各样本节点进行表征聚合,得到各样本节点的聚合表征,利用各样本节点的聚合表征,确定第一子图的图表征,将图表征输入分类层,利用分类层处理该图表征,得到第一子图为原始子图的第二概率。其中,确定第一子图的图表征的过程可以参见确定第二子图的综合表征的过程,在此不再赘述。
58.在步骤s270,以最小化第一概率,最大化第二概率为目标,训练图判别网络。本步骤中,第一子图为真实的从原始关系图中提取的子图,相应的,以最小化第一概率,且最大化第二概率为目标训练图判别网络,即可以实现对图判别网络的判别能力的提升,使得其可以更准确地判别出输入子图是否为原始子图,通过图生成网络和图判别网络之间的博弈对抗,既可以使得图生成网络所生成子图更贴合实际情况、更真实,又可以使得图判别网络的判别结果的准确性更高,直至图判别网络无法区分真实从原始关系图中提取的子图和图生成网络所输出的子图,则认为图生成网络训练完成,得到此时的图生成网络。
59.之后,可以获取从原始关系图中提取出的子图,并获取相应的扰动节点集,将提取出的子图和相应的扰动节点集,输入训练完成的图生成网络,得到相应的扰动子图,之后,可以利用扰动子图以及该提取出的子图的原始标签,训练目标gnn,以提升其对风险用户的识别能力,提高其攻击对抗的防御能力。
60.具体的,相应于上述方法实施例,本说明书实施例中,还提供了一种训练图神经网络的方法,如图4所示,可以包括如下步骤:在步骤s410,获取从原始关系图中提取的原始子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系。其中,获取原始子图的过程可以参见前述的训练图生成网络的实施例中获取第一子图的过程,在此不再赘述。
61.在步骤s420,获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点。其中,获取扰动节点集的过程可以参见前述的训练图生成网络的实施例中获取扰动节点集的过程,在此不再赘述。
62.在步骤s430,利用训练好的图生成网络,处理原始子图和所述扰动节点集,生成原始子图中至少一个样本节点和目标节点之间的预测边,通过在原始子图上添加扰动节点集,并用预测边连接至少一个样本节点和目标节点,构成扰动子图。其中,确定扰动子图的过程参见前述的训练图生成网络的实施例中确定第二子图的过程,在此不再赘述。该训练好的图生成网络为基于前述实施例所提供的图生成网络方法所训练的网络。
63.在步骤s440,利用扰动子图和原始子图的标签,训练目标图神经网络,其用于识别
输入子图中指定节点对应的用户是否为风险用户。本步骤中,至少将扰动子图和原始子图的标签(例如包括标识原始子图中特定节点m对应的用户为风险用户的信息),输入目标图神经网络(gnn),得到针对扰动子图的预测结果(包括所预测的扰动子图中该特定节点m对应的用户是否为风险用户的信息),之后基于预测结果和原始子图的标签,构建图预测损失,以最小化图预测损失为目标,调整目标图神经网络的参数,直至目标图神经网络达到收敛条件,确定目标图神经网络训练完成。其中,上述收敛条件可以包括,参数调整次数达到预设调整阈值,或者训练时长达到指定时长,或者图预测损失小于预设损失阈值等等。
64.在另一种实现中,还可以将原始子图及其标签输入目标图神经网络,以训练目标图神经网络。
65.通过上述方式,可以提升目标图神经网络的鲁棒性,即提高其对有风险或有安全隐患的用户的识别准确性,并提升其对抗攻击的防御能力。
66.上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
67.相应于上述方法实施例,本说明书实施例,提供了一种训练图生成网络的装置500,其示意性框图如图5所示,包括:第一获取模块510,配置为获取从原始关系图中提取的第一子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;第二获取模块520,配置为获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;第一处理生成模块530,配置为利用图生成网络,处理所述第一子图和所述扰动节点集,生成所述第一子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述第一子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和所述目标节点,构成第二子图;第一预测模块540,配置为利用图判别网络,预测所述第二子图为原始子图的第一概率;第一训练模块550,配置为以最大化所述第一概率为目标,训练所述图生成网络。
68.在一种可选的实施方式中,还包括:第二预测模块(图中未示出),配置为利用所述图判别网络,预测所述第一子图为原始子图的第二概率;第三训练模块(图中未示出),配置为以最小化所述第一概率,最大化所述第二概率为目标,训练所述图判别网络。
69.在一种可选的实施方式中,所述关联关系包括如下关系之一:交易关系、社交关系、转账关系。
70.在一种可选的实施方式中,所述第二获取模块520,配置为从预设的白名单库中,随机选取正常用户,构成所述目标节点,所述白名单库用于记录经过确认的正常用户;
在所述原始关系图中,确定出所述目标节点对应的邻居节点。
71.在一种可选的实施方式中,所述图生成网络包括第一聚合层和边预测层;所述第一处理生成模块530,包括:第一聚合单元(图中未示出),配置为利用所述第一聚合层,对所述第一子图中各样本节点进行表征聚合,得到各个样本节点的第一聚合表征,根据所述邻居节点对所述目标节点进行表征聚合,得到第二聚合表征;第一确定单元(图中未示出),配置为利用所述边预测层,基于各第一聚合表征和所述第二聚合表征,确定各个样本节点分别与所述目标节点进行连接的连接概率;第一生成单元(图中未示出),配置为基于各连接概率,生成至少一个样本节点和所述目标节点之间的预测边。
72.在一种可选的实施方式中,所述第一生成单元,具体配置为若连接概率大于预设概率阈值,针对该连接概率对应的样本节点和所述目标节点,生成预测边。
73.在一种可选的实施方式中,所述图生成网络还包括边表征生成层;所述第一处理生成模块530,还包括:第二聚合单元(图中未示出),配置为针对所述至少一个样本节点中的各样本节点,利用所述边表征生成层,根据该样本节点的第一聚合表征和所述第二聚合表征,确定该样本节点与所述目标节点之间的预测边的边预测表征。
74.在一种可选的实施方式中,所述图判别网络包括第二聚合层和分类层;所述第一预测模块540,包括:聚合确定单元(图中未示出),配置为利用所述第二聚合层,对所述第二子图中各节点进行表征聚合,得到各节点的第三聚合表征;利用各节点的第三聚合表征,确定所述第二子图的综合表征;第二确定单元(图中未示出),配置为利用所述分类层处理所述综合表征,确定所述第一概率。
75.在一种可选的实施方式中,所述聚合确定单元,具体配置为从所述各节点中确定出中心节点,将所述中心节点的第三聚合表征,确定为所述综合表征;或对各节点的第三聚合表征进行聚合,得到所述综合表征。
76.在一种可选的实施方式中,所述聚合确定单元,具体配置为对各节点的第三聚合表征以及所述第二子图中各边的边表征进行聚合。
77.相应于上述方法实施例,本说明书实施例,提供了一种训练图神经网络的装置600,其示意性框图如图6所示,包括:第三获取模块610,配置为获取从原始关系图中提取的原始子图,其中各样本节点对应各样本用户,所述样本用户包括至少一个风险用户,边表示各样本用户之间的关联关系;第四获取模块620,配置为获取扰动节点集,其中包括由正常用户构成的目标节点,以及目标节点的邻居节点;第二处理生成模块630,配置为利用训练好的图生成网络,处理所述原始子图和所述扰动节点集,生成所述原始子图中至少一个样本节点和所述目标节点之间的预测边,通过在所述原始子图上添加所述扰动节点集,并用所述预测边连接所述至少一个样本节点和
所述目标节点,构成扰动子图;第二训练模块640,配置为利用所述扰动子图和所述原始子图的标签,训练目标图神经网络,其用于识别输入子图中指定节点对应的用户是否为风险用户。
78.上述装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
79.本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书所提供的所述训练图生成网络的方法或者训练图神经网络的方法。
80.本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现本说明书所提供的所述训练图生成网络的方法或者训练图神经网络的方法。
81.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
82.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
83.以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献