2. 图谱数据模型:节点与边的定义、属性设计、关系类型

反欺诈图谱的核心在于将离散的实体与行为通过图结构组织起来,从而揭示隐藏的团伙关联。本章将系统定义图谱中的节点(Vertex)与边(Edge),并详细说明属性设计与关系类型,为后续的阈值分层奠定数据基础。

2.1 节点定义与属性设计

节点代表图谱中的独立实体。在反欺诈场景中,最常见的节点类型包括设备、IP地址、手机号、账号和身份证号。每个节点都承载一组关键属性,用于后续的规则计算与风险评分。

节点类型 节点标识(ID) 核心属性 属性说明
设备(Device) 设备指纹(如 IDFA、IMEI、OAID) device_type, os_version, first_seen_time, risk_score 设备型号、操作系统版本、首次出现时间、当前风险分
IP地址(IP) IP 字符串(如 192.168.1.1) ip_type, isp, geo_city, proxy_score, abuse_count IP类型(数据中心/住宅)、运营商、地理位置、代理评分、历史滥用次数
手机号(Phone) 手机号码(如 13800138000) carrier, region, registration_time, is_virtual 运营商、归属地、注册时间、是否为虚拟运营商号段
账号(Account) 用户 ID(如 user_12345) register_ip, register_device, register_phone, level, status 注册IP、注册设备、注册手机号、账号等级、状态(正常/冻结/封禁)
身份证号(IDCard) 身份证号码(如 110101199001011234) age_range, gender, region, verified_time 年龄段、性别、户籍地、实名认证时间
设计要点:节点ID必须保证全局唯一且不可变。属性设计应遵循“最小必要原则”,只存储与反欺诈直接相关的字段,避免冗余数据拖慢图查询性能。

2.2 边定义与关系类型

边代表节点之间的关联关系。在反欺诈图谱中,边通常由共现行为或归属关系触发。每条边都带有关系类型和权重,权重越高,代表两个实体之间的关联越紧密。

2.2.1 核心关系类型

关系类型 源节点 → 目标节点 触发条件 边属性示例
共设备 账号 → 设备 同一账号在该设备上登录或操作 first_time, last_time, login_count, action_type
共IP 账号 → IP 同一账号使用该IP发起请求 first_time, last_time, request_count, ip_change_freq
共手机号 账号 → 手机号 账号绑定或验证该手机号 bind_time, is_primary, verify_method
共身份证 账号 → 身份证 账号完成实名认证时使用该身份证 verify_time, auth_channel, is_self
设备共IP 设备 → IP 设备在某一时刻连接该IP first_seen, last_seen, session_count

2.2.2 边权重计算规则

边的权重直接影响图谱中团伙发现的准确性。以下为常见的权重计算方式:

  • 频次权重:基于共现次数计算,次数越高权重越大。例如:同一设备上登录了10个账号,则每对“账号-设备”边的权重为10。
  • 时间衰减权重:近期共现的权重高于历史共现。公式:weight = base_weight * exp(-λ * days_since_last_event)。
  • 稀有性权重:稀有IP(如数据中心IP)的共现权重高于常见住宅IP。例如:一个IP关联了100个账号,则每个边的权重为 1/log(100+1)。
实战经验:在阈值分层中,边权重是区分“偶然关联”与“强关联”的关键指标。建议将权重归一化到 [0, 1] 区间,便于后续设定统一阈值。

2.3 图谱数据模型总览(SVG)

下图展示了反欺诈图谱的完整数据模型,包含5种节点类型和5种关系类型。箭头方向代表关联方向,边上的标签表示关系类型。

反欺诈图谱数据模型总览 反欺诈图谱数据模型总览 账号 (Account) 设备 (Device) IP地址 (IP) 手机号 (Phone) 身份证 (IDCard) 共设备 共IP 共手机号 共身份证 设备共IP 说明:箭头方向表示关联方向,边上的标签为关系类型。所有边均携带时间戳、频次等属性用于权重计算。 节点颜色区分实体类型,便于在可视化工具中快速识别。

2.4 关系类型与阈值分层的映射

不同的关系类型在阈值分层中具有不同的敏感度。下表展示了常见关系类型对应的初始阈值区间:

关系类型 低风险阈值 中风险阈值 高风险阈值 说明
共设备 ≤ 3 个账号/设备 4 ~ 10 个账号/设备 > 10 个账号/设备 设备是团伙聚集的高发载体
共IP ≤ 5 个账号/IP 6 ~ 20 个账号/IP > 20 个账号/IP 需排除NAT出口等正常场景
共手机号 ≤ 2 个账号/手机号 3 ~ 5 个账号/手机号 > 5 个账号/手机号 手机号通常为强绑定关系
共身份证 1 个账号/身份证 2 个账号/身份证 > 2 个账号/身份证 身份证为最高级别实名凭证
注意:上述阈值为初始推荐值,实际业务中需根据历史数据分布进行动态调整。例如,校园网场景下的共IP阈值应适当放宽,而金融交易场景下的共设备阈值应更加严格。

2.5 边属性与时间窗口设计

每条边除了关系类型外,还需要记录时间窗口信息,用于判断关联的有效性。常见的时间窗口设计包括:

  • 滑动窗口:只统计最近 N 天内的共现行为(如最近7天、30天)。适用于高频变化的IP和设备关联。
  • 固定窗口:按自然月或自然周统计。适用于周期性审核场景。
  • 累计窗口:从首次出现至今的全量统计。适用于身份证、手机号等强绑定关系。

边属性中必须包含以下字段:

{
  "edge_id": "unique_edge_identifier",
  "source_node": "node_id_A",
  "target_node": "node_id_B",
  "relation_type": "share_device | share_ip | share_phone | share_idcard",
  "first_seen": "2025-01-01T00:00:00Z",
  "last_seen": "2025-03-01T00:00:00Z",
  "frequency": 15,
  "weight": 0.85,
  "window_type": "sliding_7d",
  "extra_attrs": {}
}
最佳实践:在构建图谱时,建议将边属性存储为 JSON 格式,便于后续扩展。同时,为每条边建立时间索引,以支持高效的时间范围查询。

2.6 图谱数据模型与阈值分层的联动(SVG)

下图展示了图谱数据模型如何与阈值分层系统联动。从原始数据到节点/边构建,再到权重计算与阈值判定,最终输出风险评分。

图谱数据模型与阈值分层联动流程 图谱数据模型与阈值分层联动流程 原始数据 日志 / 埋点 / 业务库 节点与边构建 实体提取 / 关系映射 权重计算 频次 / 时间衰减 / 稀有性 阈值分层判定 低 / 中 / 高风险分层 风险评分输出 流程说明:原始数据经过实体提取构建节点与边,计算权重后进入阈值分层判定,最终输出风险评分。

2.7 本章小结

  • 节点设计:设备、IP、手机号、账号、身份证是反欺诈图谱的五大核心节点,每个节点需携带唯一标识和关键属性。
  • 边设计:共设备、共IP、共手机号、共身份证、设备共IP是五大核心关系类型,每条边需记录时间窗口和权重。
  • 权重计算:频次、时间衰减、稀有性是三种主流权重计算方式,权重归一化后便于阈值分层。
  • 阈值映射:不同关系类型对应不同的初始阈值区间,需结合业务场景动态调整。
  • 联动流程:从原始数据到节点/边构建,再到权重计算与阈值判定,形成完整的反欺诈图谱分析链路。