文章目录
论文名称:Heterogeneous graph neural networks for fraud detection and explanation in supply chain finance
摘要
发现供应链中的欺诈借款人对于金融服务提供商来说是一项至关重要的任务。对正在进行的业务中借款人的交易进行检查,以支持提供商是否放贷的决定。考虑到供应链业务中的多个参与者,借款人可能使用复杂的手段来欺骗,使欺诈检测变得具有挑战性。在这项工作中,我们提出了一个多任务学习框架,MultiFraud,用于复杂欺诈检测并提供合理的解释。基于异构图神经网络,在检测框架中利用来自实体周围多视图的异构信息。MultiFraud使多个领域能够共享嵌入并增强欺诈检测的建模能力。所开发的解释器提供了跨多个图的全面解释。在五个数据集上的实验结果表明了该框架在欺诈检测和解释跨领域方面的有效性。
1. 引言
近年来,供应链金融市场发展迅速,有效缓解了许多中小企业(SMEs)的融资困难。然而,供应链不仅仅是由上下游企业组成的线性链条。企业之间的交易、社交和合作关系构成了复杂的供应链网络。供应链中的数据包括商业流、信息流、资金流和物流。供应链中的多源异构数据和关系给供应链金融中的欺诈检测带来了挑战。交易的长度和复杂性为欺诈者[1]提供了机会,即使它们经过一系列技术解决方案的处理。许多先前的工作[2-4]已经利用机器学习和深度学习方法分析了个体企业或交易中的欺诈。他们取得了有限的成功,因为他们很少关注研究企业之间及其在供应链中的业务交易中的大量互动。由于其强大的属性和关系学习能力,图神经网络[5]吸引了来自各个领域的研究人员的注意。作为一个自然网络,供应链可以通过结合图神经网络有效地进行挖掘。
在供应链金融中,应收账款融资是最广泛使用的模式[6]。它在许多国家如美国和中国变得流行[7]。截至2023年7月底,中国工业企业的应收账款总额达到23.11万亿元,同比增长9.7%。供应链应收账款是一种核心企业将应收账款转让给银行和供应商以获得银行贷款的融资方式。此外,中国的供应链金融服务平台利用区块链技术使应收账款可分离、可持有和可转让。供应链应收账款可以在多个供应商之间分割和转移,以增加灵活性和曝光度。
这项研究旨在解决供应链金融中欺诈检测面临的以下三个挑战:
首先,有效利用来自多视图的异构信息进行欺诈检测。供应链金融中的多视图包含不同层次。首先,它包含多个不同实体的视角。其次,每个实体本身包含多个不同属性和关系。在供应链中,关于交易的信息有多种异构类型,如金额、支付令牌和支付时间。先前的工作[8,9]构建了用于欺诈检测的交易图,以捕获交易之间的互动。然而,与消费金融不同,供应链涉及企业之间的长期和复杂交易,其中包含大量可利用的信息。关于企业的信息有[^0]多种异构类型,如注册时间、注册资本、实际资本、股东、高管、法人、电话号码和电子邮件地址。先前的研究[10-12]通过探索性因素分析分析并证明了供应链关系与中小企业的金融风险之间的强相关性。构建不同的图来捕获不同视角的各种实体增强了框架的能力和灵活性,用于表示学习。
其次,通过利用多视图之间的相关性来提高欺诈检测性能。欺诈标签存在于不同视图中。例如,在企业中,它包括信用风险、破产等。在交易中,主要指欺诈交易和贷款违约。不同实体的欺诈标签是相关的。例如,一个已经失去信用的公司可能会申请不会偿还的贷款。此外,在平台上有多次欺诈交易记录的公司声誉较差。还应注意,交易中的类别不平衡问题在交易中更为明显[13,14]。大多数先前的欺诈检测方法[810,15]只关注这些任务中的一个。开发一个利用两个领域中数据的丰富性和多样性的模型对于提高性能至关重要。
最后,提供跨多个视图的欺诈预测解释。欺诈检测是风险控制者的一种辅助手段,因为他们在采取行动之前需要对欺诈有一定的了解。解释对于供应链金融欺诈检测至关重要。由于供应链金融中信息的多源性,解释器需要提供更丰富的内容。虽然现有的工作[9,16,17]提供了解释性,但对于多个图并不适用。
为了解决这些问题,我们提出了MultiFraud,一个基于异构图神经网络的欺诈检测和解释的多任务框架。
为了解决处理多源异构信息的挑战,我们分别为不同视图构建异构图以保持其语义。我们利用异构GNN来充分捕获特征和异构关系属性。为了构建视图之间的相关性,我们提出了一个基于注意力的组件来共享实体的嵌入。我们开发了一个解释器组件,在多个图上生成特征和边权重以提供解释性。
贡献总结如下:
(1) 据我们所知,我们是首个同时处理供应链金融中多视图欺诈检测的研究。
(2) 我们提出了一个多任务学习框架MultiFraud,利用异构GNN来检测供应链金融中的欺诈。
(3) MultiFraud可以在多个异构图上提供全面的解释。
(4) 我们在五个数据集上进行实验评估MultiFraud的有效性。结果表明它优于最先进的方法。
本文的其余部分结构如下:第2节介绍了业务模型。第3节调查了相关工作并分析了它们在供应链欺诈检测中的局限性。第4节描述了异构图构建和MultiFraud框架的详细组件。第5节报告了实验评估结果。第6节总结了工作并强调了未来的研究方向。
2. 应收账款融资
本节描述了供应链应收账款融资的详细业务流程。
图1. 供应链应收账款融资的业务流程。
2007年的《物权法》首次在法律层面明确了将应收账款纳入中国动产担保范围。应收账款融资是金融机构根据核心企业与上下游中小企业之间的实际交易提供融资给中小企业的一种方式。这有助于缓解中小企业的融资困难和资金约束。我们在图1中展示了应收账款融资的业务模型,其中包含三个主要角色:金融机构、核心企业和中小企业。具体的业务流程如下:
(1) 中小企业与核心企业签订采购合同。
(2) 中小企业从核心企业获得应收账款。
(3) 中小企业向金融机构申请供应链应收账款融资。
(4) 金融机构对应收账款、文件和信用进行预装调查。
(5) 金融机构签署贷款协议向中小企业放贷,并通知核心企业应收款支付。
(6) 核心企业按期将应收账款支付给金融机构。
(7) 银行将剩余资金转给中小企业。
3. 文献
对于供应链金融中的风险管理系统,研究[35]探讨了风险管理系统的建立。该研究指出了利用大数据分析和机器学习工具的重要性。研究[36]提出了一种分布式、基于传感器的架构,用于监测业务流程中的风险。另一项研究[37]构建了一个用于可视化供应链金融中订单、物流和库存的系统。然而,该系统仅可视化业务信息,并未分析和可视化供应链风险。目前的风险管理平台[38]主要依赖于专家规则和风险指标模型。
研究[39]总结了应收账款融资风险管理的风险评估方法,包括主成分分析、人工神经网络、层次分析法、逻辑回归分析和模糊综合评价。另一项研究[40]评估了用于风险识别的技术在当前网络化供应链环境中的有效性。先前的研究采用了机器学习技术进行供应链金融中的欺诈检测,包括分布式CNN[41]、Rpart、C5、随机森林、SVM[42]和XGBoost[43]。
图2. 应收账款的多级流动示例。
表1
方法比较。
方法 | 异构性 | 多任务 | 可解释性 |
---|---|---|---|
FDGars [19] Geniepath [20] | x \boldsymbol{x} x | x \boldsymbol{x} x | x \boldsymbol{x} x |
FD-NAG [21] | |||
GraphConsis [22] | ✓ \checkmark ✓ | 4 \boldsymbol{4} 4 | x \boldsymbol{x} x |
CARE-GNN [23] | |||
PC-GNN [24] | |||
GAS [25] | |||
GEM [26] [27] | |||
SemiGNN [27] | |||
BotSpot++[28] | |||
MAFI [29] | |||
IHGAT [8] | |||
ST-GNN [10] | |||
HAT [15] | ✓ \checkmark ✓ | ||
MvMoE [30] GraphRfi [31] | ✓ \checkmark ✓ | ||
GCAN [32] Know-GNN [33] | x \boldsymbol{x} x | ||
xFraud [9] | ✓ \checkmark ✓ | ✓ \checkmark ✓ | |
Li et al. [34] | ✓ \checkmark ✓ | ✓ \checkmark ✓ | |
MultiFraud(我们的) | ✓ \checkmark ✓ |
图神经网络在各个领域中变得越来越受欢迎,包括知识图谱[44]、推荐系统[45]、社交网络[46]和交通网络[47]。GNN已被用于欺诈检测,可分为同质图和异质图。FdGars [19]、GeniePath [20]、FD-NAG [21]构建同质图,并采用GNN进行欺诈检测。对于异质图,GraphConsis [22]、CARE-GNN [23]、PC-GNN [24]构建包含一种节点类型和多种关系的图。GAS [25]结合异质图和同质评论图生成嵌入。GEM [26]、SemiGNN [27]、BotSpot++[28]、MAFI [29]采用异质图进行欺诈检测。异质图的好处在于它可以在一个图中对多维信息和关系进行建模以进行学习和查看结果。大多数先前的研究集中在消费者金融和垃圾评论上,其中用户是个人而不是企业。他们的方法既未考虑复杂的交易,也未考虑复杂的企业关系。
ST-GNN [10]进行数据分析,揭示供应链关系对中小企业财务风险分析的影响。它提出了一种空间-时间感知GNN来预测贷款违约。HAT [15]基于具有注意机制的异质GNN预测企业破产。IHGAT [8]从用户行为构建意图,并设计了一个包括交易和意图的异质网络。xFraud [9]构建了一个包含买家、支付令牌、送货地址和电子邮件的异质交易图,以学习交易表示。这些基于GNN的方法针对单一视图和单一任务。
此外,我们的工作涉及通过多任务框架进行欺诈检测。GraphRfi [31]提出通过GCN和神经随机森林进行推荐和欺诈检测。MvMoE [30]提出通过专家混合网络同时解决信用风险和限额预测。它结合了异构多视图数据,包括用户资料、顺序行为和社会关系。MLP、双向LSTM和GNN被用来编码每个视图的特征。当前的多任务解决方案设计用于相同节点域,并且无法同时处理不同实体的任务。此外,它们仅在多任务学习级别整合来自不同视图的信息,没有多个视图之间的直接交互。
在可解释性方面,随着黑盒方法在金融服务等受监管领域中的应用越来越多,对可解释性的需求也在增加。与图像和文本等其他领域相比,GNN的可解释性处于早期阶段。调查报告 [ 50 , 51 ] [50,51] [50,51]列出了最近提出的几种方法,并分析了它们的优缺点,包括GNNExplainer [16]、PGExplainer [17]、SubgraphX [52]、XGNN [53]等。在欺诈检测的可解释性方面,GCAN [32]使用模型推导的共同注意权重来生成关于假新闻证据词的可解释性。KnowGNN [33]使用图功能依赖规则将专家规则转换为图。另一项工作[34]通过考虑比特币场外交易数据上的边权重扩展了GNNExplainer。xFraud [9]将GNNExplainer扩展到不同节点和边类型的异构图。当前研究无法提供关于多个视图图的可解释性。
以上分析表明,现有研究无法满足我们在第1节中提出的挑战。此外,目前没有方法可以解决供应链金融中欺诈检测的三个关键所需功能(见表1)。它们应该能够通过异构图模拟不同类型的信息,通过多任务学习共享学习,并为决策提供可解释性。
4. 方法论
本节介绍了我们提出的模型MultiFraud的技术细节。MultiFraud框架如图3所示。 (1) 多视图表示学习:利用异构图神经网络学习实体嵌入。 (2) 多实体嵌入共享:利用基于注意力的组件在实体之间共享嵌入。 (3) 多任务欺诈检测器:利用多任务学习联合训练多个实体的欺诈检测。 (4) 多视图欺诈解释:提供跨多个视图的节点和边解释。
图3. MultiFraud框架。
4.1. 异构图构建
我们构建了两个由供应链金融中关键实体组成的异构图:企业和交易。给定企业图 G e = { { V p ∣ p ∈ P } , { E q ∣ q ∈ Q } } \mathcal{G}_{e}=\left\{\left\{\mathcal{V}_{p} \mid p \in \mathcal{P}\right\},\left\{\mathcal{E}_{q} \mid q \in \mathcal{Q}\right\}\right\} Ge={{Vp∣p∈P},{Eq∣q∈Q}},其中 ∣ P ∣ |\mathcal{P}| ∣P∣种节点类型和 ∣ Q ∣ |\mathcal{Q}| ∣Q∣种边类型。 V p \mathcal{V}_{p} Vp是类型 p p p的节点集, E q \mathcal{E}_{q} Eq是类型 q q q的边集。节点类型集 P = { e , l , s , x , t , m } \mathcal{P}=\{e, l, s, x, t, m\} P={e,l,s,x,t,m}在异构企业图中包括来自企业、法人、股东、执行人、电话和电子邮件的节点;边类型集为 Q = { e e , e l , e s , e x , e t , e m } \mathcal{Q}=\{e e, e l, e s, e x, e t, e m\} Q={ee,el,es,ex,et,em},其中 E e e \mathcal{E}_{e e} Eee包括通过企业成为另一家企业股东建立的所有边。其他边类型表示企业与 { l , s , x , t , m } \{l, s, x, t, m\} {l,s,x,t,m}中的另一种节点类型相关。每个企业节点携带包含商业信息(如注册时间、注册资本、实收资本)、司法信息(如行政处罚和法律诉讼)和业务信息(如招标、证书等)的特征。
类似地,构建了一个交易图 G t = { { ℧ p ∣ p ∈ P ′ } , { E q ′ ∣ q ∈ Q ′ } } \mathcal{G}_{t}=\left\{\left\{\mho_{p} \mid p \in \mathcal{P}^{\prime}\right\},\left\{\mathcal{E}_{q}^{\prime} \mid q \in \mathcal{Q}^{\prime}\right\}\right\} Gt={{℧p∣p∈P′},{Eq′∣q∈Q′}}。为了预测每笔交易的合法性,我们遵循了 [ 8 , 9 ] [8,9] [8,9]中描述的相同方法,将每笔交易视为图中的一个节点。节点类型集 P ′ = { t , s , r , n , d } \mathcal{P}^{\prime}=\{t, s, r, n, d\} P′={t,s,r,n,d}包括交易、发送方、接收方、网络信息和设备信息,边类型集为 Q ′ = { t s , t r , t n , t d } \mathcal{Q}^{\prime}=\{t s, t r, t n, t d\} Q′={ts,tr,tn,td}。如果一笔交易与 P ′ = { s , r , n , d } \mathcal{P}^{\prime}=\{s, r, n, d\} P′={s,r,n,d}中的另一种节点类型有关,则在这两个节点之间建立一条边。每个交易节点携带包含交易金额、赎回期限等信息的节点特征。由于交易数量远远大于企业数量,构建的交易图的规模可能非常庞大。尽管当前的图神经网络模型能够在大规模图上训练,例如IHGAT [8]和xFraud [9]分别利用拥有176万和11亿节点的交易图,但为了在实际应用中控制资源,可以指定交易图的特定时间范围以减小其规模。例如,可以仅考虑过去六个月内企业的交易记录。
4.2. 多视图表示学习
多视图表示学习旨在利用异构图神经网络为实体学习节点嵌入。
定义 1(元路径)
元路径 P \mathrm{P} P 被定义为形式为 P 1 → Q 1 P 2 → Q 2 ⋯ → Q l P l + 1 \mathcal{P}_{1} \xrightarrow{\mathcal{Q}_{1}} \mathcal{P}_{2} \xrightarrow{\mathcal{Q}_{2}} \cdots \xrightarrow{\mathcal{Q}_{l}} \mathcal{P}_{l+1} P1Q1P2Q2⋯QlPl+1(简写为 P 1 P 2 P l + 1 \mathcal{P}_{1} \mathcal{P}_{2} \mathcal{P}_{l+1} P1P2Pl+1)的路径,描述了节点类型 P 1 \mathcal{P}_{1} P1 和 P l + 1 \mathcal{P}_{l+1} Pl+1 之间的关系 Q = Q 1 ∘ Q 2 ∘ ⋯ ∘ Q l Q=\mathcal{Q}_{1} \circ \mathcal{Q}_{2} \circ \cdots \circ \mathcal{Q}_{l} Q=Q1∘Q2∘⋯∘Ql,其中 ∘ \circ ∘ 是关系的组合运算符。
对于企业图 G e = { V , E } \mathcal{G}_{e}=\{\mathcal{V}, \mathcal{E}\} Ge={V,E},每个企业节点 v ∈ V v \in \mathcal{V} v∈V 都关联着一个特征向量 x v x_{v} xv。我们使用前馈网络对节点特征进行预处理,生成初始节点表示,即 h v 0 = F F N ( x v ) h_{v}^{0}=F F N\left(x_{v}\right) hv0=FFN(xv)。第 k k k 层的嵌入计算如下:
h v k = σ ( W k ∑ u ∈ N ( v ) ∪ v h u k − 1 ∣ N ( u ) ∣ ∣ N ( v ) ∣ ) \mathbf{h}_{v}^{k}=\sigma\left(\mathbf{W}_{k} \sum_{u \in N(v) \cup v} \frac{\mathbf{h}_{u}^{k-1}}{\sqrt{|N(u)||N(v)|}}\right) hvk=σ(Wk∑u∈N(v)∪v∣N(u)∣∣N(v)∣huk−1)
其中 W k \mathbf{W}_{k} Wk 是可学习的矩阵, N ( v ) N(v) N(v) 指的是 v v v 的邻居节点, σ \sigma σ 代表 sigmoid 函数。
对于每个元路径,我们应用两层带有跳跃连接的 GCN。来自 M M M 个不同元路径的输出嵌入 z v = h v K \mathbf{z}_{v}=\mathbf{h}_{v}^{K} zv=hvK 被连接起来:
z v F = ⨁ i = 1 M z v i \mathbf{z}_{v}^{F}=\bigoplus_{i=1}^{M} \mathbf{z}_{v}^{i} zvF=⨁i=1Mzvi
这里 ⊕ \oplus ⊕ 表示连接操作。
对于事务图中的每个事务节点 u u u,我们以相同的方式获得 z u F \mathbf{z}_{u}^{F} zuF。
4.3. 多实体嵌入共享
为了构建多视图之间的直接交互,我们提出了一个基于注意力的组件,用于在多个实体之间共享嵌入。注意力分数进一步用于多视图解释。根据不同实体的特性,可以应用不同的基于注意力的方法。
对于具有时间序列的交易,LSTM 是捕获顺序信息的常用方法。为了为每个交易生成注意力分数,我们应用基于注意力的双向 LSTM 来学习表示。我们将企业的交易历史定义为 T = { t x n 1 , t x n 2 , … , t x n t } T=\left\{t x n_{1}, t x n_{2}, \ldots, t x n_{t}\right\} T={txn1,txn2,…,txnt}。初始嵌入为 Z u T F = \mathbf{Z}_{u T}^{F}= ZuTF= { z u 1 F , z u 2 F , … , z u t F } \left\{z_{u 1}^{F}, z_{u 2}^{F}, \ldots, z_{u t}^{F}\right\} {zu1F,zu2F,…,zutF}。LSTM 层计算如下:
i t = σ ( W i i z u t F + b i i + W h i h t − 1 + b h i ) i_{t}=\sigma\left(W_{i i} z_{u t}^{F}+b_{i i}+W_{h i} h_{t-1}+b_{h i}\right) it=σ(WiizutF+bii+Whiht−1+bhi)
f t = σ ( W i f z u t F + b i f + W h f h t − 1 + b h f ) f_{t}=\sigma\left(W_{i f} z_{u t}^{F}+b_{i f}+W_{h f} h_{t-1}+b_{h f}\right) ft=σ(WifzutF+bif+Whfht−1+bhf)
g t = tanh ( W i g z u t F + b i g + W h g h t − 1 + b h g ) g_{t}=\tanh \left(W_{i g} z_{u t}^{F}+b_{i g}+W_{h g} h_{t-1}+b_{h g}\right) gt=tanh(WigzutF+big+Whght−1+bhg)
o t = σ ( W i o z u t F + b i o + W h o h t − 1 + b h o ) o_{t}=\sigma\left(W_{i o} z_{u t}^{F}+b_{i o}+W_{h o} h_{t-1}+b_{h o}\right) ot=σ(WiozutF+bio+Whoht−1+bho)
c t = f t ⊙ c t − 1 + i t ⊙ g t c_{t}=f_{t} \odot c_{t-1}+i_{t} \odot g_{t} ct=ft⊙ct−1+it⊙gt
h t = o t ⊙ tanh ( c t ) h_{t}=o_{t} \odot \tanh \left(c_{t}\right) ht=ot⊙tanh(ct)
这里 z u t F z_{u t}^{F} zutF 是输入, h t h_{t} ht 是时间 t t t 的隐藏状态, h t − 1 h_{t-1} ht−1 是时间 t − 1 t-1 t−1 的隐藏状态或初始隐藏状态, c t c_{t} ct 是细胞状态, i t , f t , g t , o t i_{t}, f_{t}, g_{t}, o_{t} it,ft,gt,ot 分别是输入门、遗忘门、细胞和输出门。 W W W 是可学习的权重矩阵, ⊙ \odot ⊙ 表示逐元素相乘。
交易序列在两个方向上进行处理:
h i = [ h i → + h i ← ] h_{i}=\left[\overrightarrow{h_{i}}+\overleftarrow{h_{i}}\right] hi=[hi+hi]
通过 Softmax 计算注意力分数 α i \alpha_{i} αi。我们将注意力分数记录为 A t t v \mathbf{A t t}_{v} Attv 以供解释。输出是所有交易的隐藏状态的加权和:
u i = tanh ( W a h i + b a ) u_{i}=\tanh \left(W_{a} h_{i}+b_{a}\right) ui=tanh(Wahi+ba),
α i = exp ( u i ) ∑ i exp ( u i ) \alpha_{i}=\frac{\exp \left(u_{i}\right)}{\sum_{i} \exp \left(u_{i}\right)} αi=∑iexp(ui)exp(ui),
z v A = ∑ i α i h i \mathbf{z}_{v}^{A}=\sum_{i} \alpha_{i} h_{i} zvA=∑iαihi
历史交易嵌入 z v A \mathbf{z}_{v}^{A} zvA 与 z v F \mathbf{z}_{v}^{F} zvF 进行连接:
z v new = z v F ⊕ z v A \mathbf{z}_{v}^{\text {new }}=\mathbf{z}_{v}^{F} \oplus \mathbf{z}_{v}^{A} zvnew =zvF⊕zvA
对于企业,我们平等对待参与交易的企业,即企业的注意力分数相同。参与企业的嵌入与交易的嵌入 z u F \mathbf{z}_{u}^{F} zuF 进行连接:
z u new = z u F ⊕ z v s F ⊕ z v r F \mathbf{z}_{u}^{\text {new }}=\mathbf{z}_{u}^{F} \oplus \mathbf{z}_{v s}^{F} \oplus \mathbf{z}_{v r}^{F} zunew =zuF⊕zvsF⊕zvrF
我们使用前馈网络对 z v new \mathbf{z}_{v}^{\text {new }} zvnew 和 z u new \mathbf{z}_{u}^{\text {new }} zunew 进行后处理,分别生成最终节点嵌入,并将它们馈送到 Softmax 层以预测节点类别。
我们使用算法 1 来说明检测器的详细过程。第 1 行和第 2 行的代码使用前馈网络处理输入特征。第 3 行到第 14 行的代码学习企业和交易节点的嵌入。对每个元路径采用 GCN 生成嵌入。然后连接这些嵌入。第 15 行到第 17 行的代码将企业节点的嵌入与基于注意力的双向 LSTM 生成的交易嵌入进行连接。第 18 行到第 20 行的代码将交易节点的嵌入与企业嵌入进行连接。输出被馈送到前馈网络和 Softmax 激活函数,将它们归一化为概率分布,以支持决策制定。
4.4. 多任务欺诈检测器
我们使用监督标准的交叉熵损失进行实体节点的节点预测。企业和交易的损失函数定义如下:
L enterprise = − ∑ v ∈ V v t [ y v log ( S v ) + ( 1 − y v ) log ( 1 − S v ) ] L transaction = − ∑ u ∈ V u t [ y u log ( S u ) + ( 1 − y u ) log ( 1 − S u ) ] \begin{align*} \mathcal{L}_{\text {enterprise }} & =-\sum_{v \in \mathcal{V}_{v t}}\left[y_{v} \log \left(S_{v}\right)+\left(1-y_{v}\right) \log \left(1-S_{v}\right)\right] \\ \mathcal{L}_{\text {transaction }} & =-\sum_{u \in \mathcal{V}_{u t}}\left[y_{u} \log \left(S_{u}\right)+\left(1-y_{u}\right) \log \left(1-S_{u}\right)\right] \tag{8} \end{align*} Lenterprise Ltransaction =−v∈Vvt∑[yvlog(Sv)+(1−yv)log(1−Sv)]=−u∈Vut∑[yulog(Su)+(1−yu)log(1−Su)](8)
这里 V v t \mathcal{V}_{v t} Vvt 和 V u t \mathcal{V}_{u t} Vut 分别是企业节点和交易节点的训练集, y v y_{v} yv 和 y u y_{u} yu 分别是企业节点 v v v 和交易节点 u u u 的标签。
不同任务之间是相互关联的。模型在不同任务之间共享实体的表示。因此,我们使用多任务学习方法来联合训练这两个任务。综合损失函数定义如下:
L = λ L enterprise + ( 1 − λ ) L transaction \mathcal{L}=\lambda \mathcal{L}_{\text {enterprise }}+(1-\lambda) \mathcal{L}_{\text {transaction }} L=λLenterprise +(1−λ)Ltransaction
这里 λ \lambda λ 用于平衡任务的重要性。 λ \lambda λ 的默认设置为 0.5。
4.5. 多视图欺诈解释
在多视图设置下,解释器负责解释多个实体。我们基于注意力和 GNNExplainer [16] 构建了一个多视图欺诈解释器。GNNExplainer 是一种用于解释 GNN 预测的模型无关方法 [16]。
设 Φ \Phi Φ 为经过训练的欺诈检测模型,预测 y ^ \hat{y} y^ 由 Φ ( G c ( v ) , X c ( v ) , I c ( v ) ) \Phi\left(G_{c}(v), X_{c}(v), I_{c}(v)\right) Φ(Gc(v),Xc(v),Ic(v)) 给出,其中 G c ( v ) G_{c}(v) Gc(v) 表示结构信息, X c ( v ) X_{c}(v) Xc(v) 表示特征信息, I c ( v ) I_{c}(v) Ic(v) 表示来自其他视图的信息。多视图欺诈解释器组件生成解释如下:
y ^ = ( G v S , X v S F , i ∈ k G u S i , i ∈ k ∪ X u S i F ) \hat{y}=\left(G_{v S}, X_{v S}^{F},{ }_{i \in k} G_{u S i},{ }_{i \in k}^{\cup} X_{u S i}^{F}\right) y^=(GvS,XvSF,i∈kGuSi,i∈k∪XuSiF)
这里 G v S G_{v S} GvS 表示包含预测节点的计算图的子图 [16], G u S G_{u S} GuS 是包含其他图中相关节点的子图。 X v S F X_{v S}^{F} XvSF 和 X u S F X_{u S}^{F} XuSF 是通过 F \mathrm{F} F 掩码的节点特征,即 X v S F = { x j F ∣ v j ∈ G v S } , X u S F = { x j F ∣ v j ∈ G u S } X_{v S}^{F}=\left\{x_{j}^{F} \mid v_{j} \in G_{v S}\right\}, X_{u S}^{F}=\left\{x_{j}^{F} \mid v_{j} \in G_{u S}\right\} XvSF={xjF∣vj∈GvS},XuSF={xjF∣vj∈GuS}。
解释器输入是要解释节点的节点索引、企业节点特征、交易节点特征、企业边索引、交易边索引、企业边类型和交易边类型。此外,由于 GNNexplainer 改变了原始节点索引,我们的模型需要跟踪企业节点和交易节点之间的关系,因此使用企业和交易的节点映射作为输入。输出包括来自两个图的节点特征掩码和边掩码。
对于企业,首先将解释器应用于企业节点,生成企业的 X v S F X_{v S}^{F} XvSF 和 G v S G_{v S} GvS。其次,由于企业的交易序列很长,提供过多的解释内容会增加理解的复杂性。因此,我们不是为每个交易提供解释,而是为具有最高注意力分数的前 H H H 个交易提供解释 [55]。然后,我们将解释器应用于这些交易的交易图,生成 ∪ i ∈ k X u S i F \cup_{i \in k} X_{u S i}^{F} ∪i∈kXuSiF 和 ∪ i ∈ H G u S i \cup_{i \in H} G_{u S i} ∪i∈HGuSi。来自不同视图的子图相互连接,产生最终的解释结果。
对于交易,首先将解释器应用于交易节点,生成重要特征 X u S F X_{u S}^{F} XuSF 和交易的子图 G u S G_{u S} GuS。然后将解释器应用于企业图,生成有意义的特征 ∪ i ∈ 2 X v S i F \cup_{i \in 2} X_{v S i}^{F} ∪i∈2XvSiF 和子图 ∪ i ∈ 2 G v S i \cup_{i \in 2} G_{v S i} ∪i∈2GvSi。
算法 2 说明了解释器的详细过程。第 1 行中,解释器首先从企业或交易的角度生成节点特征掩码和边掩码。基于要解释的节点类型,选择相关交易(第 2 行和第 3 行)或企业(第 4 行和第 5 行)。然后,解释器从另一个视角生成节点特征掩码和边掩码(第 6 行到第 8 行)。边掩码连接形成最终的解释子图(第 9 行到第 11 行)。
5. 实验
5.1. 数据集
我们提供了四个合成数据集和一个真实世界数据集,以测试我们提出的框架在欺诈检测和解释方面的有效性。我们还使用这些数据集作为基准来比较我们的方法与现有方法。
5.1.0.1. 合成数据集。通过调查历史案例,政府政策 2 { }^{2} 2已经确定,供应链金融欺诈的常见类型包括欺诈交易、自融资和重复融资。我们为每种三种主要应收账款欺诈类型设计了相应的合成数据集以进行测试。同时,我们设计了一个包含所有三种欺诈类型的混合欺诈数据集。每个数据集包含一个企业数据集和一个交易数据集。
许多观察到的网络属于无标度网络类,包括企业和交易网络。Barabási-Albert(BA)模型是一种用于生成无标度网络的算法。我们将BA模型与主题图结合起来生成合成数据集。主题图用于表示第2节中应收账款融资中交易和企业的特定子图。我们首先介绍主题图的定义[56]如下:
定义2(主题图)。主题图 M M M是由 n n n个节点组成的子图,由 n × n n \times n n×n的二进制邻接矩阵 B M B_{M} BM定义。
图4显示了生成合成数据集的关键组件。灰色图表示生成数据的基础图。交易数据集中的合法主题图表示应收账款融资的合法业务流程。欺诈主题图表示不同欺诈类型的业务流程,详细描述在第5.4节中。对于企业数据集,只有自融资欺诈有特定的主题图。
对于交易数据集,我们从一个基础BA图开始。BA图中的每个节点代表一个主题图(业务流程)。我们选择随机节点扩展到欺诈主题图,其余节点扩展到合法主题图。不同欺诈类型的欺诈主题图结构不同。我们根据第5.4节中报告的示例构建这些主题图。自融资欺诈中的欺诈交易主题图的结构与合法交易欺诈主题图相同。原始边被保留以连接扩展的主题图。我们向图中添加 0.09 N 0.09 \mathrm{~N} 0.09 N个随机边。 N \mathrm{N} N是当前图中的边数。对于企业数据集,我们从一个基础BA图开始。我们选择随机节点作为欺诈企业。对于欺诈交易和重复融资类型,这些欺诈节点的邻居节点有 40 % 40 \% 40%的概率是欺诈的。对于自融资类型,欺诈节点扩展到相应的欺诈主题图。我们向图中添加 0.01 N 0.01 \mathrm{~N} 0.01 N个随机边。通过将欺诈交易分配给欺诈企业和将合法交易分配给随机企业,我们构建了不同实体之间的关联。属于同一类别的节点的特征是从正态分布中抽样的。[^1]
图4. 合成数据集示意图。
表2
合成和真实世界数据集的统计信息。Syn、Rel、Ent 和 Trx 是合成、真实世界、企业和交易的缩写。
节点数 | 欺诈 % \% % | 特征数 | 关系 | 边数 | |
---|---|---|---|---|---|
Syn. 欺诈交易 | 2100 | 20.0 % 20.0 \% 20.0% | 8 | T − T \mathrm{~T}-\mathrm{T} T−T | 11,804 |
Syn. 自融资 | 2100 | 20.0 % 20.0 \% 20.0% | 8 | T − T \mathrm{~T}-\mathrm{T} T−T | 12,152 |
Syn. 重复融资企业 | 1050 | 24.5 % 24.5 \% 24.5% | 8 | E-E | 10,554 |
Syn. 重复融资交易 | 2100 | 20.0 % 20.0 \% 20.0% | 8 | T − T \mathrm{~T}-\mathrm{T} T−T | 12,092 |
Rel. 企业 | 13,489 | 26.4 % 26.4 \% 26.4% | 89 | E-S-E | 53,874 |
E-E | 15,908 | ||||
E-M-E | 139,413 | ||||
全部 | 209,195 | ||||
Rel. 交易 | 50,000 | 1.2 % 1.2 \% 1.2% | 23 | T-A-T | 206,666 |
5.1.0.2. 真实世界数据集。我们构建了一个包含企业和交易的真实世界数据集。HAT [15]是一个用于中国13489家企业破产预测的数据集,包含股东和董事会成员关系。BankSim [57]是一个用于欺诈交易预测的数据集。我们将具有欺诈交易的客户与欺诈企业匹配,而其他客户与合法企业匹配。
表2显示了描述数据集的统计信息,包括节点数、欺诈节点百分比、特征向量长度、关系和边数。合成数据集中的E-E和T-T表示企业节点之间的直接关系和交易节点之间的直接关系,分别。在HAT数据集中,E-S-E表示具有相同股东的两家企业。E-E表示两家企业之间的直接持股关系。E-M-E表示具有相同董事会成员的两家企业。ALL表示前三种关系的总和。在BankSim数据集中, T − A − T \mathrm{T}-\mathrm{A}-\mathrm{T} T−A−T表示我们基于交易金额建立的关系。
5.2. 方法比较
我们通过与以下基线方法比较,评估MultiFraud在欺诈检测方面的性能:
- GraphSage [58]:一种图神经网络,通过从本地邻域采样和聚合特征来学习节点表示。
- GEM [26]:在账户-设备图上的异构GNN,利用攻击者的两个弱点:设备聚合和活动聚合。
- SemiGNN [27]:一种采用分层注意机制用于金融欺诈检测的异构GNN。
- GraphConsis [22]:一种在欺诈检测中使用上下文嵌入、一致性过滤和关系权重的异构GNN,解决了一致性问题。
- RioGNN [59]:一种使用标签感知神经相似度度量和强化学习框架的异构GNN。
- MultiFraud-S:去除多实体嵌入共享组件的消融模型。
5.3. 实验设置和实现
由于数据集极度不平衡,我们使用Macro-F1和AUC作为欺诈检测的评估指标。Macro-F1是合法和欺诈实体的F1分数的未加权平均值。F1分数定义如下:
F 1 = 2 ⋅ 精确度 ⋅ 召回率 精确度 + 召回率 F 1=2 \cdot \frac{\text { 精确度 } \cdot \text { 召回率 }}{\text { 精确度 }+ \text { 召回率 }} F1=2⋅ 精确度 + 召回率 精确度 ⋅ 召回率
表3
MultiFraud的超参数设置。
超参数 | 设置 |
---|---|
学习率 | 0.0003 |
多任务 λ \lambda λ | 0.5 |
嵌入大小 n_hidden | 16 |
卷积层 n_clayer | 2 |
词汇维度 n_vocab | 20 |
LSTM中的隐藏维度 n_lstm | 2 |
循环神经网络层 n_rlayer | 1 |
注意力头数 n_head | 5 |
丢弃率 | 0.2 |
训练轮数 | 200 |
Macro-F1定义如下:
Macro − F 1 = F 1 legal + F 1 fraud 2 -F 1=\frac{F 1_{\text {legal }}+F 1_{\text {fraud }}}{2} −F1=2F1legal +F1fraud
其中 F 1 legal F 1_{\text {legal }} F1legal 是合法类别的 F 1 F 1 F1-score, F 1 fraud F 1_{\text {fraud }} F1fraud 是欺诈类别的 F 1 F 1 F1-score。
AUC定义如下:
A U C = 1 2 ∑ i = 1 m − 1 ( x i + 1 − x i ) ( y i + y i + 1 ) A U C=\frac{1}{2} \sum_{i=1}^{m-1}\left(x_{i+1}-x_{i}\right)\left(y_{i}+y_{i+1}\right) AUC=21∑i=1m−1(xi+1−xi)(yi+yi+1)
其中 y y y是真正例率 ( T P R = T P T P + F N ) \left(T P R=\frac{T P}{T P+F N}\right) (TPR=TP+FNTP), x x x是假正例率 ( F P R = F P F P + T N ) \left(F P R=\frac{F P}{F P+T N}\right) (FPR=FP+TNFP)。
对于MultiFraud,超参数设置如表3所示。我们使用Adam [60]进行模型优化。对于其他基线方法,我们使用网格搜索来调整不同数据集的最佳参数。
RioGNN 3 { }^{3} 3的代码来自作者的原始实现。其他模型的代码来自开源实现DGFraud-TF2 [23]。对于每个数据集,我们应用相同的分区比例,即 68 % 68 \% 68%用于训练, 12 % 12 \% 12%用于验证, 20 % 20 \% 20%用于测试集。对于带有时间信息的交易图,在按时间顺序排序交易后,数据集根据设定的比例进行划分。我们的模型代码和实验数据集可在https://github.com/MultiFraudGNN/MultiFraud 上获取。所有实验在1个A100-SXM4-80GB(80 GB)GPU、32个vCPU AMD EPYC 7763 64核处理器、240 GB RAM上进行。
5.4. 结果
5.4.1. 欺诈类型
实验表明,该系统成功识别了三种供应链应收账款欺诈类型:欺诈交易、自融资和重复融资。欺诈交易指的是对贸易和物流等信息的伪造。自融资意味着借款人和担保人之间存在密切关系,例如与亲戚或朋友有关系,或者受借款人控制。重复融资是指为同一批货物重复开立多张仓单,并通过向多家融资机构重复应收款项获得贷款[61]。为了介绍我们的动机,我们提供了这三种欺诈类型的示例。对于每个示例,我们从业务流程和企业之间的关系(包括股权和股东等)两个角度进行分析。这样做是为了展示在不同欺诈类型下交易图和企业图上的不同行为。
【例2】对于欺诈交易欺诈,我们提供了另一个发生在2021年的自购买和自销售的例子,如图6所示。事件的业务流程如图6(a)所示。中小企业以低价从另一家中小企业购买产品,然后促使其他中小企业以更高的价格回购这些产品。通过这种持续操作,它们伪造应收账款。这些中小企业都是相关实体,如图6(b)中企业图中的相互关系所证明的。
【例3】对于自融欺诈,我们以2021年发生的另一个例子为例,如图7所示。事件的业务流程与常规事件相同,如图7(a)所示。然而,借款人(中小企业A)、融资方(金融机构C)和担保方(核心企业K)是同一集团中的关联方,如图7(b)所示。中小企业A是核心企业A的全资子公司。金融机构C是企业I的全资子公司。企业J和企业I具有相同的法人和董事长。企业K具有与企业J相同的注册电话号码(电话A)和法人(人员C)。企业K是核心企业A的股东之一。该中小企业的执行人(人员D)与金融机构C相同。
【例4】对于重复融资欺诈,我们以2014年发生的一个例子为例,如图8所示。图8.(a)显示中小企业B使用相同的应收账款向几家不同的金融机构申请贷款。在图8(b)中,这些公司之间没有明显的关系。
识别这些欺诈行为是困难的,因为欺诈者试图掩盖和伪装它们,而财务信息庞大、复杂且不平衡。所提出的模型通过从各种信息和关系中学习,并分析关系网络中的多个视图,有效地识别不同类型的欺诈行为。
5.4.2. 欺诈检测基准
为了回答问题1和问题2,我们在表4和表5中呈现了实验结果。
在合成数据集中,MultiFraud的表现优于其他方法,包括混合欺诈数据集和单一类型的欺诈交易、自融和重复融资数据集。结果显示,MultiFraud在供应链金融中的欺诈检测任务中是有效的。
对于基准方法,不同类型的欺诈表现各不相同。就AUC而言,对于欺诈交易、自融和重复融资,表现最佳的基准方法分别是GraphSage、GEM和RioGNN。这表明不同模型在检测不同类型的欺诈行为时具有不同的能力。MultiFraud在所有欺诈类型中均优于其他基准方法,表明所提出的模型在欺诈检测类型上具有更好的适用性。
从不同视角来看,在欺诈交易检测中,GEM模型在大多数欺诈类型中取得了最佳的基准效果,表明不同模型在检测不同实体的欺诈行为时具有不同的能力。MultiFraud在企业和交易欺诈中均取得了最佳效果,表明在面对不同实体的属性和结构特征差异时,所提出的模型具有更好的适用性。
在真实世界数据集中,MultiFraud相对于其他基准方法取得了改进。对于GraphSage和GEM,AUC均为0.5。这是因为类别不平衡,导致它们无法学习有意义的特征,并导致它们将所有交易预测为合法。所提出的模型通过时间建模和特征串联的组合共享不同实体之间的信息。它利用多任务框架来利用不同任务之间的关系。在这个过程中,模型利用来自不同实体的属性和结构信息作为辅助信息,从而增加不同类别特征的独特性。将辅助信息与多任务学习相结合[62]在严重不平衡的真实世界交易数据集中证明是有效的。因此,所提出的模型在一定程度上缓解了类别不平衡问题。
(a)
(b)
图5. 关于欺诈交易的例子1。
(a)
(b)
图6. 关于欺诈交易的例子2。
(a)
(b)
图7. 关于自融的例子3。
(a)
(b)
图8. 关于重复融资的例子4。
图9. 合成数据集中欺诈解释的可视化。 (有关本图例中颜色的解释,请参阅本文的网络版本。)
表4
合成数据集上的实验结果。
混合欺诈 | 欺诈交易 | 自融 | 重复融资 | ||||||
---|---|---|---|---|---|---|---|---|---|
宏观-F1 | AUC | 宏观-F1 | AUC | 宏观-F1 | AUC | 宏观-F1 | AUC | ||
企业 | GraphSage | 0.6515 | 0.6544 | 0.6024 | 0.6937 | 0.5459 | 0.5506 | 0.5536 | 0.5516 |
SemiGNN | 0.5418 | 0.6390 | 0.5378 | 0.6269 | 0.4841 | 0.6012 | 0.5417 | 0.6073 | |
GraphConsis | 0.5495 | 0.5507 | 0.4513 | 0.4814 | 0.5751 | 0.5685 | 0.4838 | 0.5109 | |
RioGNN | 0.6779 | 0.6531 | 0.5643 | 0.5659 | 0.6607 | 0.5955 | 0.6291 | 0.6150 | |
交易 | GraphSage | 0.5776 | 0.5699 | 0.6427 | 0.6190 | 0.5649 | 0.5595 | 0.5938 | 0.5863 |
GEM | 0.7296 | 0.7307 | 0.8869 | 0.9077 | 0.6136 | 0.6116 | 0.8201 | 0.8244 | |
SemiGNN | 0.5118 | 0.6295 | 0.5638 | 0.6726 | 0.5130 | 0.6057 | 0.5026 | 0.6116 | |
GraphConsis | 0.5171 | 0.5298 | 0.4930 | 0.5179 | 0.5348 | 0.5387 | 0.5158 | 0.5253 | |
RioGNN | 0.6057 | 0.5820 | 0.6285 | 0.6518 | 0.6205 | 0.5846 | 0.6295 | 0.6057 |
所提出的模型在企业欺诈检测方面的改进小于在合成数据集上的改进。这是由于真实世界数据集中更复杂的特征和关系。在文献[15]中进行的实验中,不同方法之间的性能差异同样并不十分明显,这与我们实验中观察到的结果一致。
5.4.3. 可解释性
为了回答问题3,我们在图9和图10中呈现了欺诈预测的解释。在可视化中,不同形状表示不同类型的节点,边上不同颜色代表不同类型。边的粗细表示权重,较粗的边表示更重要。此外,节点的颜色代表地面真实标签。
图10. 在真实世界数据集中欺诈解释的可视化。 (有关本图例中颜色的解释,请参阅本文的网络版本。)
表5
真实世界数据集上的实验结果。OOM代表内存不足。
企业 | 交易 | ||||
---|---|---|---|---|---|
宏观-F1 | AUC | 宏观-F1 | AUC | ||
GraphSage | 0.6465 | 0.6303 | 0.4971 | 0.5000 | |
GEM | 0.6436 | 0.6354 | 0.4971 | 0.5000 | |
SemiGNN | OOM | OOM | OOM | OOM | |
GraphConsis | 0.6498 | 0.6338 | 0.5107 | 0.5074 | |
RioGNN | 0.6659 | 0.6612 | 0.5509 | 0.8707 | |
MultiFraud-S | 0.4595 | 0.5122 | 0.8841 | 0.8581 | |
MultiFraud | 0.6974 \mathbf{0 . 6 9 7 4} 0.6974 | 0.7492 \mathbf{0 . 7 4 9 2} 0.7492 | 0.8891 \mathbf{0 . 8 8 9 1} 0.8891 | 0.8792 \mathbf{0 . 8 7 9 2} 0.8792 |
我们在图9中为合成数据集中的节点 e 429 e 429 e429提供了一个解释,该节点是从事重复融资欺诈的企业。解释器有效地捕捉到了连接它与其邻近其他欺诈企业的大多数关键边。此外,得分最高的Att中生成的交易(节点11187)是欺诈的。解释器组件还识别了与交易相关的最可疑边,成功地指出了图案中的关键边。
我们在图10中为真实世界数据集中的企业提供了另一个解释。对于股东关系,连接的企业都是欺诈的。对于董事会成员关系,只有一个连接的企业1668是欺诈的。尽管企业 e 5495 e 5495 e5495是合法的,但通过董事会成员关系与几家欺诈企业相连。从交易角度来看,所选的交易是欺诈的,同时与合法和欺诈交易相连。这些例子展示了MultiFraud在识别可疑实体方面的能力,即使在欺诈被合法实体掩盖的情况下也能做到。
6. 结论
为了扩展图形可解释性到多个图形,以提供完整的画面。实验结果表明,正确检测欺诈并为推导出的结论提供充分解释的有效性。我们还根据对五个数据集的测试,与其他现有基于 GNN 方法进行比较。MultiFraud 在所有欺诈类型和领域的欺诈检测方面,根据 Macro-F1 和 AUC 的标准,都远远优于它们。
供应链金融包含大量待探索的信息,包括文本 [63]、图像和视频等多模态数据。作为一种灵活的框架,未来可以研究更复杂模型的图表示学习。