Docs 菜单
Docs 主页
/ /
/ / /

使用MongoDB进行欺诈检测

此参考架构描述了如何使用操作ACID 事务数据、向量嵌入和动态风险模型在MongoDB Atlas上实现实时欺诈检测。

该架构摄取事务,生成嵌入以捕获行为模式,使用MongoDB Atlas Vector Search 检索类似的历史事件,并将相似度分数与确定性风险模型相结合,以做出批准、升级挑战或拒绝的决策。风险模型和关注列表存储在MongoDB集合中。 MongoDB Change Streams将更新实时传播到筛选服务,以便生产决策始终使用最新的逻辑。

欺诈检测参考架构
点击放大

图 1。欺诈检测参考架构

  1. 事务启动

    支付渠道(示例卡授权、账户到账户转账或数字钱包)向欺诈检测API发送ACID 事务请求。该请求包括客户标识符、商户数据、渠道元数据、设备指纹、 IP信息以及金额、货币和时间戳等基本ACID 事务属性。

  2. 事务丰富性和持久性

    欺诈检测服务验证请求并将ACID 事务文档写入MongoDB Atlas中的事务集合。每个文档都嵌入了商家详细信息、 GeoJSON位置、设备信息以及存储分数、标志和诊断信息的嵌套 risk_assessment 结构。

  3. 行为模式的嵌入生成

    该服务生成一个向量嵌入,用于捕获ACID 事务的类别和行为方面,例如商户类别、渠道、设备指纹、 IP范围、时间模式和任何叙述字段。它将这种嵌入与操作字段一起存储在同一ACID 事务文档中。

  4. 对类似欺诈模式进行向量搜索

    该服务针对事务集合上的MongoDB Atlas Vector Search索引发出 $vectorSearch查询。该查询使用新生成的嵌入来检索行为类似的过去事务,包括与显式规则不匹配但与已知欺诈行为股票模式的事件。

  5. 确定性风险模型评估

    与上一步中的向量搜索并行,风险引擎通过仍在嵌入之外的数字和结构化属性(例如金额、余额变化、速度计数器和地理空间约束)评估基于规则和记分卡式的模型。这种分离使数字限制和监管阈值保持在确定性逻辑中,而嵌入则侧重于行为相似性。

  6. 风险评分聚合和决策

    该服务将向量相似度分数与确定性风险分数相结合,对ACID 事务进行总体风险评估。根据配置的阈值和策略,引擎:

    • 批准低风险交易并将其返回支付渠道。

    • 拒绝高风险交易

    • 对边界案例发出升级挑战(示例3-D Secure、OTP 或生物识别),并可选择将拒绝或挑战失败的案例路由到手动查看队列,以便调查人员跟进。

    最终决策和支持诊断将写回到ACID 事务记录的Risk_assessment 子文档中。

  7. 使用 Change Streams 进行实时风险模型更新

    风险模型、关注列表和配置文档存储在MongoDB Atlas 的专用 risk_models集合中。 MongoDB Change Streams向欺诈检测和风险引擎服务广播变更事件,包括这些集合中的插入、更新、替换和删除。当分析师激活或调整模型时,所有筛选引擎都会在几毫秒内收到更改,并将更新后的规则应用新事务,而无需批处理延迟或手动缓存失效。恢复令牌允许服务重新启动处理,而不会在发生故障或重新启动后丢失更新。

  8. 审核、监控和下游处理

    核心支付系统处理已批准的交易,而被拒绝或受到质疑的交易仍保留在具有详细风险诊断的交易集合中。分析师和监控作业查询同一集合,以追踪一段时间内的模型性能、误报和新出现的欺诈模式。

使用 MongoDB Atlas作为现代数据平台进行欺诈检测,在单个托管集群中托管操作、分析和配置数据。

MongoDB Atlas将欺诈决策所需的所有数据保留在靠近ACID 事务的位置,而无需提取、转换和加载 (ETL) 到从节点(secondary node from replica set)存储以进行分析或调查。

建议的方法

  • 存储用于实时决策的客户、ACID 事务和风险配置数据。

  • 支持分析、仪表盘和调查等从节点(secondary node from replica set)工作负载,无需 ETL。

实施说明

  • 首先针对生产或大规模演示工作负载使用Atlas M10 或更高版本。

  • 使用副本集(Atlas默认),以便您可以启用变更流并为并发读取工作负载提供服务。

设计一个文档模式,使欺诈决策所需的所有数据接近ACID 事务,同时仍然支持以实体为中心和以配置为中心的视图。

建议的方法

  • 实体/客户集合

    • 存储具有 360 度配置文件的个人和组织:标识符、了解客户 (KYC) 属性、行为分析、风险评估和用于实体相似性的可选嵌入。

    • 嵌入或引用设备指纹、常用位置和行为模式,以支持异常检查,例如“新设备”或“异常位置”。

  • 事务集合

    • 将每笔金融ACID 事务表示为一个独立运行的文档,其中包含金额、货币、商家、 GeoJSON位置、设备信息和嵌入式 risk_assessment 子文档(分数、级别、标志、诊断)。

      • 这种模式允许欺诈引擎写入决策和诊断直接写入下游工具查询的ACID 事务记录中。

  • 风险模型/配置集合

    • 将版本化风险模型存储为包含因子、权重、阈值和性能指标的文档。使用此集合作为欺诈评分的单一配置源。

