4、特征工程总览:特征分类、生命周期管理与金融核心原则

特征工程是金融推荐系统的“地基工程”。在信贷、理财、保险等金融场景中,特征不仅决定模型上限,更直接关系到风险控制、用户体验与合规审计。本章从特征分类体系、生命周期管理机制、金融领域三大核心原则(可解释性、稳定性、时效性)三个维度展开,帮助读者建立金融特征工程的全局视图。

金融推荐系统特征工程总览 特征分类体系 用户特征 年龄/收入/职业/风险偏好 历史借贷/投资行为/App使用 物品特征 收益率/期限/风险等级 发行方/底层资产/历史表现 交叉特征 用户×物品匹配度 渠道×时段×人群组合 时序特征 近30天登录频次/金额趋势 统计特征 均值/方差/分位数/偏度 外部特征 LPR/CPI/市场指数/舆情 特征生命周期管理 需求分析 开发验证 上线监控 退役下线 持续迭代反馈 • 覆盖率 / 空值率 / 分布漂移(PSI) • 特征重要性衰减 / 延迟监控 • 数据质量告警 / 口径变更记录 金融特征工程三大核心原则 可解释性 • 特征含义清晰,可向监管/用户说明 • 避免黑盒构造(如无意义ID嵌入) • 支持SHAP/LIME归因分析 • 满足《个人信息保护法》解释权要求 稳定性 • 分布漂移监控(PSI<0.1为稳定) • 特征口径变更需灰度+回测 • 周期性重训练与特征衰减评估 • 极端行情下特征鲁棒性测试 时效性 • T+0实时特征(点击/浏览/搜索) • T+1准实时(交易/转账/还款) • 月度/季度低频(收入/资产证明) • 特征延迟与新鲜度分级管理 特征工程 = 业务理解 × 数据治理 × 模型反馈

4.1 特征分类体系:五维全景视角

4.1.1 核心原理:从业务实体到特征抽象

金融推荐系统的特征可归纳为五大类:用户特征、物品特征、交叉特征、时序特征、统计特征。分类的核心逻辑是:用户特征回答“谁在投”,物品特征回答“投什么”,交叉特征回答“是否匹配”,时序特征回答“趋势如何”,统计特征回答“分布怎样”。这五类特征共同构成模型输入的完整画像。

特征类别 典型示例 数据来源 更新频率 金融场景注意事项
用户特征 年龄、收入、风险测评等级、持仓总额 注册信息、KYC、交易系统 低频(月/季) 敏感信息需脱敏,风险等级需合规
物品特征 年化收益率、期限、风险等级、起投金额 产品管理系统、发行方报送 中频(日/周) 收益率为历史值,不代表未来
交叉特征 用户风险等级×产品风险等级、渠道×时段 特征拼接、模型组合 随基础特征更新 避免维度爆炸,需做特征选择
时序特征 近7天登录次数、近30天申购金额趋势 行为日志、交易流水 高频(实时/T+1) 需处理节假日、月末效应
统计特征 历史收益均值、波动率、最大回撤 行情数据、历史业绩 中频(日) 统计窗口需业务语义对齐

4.1.2 判断方法:如何选择特征类型

  1. 按业务目标拆解:推荐理财产品的核心目标是“匹配用户风险偏好与产品风险等级”,因此交叉特征(用户风险等级×产品风险等级)是必选。
  2. 按数据可得性:实时行为数据(点击、浏览)适合构建高频时序特征;资产证明等低频数据适合构建静态用户特征。
  3. 按模型可解释性需求:信贷风控场景优先使用业务含义明确的特征(如收入、负债率),避免使用难以解释的复杂交叉特征。

4.1.3 案例拆解:某银行理财推荐的特征组合

某股份制银行理财APP的推荐系统,初期仅使用用户基本属性(年龄、性别)和产品收益率排序,点击率仅3.2%。加入五维特征后,点击率提升至7.8%。具体做法:

  • 用户特征:风险测评等级(保守型/稳健型/进取型)、近3个月AUM(资产管理规模)均值。
  • 物品特征:产品风险等级(R1-R5)、业绩比较基准、最短持有期。
  • 交叉特征:用户风险等级与产品风险等级的差值(0表示匹配,正数表示用户风险承受力高于产品风险)。
  • 时序特征:近7天用户浏览理财频次、近30天申购金额的环比变化率。
  • 统计特征:产品近6个月收益率的年化波动率、最大回撤。

