4. 特征分层体系:特征分层的目的与原则、分层维度与架构图

在反洗钱(AML)风控系统中,特征并非简单堆砌。一个健壮的特征分层体系能够将原始数据、业务逻辑与模型输入解耦,提升特征的可解释性、复用性与维护效率。本章将系统阐述特征分层的目的、核心原则、三个关键维度,并通过架构图直观展示各层之间的协作关系。

4.1 特征分层的目的与原则

4.1.1 分层目的

  • 解耦与隔离:将数据源变更、业务规则调整与模型迭代隔离开,避免一处修改引发全局连锁反应。
  • 提升复用性:同一份基础特征(如“近30天交易总金额”)可被多个模型或规则复用,减少重复开发。
  • 增强可解释性:分层后,业务人员可聚焦于业务逻辑层,数据工程师关注数据源层,模型专家专注模型输入层,各司其职。
  • 降低维护成本:当上游数据源字段变更时,只需在数据源层适配,业务逻辑层与模型输入层不受影响。

4.1.2 分层原则

原则 说明 反例
单向依赖 上层可依赖下层,下层不可反向依赖上层。 模型输入层直接引用原始数据库字段,跳过业务逻辑层。
职责单一 每层只负责特定类型的转换或计算。 在数据源层进行聚合计算(如SUM/AVG),应放在业务逻辑层。
标准化输出 每层输出需有明确的Schema定义与命名规范。 同一字段在不同时间输出不同单位(如“元”与“分”混用)。
可追溯性 每个特征应能追溯到其原始数据源与加工链路。 特征“高风险对手方交易占比”无法回溯到具体对手方名单。
实践建议:在项目初期就建立特征注册表(Feature Registry),记录每个特征的名称、所属层级、数据源、计算逻辑与版本号,这是分层体系落地的基础设施。

4.2 分层维度详解

特征分层体系通常划分为三个核心维度:数据源层、业务逻辑层与模型输入层。每一层承担不同的职责,并遵循特定的加工规范。

4.2.1 数据源层(Data Source Layer)

该层直接对接原始数据系统,负责数据的接入、清洗与基础字段提取。不进行任何聚合或衍生计算。

  • 输入:核心系统(交易系统、客户信息系统、名单系统)的原始表或日志。
  • 输出:标准化后的基础字段,如transaction_id、customer_id、transaction_amount、transaction_time、counterparty_country。
  • 典型操作:字段类型转换、空值填充、异常值截断、时间戳格式化。

4.2.2 业务逻辑层(Business Logic Layer)

该层是风控业务知识的集中体现,将原始字段加工为具有业务含义的特征。所有衍生计算、聚合统计、规则判断均在此层完成。

  • 输入:数据源层输出的标准化字段。
  • 输出:业务特征,如近30天累计交易金额、交易时间熵值、是否命中制裁名单、对手方风险等级。
  • 典型操作:滑动窗口聚合(SUM/COUNT/AVG)、比率计算、名单匹配、行为序列编码。

4.2.3 模型输入层(Model Input Layer)

该层面向机器学习模型或规则引擎,对业务逻辑层输出的特征进行最终加工,确保特征满足模型的输入要求。

  • 输入:业务逻辑层输出的业务特征。
  • 输出:模型可直接消费的特征向量,通常包括数值型、类别型、时序型特征。
  • 典型操作:缺失值填充(策略可不同于数据源层)、标准化/归一化、独热编码、特征选择、特征交叉。
关键区别:数据源层解决“数据有没有、对不对”;业务逻辑层解决“特征代表什么业务含义”;模型输入层解决“模型能不能用、好不好用”。三层不可混淆。

4.3 特征分层架构图

下图展示了AML特征分层体系的完整架构,包含三个核心维度以及它们之间的数据流向与依赖关系。

AML特征分层架构图 AML特征分层架构图 数据源层(Data Source Layer) 交易系统 交易ID / 金额 / 时间 客户信息系统 客户ID / 国籍 / 职业 名单系统 制裁名单 / 负面媒体 外部数据源 工商 / 税务 / 舆情 字段标准化 业务逻辑层(Business Logic Layer) 聚合统计特征 近30天交易总额 / 频次 规则匹配特征 是否命中制裁 / 高风险国家 行为序列特征 交易时间熵 / 对手方分散度 特征工程 模型输入层(Model Input Layer) 数值型特征 标准化 / 归一化 类别型特征 独热编码 / 标签编码 时序型特征 滑动窗口 / 差分 交叉特征 特征组合 / 多项式
架构解读:数据源层提供原始字段(蓝色),业务逻辑层将其加工为具有业务含义的特征(绿色),模型输入层最终转换为模型可消费的格式(紫色)。箭头方向代表数据依赖关系,上层只能调用下层输出,不可反向引用。

4.4 分层体系下的风险控制要点

在实施特征分层时,需关注以下风险控制点,避免分层体系本身成为新的风险源:

风险点 描述 控制措施
数据源层污染 上游系统数据质量差,导致下游所有特征失真。 在数据源层设置数据质量监控(空值率、异常值检测),并建立数据回滚机制。
业务逻辑层漂移 业务规则频繁变更,导致特征分布发生不可控变化。 对业务逻辑层特征进行版本管理,每次变更需经过特征影响面评估。
模型输入层过拟合 模型输入层过度加工,引入未来信息或数据泄露。 严格禁止在模型输入层使用未来数据(如“次日交易金额”),并设置特征回溯验证。
层间依赖混乱 跨层直接调用,破坏单向依赖原则。 通过API或特征存储(Feature Store)强制层间调用规范,禁止直接访问下层数据库。
常见陷阱:部分团队为了追求模型效果,在模型输入层直接引入原始数据源层的字段(如原始交易金额),跳过了业务逻辑层的加工。这会导致模型难以解释,且当业务含义发生变化时(如货币单位调整),模型需要重新训练。务必坚持“数据源层 → 业务逻辑层 → 模型输入层”的完整链路。

4.5 分层体系落地检查清单

在完成特征分层设计后,建议使用以下清单进行自查,确保体系完整且可执行:

  1. 数据源层:是否所有原始字段都有明确的Schema定义?是否建立了数据质量监控规则?
  2. 业务逻辑层:每个业务特征是否有对应的业务文档说明?是否记录了计算逻辑的版本?
  3. 模型输入层:特征是否经过缺失值处理与标准化?是否验证过特征与目标变量之间的时间顺序?
  4. 跨层依赖:是否存在上层直接调用下层未加工数据的情况?是否通过Feature Store统一管理特征?
  5. 可追溯性:能否从模型输入层的任意一个特征,追溯到其数据源层的原始字段与业务逻辑层的加工步骤?