1. 变量衍生概述
1.1 什么是变量衍生
变量衍生(Feature Engineering / Variable Derivation)是指从原始数据中通过数学变换、统计聚合、业务逻辑组合等方式,构造出新的、对模型预测更有帮助的特征变量的过程。它是数据挖掘和机器学习建模中最具创造性的环节之一。
核心定义:变量衍生 = 原始数据 → 业务理解 + 数学变换 → 新特征变量
常见的变量衍生方式包括:
- 数学变换:对数、平方根、Box-Cox 变换等,用于修正数据分布偏态。
- 统计聚合:按用户ID计算近30天交易金额的均值、最大值、标准差等。
- 组合交叉:年龄×收入、消费金额/消费次数等比率型变量。
- 时间窗口:过去7天、30天、90天的行为统计量。
- 业务规则:根据风控策略、营销规则构造的专家变量。
1.2 为什么需要变量衍生
原始数据往往以最基础的形式存在,直接输入模型通常无法充分挖掘数据中的信息。变量衍生的必要性体现在以下五个方面:
| 维度 | 原始数据问题 | 变量衍生解决方式 |
|---|---|---|
| 信息密度 | 单字段信息量低,难以区分好坏样本 | 通过聚合、组合提升特征区分度 |
| 分布形态 | 长尾分布、偏态严重,模型难以拟合 | 对数变换、分箱等使分布更接近正态 |
| 非线性关系 | 线性模型无法捕捉交互效应 | 构造交叉特征、多项式特征 |
| 时间动态 | 静态快照无法反映行为趋势 | 时间窗口统计、差分、增长率 |
| 业务知识 | 纯统计特征缺乏业务解释性 | 专家规则变量、比率型指标 |
经验法则:在信贷风控、用户增长等场景中,经过良好衍生的特征集往往比原始特征集提升模型 AUC 5%~15%,且对异常值更鲁棒。
1.3 变量衍生在建模流程中的位置
变量衍生位于数据预处理之后、特征筛选与模型训练之前,是整个建模流程中承上启下的关键环节。以下流程图清晰展示了其位置:
1.4 变量衍生与分箱的关系
变量衍生和分箱(Binning)在建模流程中紧密配合,通常按以下顺序执行:
- 先衍生:从原始数据构造出有业务含义的新变量。
- 后分箱:对连续型衍生变量进行离散化,增强模型稳定性和解释性。
- 再编码:将分箱结果转换为WOE编码或哑变量,供模型使用。
常见误区:有些建模者跳过变量衍生直接对原始特征分箱,导致丢失大量交互信息和聚合信息。正确的做法是先充分衍生,再对衍生后的特征进行分箱优化。
1.5 变量衍生的核心原则
| 原则 | 说明 | 反例 |
|---|---|---|
| 业务驱动 | 衍生方向应基于业务逻辑,而非盲目穷举 | 对无关字段做大量无意义交叉 |
| 信息增益 | 每个衍生变量应带来新的区分能力 | 衍生出与原始变量高度共线的特征 |
| 稳定性 | 衍生变量的分布应在时间上保持相对稳定 | 使用未来信息构造的变量 |
| 可解释性 | 变量含义应能被业务人员理解 | 高阶多项式组合且无业务含义 |
| 计算效率 | 衍生逻辑应能在生产环境中高效计算 | 需要全表扫描的复杂窗口函数 |
在接下来的章节中,我们将深入讲解每种变量衍生方法的具体实现、分箱策略以及实战代码示例,帮助你在模型训练前构建出高质量的特征体系。