关键发现:“风险等级差值”特征的重要性排名第一,说明交叉特征在金融场景中具有强预测力。

常见误区:部分团队盲目堆砌交叉特征,导致特征维度从100维膨胀到5000维,模型过拟合且难以解释。建议:交叉特征需基于业务假设(如“风险匹配度”),而非纯数据挖掘。

4.2 特征生命周期管理:从需求到退役

4.2.1 核心原理:特征也是“产品”

特征生命周期管理借鉴软件工程理念,将特征视为需要持续维护的“产品”。完整生命周期包括:需求分析 → 开发验证 → 上线监控 → 退役下线四个阶段。每个阶段都有明确的交付物和评审标准。

4.2.2 操作流程:四阶段管理规范

阶段 关键活动 交付物 评审标准
需求分析 业务方提出需求,明确特征含义、口径、更新频率 特征需求文档(FRD) 业务价值明确,口径无歧义
开发验证 数据探查、特征计算、离线回测、AB测试 特征代码、回测报告 离线AUC提升≥0.5%,线上AB显著
上线监控 实时监控覆盖率、空值率、PSI、延迟 监控看板、告警规则 PSI<0.1,覆盖率≥95%
退役下线 评估特征贡献度,确认可下线后清理代码与存储 下线评审记录 特征重要性排名后10%且无业务价值

4.2.3 实战场景:特征口径变更的灰度发布

某基金销售平台将“用户月收入”特征的口径从“税后收入”调整为“税前收入”。若直接全量切换,可能导致模型输出剧烈波动。正确做法:

  1. 并行计算:新旧口径特征同时产出,离线对比分布差异(KS检验)。
  2. 影子模式:新特征在线上“影子运行”1周,不参与实际推荐,仅记录预测差异。
  3. 灰度切换:先对5%流量启用新特征,观察点击率、申购转化率、客诉率。
  4. 全量上线:灰度7天无异常后全量切换,并保留回滚开关。

结果:新旧口径下PSI为0.08(稳定),点击率提升0.3%,无客诉。若PSI>0.2,则需回滚并重新评估特征构造。

经验提醒:特征生命周期管理的关键是“文档化”。每个特征必须有唯一ID、口径说明、负责人、更新日志。否则半年后无人能解释特征含义,成为“僵尸特征”。

4.3 金融特征工程三大核心原则

4.3.1 可解释性:合规与信任的基石

金融行业受强监管约束,模型决策需可追溯、可解释。特征层面的可解释性要求:每个特征都能用业务语言向监管或用户解释。例如,“用户近30天申购金额的变异系数”虽然统计上有效,但业务解释困难,应谨慎使用。

实操建议:

  • 优先使用业务语义明确的特征(如“资产负债率”优于“特征A_123”)。
  • 对连续特征做分箱时,分箱边界需有业务含义(如“月收入<5000元”为低收入组)。
  • 使用SHAP值输出特征贡献度,便于向用户解释“为什么推荐这款产品”。

4.3.2 稳定性:穿越周期的可靠性

金融市场的周期性波动会直接影响特征分布。例如,2022年股市下跌导致“用户股票持仓比例”特征分布大幅左移。稳定性管理包括:

  • PSI监控:每周计算特征PSI,PSI>0.25需告警并排查原因。
  • 特征衰减评估:每月计算特征重要性排名变化,排名下降超过50%需分析是否因市场环境变化。
  • 极端场景测试:用2020年疫情、2022年债市大跌等历史极端数据回测特征表现。

4.3.3 时效性:金融数据的“保鲜期”

不同特征的有效期差异巨大:

时效等级 更新频率 典型特征 技术实现
T+0实时 秒级/分钟级 当前浏览产品、搜索关键词 Flink/Kafka流式计算
T+1准实时 每日 昨日持仓收益、近3日登录天数 离线批处理(Hive/Spark)
低频 周/月/季 收入证明、征信报告、风险测评 定时任务+人工审核

时效性管理的关键是“特征新鲜度分级”:实时特征用于捕捉用户即时意图,低频特征用于刻画长期画像。若将低频特征用于实时推荐,会导致推荐结果滞后;反之,将实时特征用于月度风控模型,则噪声过大。

总结复盘:金融特征工程的核心不是“特征越多越好”,而是“在可解释、稳定、时效达标的前提下,构建有业务含义的特征体系”。建议团队建立特征清单(Feature Store),统一管理特征口径、版本、监控指标,实现跨团队复用。