发布于: Oct 30, 2022

欺诈用户与恶意账户每年可能给企业造成数十亿美元的营收损失。尽管不少企业已经在使用基于规则的筛选器防止系统中存在的各类恶意活动,但这类筛选器往往相当脆弱,而且无法捕捉到全部恶意行为。

在另一方面,也有部分解决方案(例如图技术)在检测欺诈者与恶意用户方面表现突出。欺诈者可以调整自身活动以骗过基于规则的系统或者基于特征的简单模型,但却很难伪造图结构,特别是用户与事务/交互日志中其他实体之间的关系。图神经网络(GNN)能够将图结构中的信息同用户或事务的属性相结合,从中提取出有意义的表示形式,最终将恶意用户及事件同合法用户及事件明确区分开来。

本文展示了如何使用 Amazon SageMaker Deep Graph Library(DGL) 训练 GNN 模型,进而检测恶意用户或欺诈事务。希望使用全托管 Amazon AI 服务以实现欺诈检测的用户,也可以考虑使用 Amazon Fraud Detector 以显著降低对潜在欺诈性在线活动(例如创建伪造账户或者在线支付欺诈)的识别难度。

在本文中,我们将重点介绍如何使用 Amazon SageMaker 进行数据预处理以及模型训练。要训练一套 GNN 模型,您首先需要使用交易表或者访问日志中的信息构建起一套异构图。所谓异构图,是指包含不同类型的节点与边的图。如果以节点代表用户或者事务,则各节点将可反映当前用户与其他用户或者实体(例如设备标识符、机构、应用程序、IP 地址等)之间的多种不同关系。

下面来看适用于这套解决方案的部分用例:

  • 各用户之间,以及用户与特定金融机构或应用程序之间进行交易的金融网络。
  • 用户与其他用户、乃至不同游戏或设备之间持续交互的游戏网络。
  • 用户与其他用户间拥有多种不同类型链接的社交网络。
下图所示,为异构金融交易网络的基本架构
GNN 能够合并用户特征(例如人口统计信息)或者交易特征(例如活动频率)。换句话说,您可以使用节点与边的特征作为元数据,借此丰富异构图表示。在完成异构图中的节点与关系及其关联特征的建立工作之后,大家就可以训练 GNN 模型,引导其学习如何使用节点或边特征、外加图结构,将不同节点归类为恶意或者合法节点。模型训练以半监督方式完成——图中需要有一部分节点被预先标记为欺诈或者合法节点。将包含这些标记的子集作为训练信号,我们可以让 GNN 模型逐渐摸索出最优参数搭配。而后,经过训练的 GNN 模型即可预测图中剩余的其他未标记节点。
首先,我们可以使用 Amazon SageMaker 的完整解决方案架构运行处理作业与训练作业。大家可以使用能够对 Amazon Simple Storage Service (Amazon S3) put 事件做出响应的 Amazon Lambda 函数自动触发 Amazon SageMaker 作业,或者通过在示例 Amazon SageMaker notebook 中运行的单元以手动触发相应作业。下图为这套架构的直观表示:

完整实现可通过 GitHub repo 获取,其中还带有一套 Amazon CloudFormation 模板,用于在您的 Amazon Web Services 账户中启动整套架构。

相关文章