有关更多详细信息,请参阅:数据模型方法 — 金融犯罪缓解。

使用MongoDB Atlas Vector Search 检测行为类似于已知欺诈模式或历史高风险事件的事务,即使它们与显式规则不匹配。

建议的方法

  • 在ACID 事务文档上存储高维嵌入,捕获行为信号,例如商家类别、渠道、设备、时间模式和叙述文本。

  • 使用 $vectorSearch 检索每个新事件的最相似的历史事务,然后将相似度分数输入风险引擎。

实施说明

  • vector_embeddingtransactions 集合中的 字段上创建向量索引(示例transaction_vector_index)。

  • 为存储的事务和需要比较的新的、进行中的事务生成一致的嵌入。

实施欺诈评分服务,该服务使用MongoDB文档并将实体上下文、确定性规则和向量相似度组合成单个风险评分。没有一种检测策略可以捕获所有欺诈行为。分层评分可减少误报和漏报。

建议的方法

  • 从MongoDB加载客户或实体配置文件,以获取行为基线和上下文。

  • 对以下内容运行独立检查:

    • 与该客户的典型金额相比,金额异常。

    • 使用与通常位置的地理空间距离来判断位置异常。

    • 基于已知设备和IP范围的设备异常。

    • 在滑动时间窗口中使用计数的速度异常。

    • 使用向量搜索结果的行为相似性(可选,取决于范围)。

  • 将因子得分和基线客户风险得分合并为 0-100 风险得分,并映射到 lowmediumhigh 级别。

实施说明

  • 将这些检查封装在专用服务(示例FraudDetectionService)中,而不是在控制器中嵌入逻辑,这样您就可以跨渠道和工作负载重复使用。

公开包装风险引擎和MongoDB访问权限模式的服务 API。

建议的方法

  • 提供将事务及其 risk_assessment 文档写入MongoDB 的持久并评分操作(示例,等效的 POST /transactions)。

  • 提供无状态评估操作,在不持久化ACID 事务的情况下运行风险引擎,这对于模拟或预授权检查非常有用。

  • 提供读取端点以浏览最近的高风险事务、按标志过滤以及检索客户级历史记录以进行调查。

实施说明

  • 使用 OpenAPI 或类似工具描述这些端点,以便渠道团队(移动、Web、核心银行业务)能够一致地进行集成。

  • 将MongoDB查询(筛选器、聚合、$vectorSearch)保留在服务层抽象中,而不是在控制器中。

使用MongoDB Change Streams和专用配置集合来实时管理和分发风险模型更改。

建议的方法

  • 将风险模型保留为完整文档,包括因素定义、权重、阈值和状态(示例,activedraftarchived)。

  • 提供模型管理API和用户界面,以便风险团队无需更改代码即可激活模型并对其进行版本控制。

  • 使用 Change Streams 通过 WebSocket 或类似方式将模型更改推送到欺诈服务和用户界面,以便所有组件立即应用相同的活动模型。

集成嵌入提供商(示例,AWS 基岩)以生成事务和欺诈模式的向量表示。

建议的方法

  • 从ACID 事务上下文(金额、商家、渠道、设备、文本字段)生成嵌入,并将它们作为文档模式的一部分存储在MongoDB中。

  • 为欺诈模式描述或类型生成嵌入,并将其存储在 fraud_patterns集合中,从而支持基于模式的向量搜索。

实施说明

  • 该模式支持任何返回与Atlas Vector Search兼容的确定性高维嵌入的提供商。

  • 延迟与模型复杂性:嵌入生成和向量搜索增加了决策路径的延迟。对于延迟预算严格的通道,您可以简化嵌入、降低维度,或仅对高价值或高风险分段应用语义匹配,同时对低风险流量运行纯确定性规则。

  • 索引大小和操作开销:高维向量索引和丰富的ACID 事务文档增加了存储和计算要求。规划Atlas 集群大小、索引配置和存档策略,以平衡检索质量、操作工作负载负载性能和费用。使用标准索引和2 dsphere 索引进行操作查询和地理空间规则,并为行为相似性增加明显检测价值的场景保留向量搜索。

  • 配置管理复杂性:通过变更流流式传输风险模型更新可提高响应速度,但会增加配置管理和测试的复杂性。您必须为新模型设计明确的升级工作流程、验证步骤和回滚程序,以便实时更新不会将不正确的规则传播到生产筛选引擎。

  • 范围限制:该架构专注于事务流的实时欺诈检测。对身份验证、反洗钱 (AML) 和 KYC 入门以及长期运行的案例管理使用单独但相关的模式,并通过共享集合或集成点将它们连接起来,而不是用所有金融犯罪用例使欺诈管道超载。

要端到端实现此架构,请访问MongoDB Atlas架构中心解决方案 使用MongoDB Atlas缓解金融犯罪 。使用本指南配置您的环境,并按照分步说明部署ACID 事务模拟器、Web 界面以及用于欺诈检测和风险模型管理的支持服务。该解决方案还包含减少金融犯罪的其他功能。

后退

操作数据层

在此页面上