变量与特征工程:变量的定义与分类
在授信决策引擎中,变量是策略规则的最小计算单元,而特征工程是将原始数据转化为可驱动决策的高价值信号的过程。本章将系统梳理变量的定义、分类体系,并阐述特征工程在策略编排中的核心地位,最后讲解变量映射与标准化的工程实现。
一、变量的定义与分类
变量(Variable)是对借款人某一维度特征的量化描述,是策略规则中“条件判断”的直接操作对象。根据数据来源与加工深度,变量可分为三大类:
| 变量类型 | 定义 | 典型示例 | 数据来源 |
|---|---|---|---|
| 基础变量 | 从原始数据源直接提取,未经任何加工计算的字段 | 年龄、性别、身份证号、申请金额、职业代码 | 申请表、征信报告、内部系统 |
| 衍生变量 | 基于一个或多个基础变量,通过数学运算、逻辑组合、时间窗口聚合等方式构造的新变量 | 近6个月平均月收入、信用卡使用率、近3个月查询次数 | 基础变量加工、行为数据聚合 |
| 外部数据变量 | 从第三方数据服务商或外部系统获取的变量,通常以接口或文件形式接入 | 多头借贷指数、黑名单命中标记、反欺诈评分、工商信息 | 外部数据源(百行、同盾、鹏元等) |
变量分类原则: 基础变量是“原料”,衍生变量是“半成品”,外部数据变量是“外购件”。在策略编排时,优先使用衍生变量和外部变量,因为它们通常具有更强的区分能力和稳定性。
二、特征工程在策略中的重要性
特征工程(Feature Engineering)是将原始变量转化为更能体现借款人信用风险特征的过程。在授信决策引擎中,特征工程直接决定了策略规则的区分能力、稳定性和可解释性。
- 提升区分度: 原始变量往往存在大量噪声,通过特征工程可以提取出与违约强相关的信号。例如,将“月收入”与“月还款额”组合为“债务收入比(DTI)”,其区分能力远高于单独使用收入变量。
- 增强稳定性: 单一变量可能随时间波动剧烈,通过窗口聚合(如近3个月均值)或比率变换,可以平滑短期波动,使策略规则更鲁棒。
- 满足业务约束: 监管合规、产品定价、风险偏好等业务要求,往往需要特定形式的变量。例如,监管要求对“多头借贷”进行量化,就需要将“近7天申请平台数”等衍生变量纳入策略。
- 降低计算复杂度: 好的特征工程可以减少策略规则中不必要的条件分支,使决策流图更简洁,引擎执行效率更高。
实战经验: 在策略开发中,特征工程通常占据60%以上的工作量。一个经过精心设计的衍生变量,往往比增加10条简单规则更能显著提升模型AUC或策略通过率。
三、变量映射与标准化
变量映射与标准化是策略编排前的关键预处理步骤,确保不同来源、不同量纲的变量能够在统一的决策引擎中正确计算和比较。
3.1 变量映射
变量映射(Variable Mapping)是指将外部数据源或异构系统中的字段名、格式、取值逻辑,转换为引擎内部统一变量标识符的过程。常见的映射场景包括:
- 字段名映射: 外部数据源返回
id_card_no,引擎内部变量名为id_number,需建立映射关系。 - 取值映射: 性别字段外部为
M/F,引擎内部要求1/0,需做值转换。 - 缺失值映射: 外部数据返回
NULL或-999,需统一映射为引擎可识别的缺失标记(如null或NaN)。
// 变量映射配置示例(JSON格式)
{
"mappings": [
{
"externalField": "id_card_no",
"internalVar": "id_number",
"type": "string",
"nullMapping": "NULL"
},
{
"externalField": "gender",
"internalVar": "gender_code",
"type": "int",
"valueMapping": {
"M": 1,
"F": 0,
"U": -1
},
"nullMapping": -1
}
]
}
3.2 变量标准化
变量标准化(Variable Normalization)是将不同量纲、不同分布的变量转换到统一尺度,避免因数值范围差异导致策略规则中的阈值设定失效。常用的标准化方法包括:
| 标准化方法 | 公式 | 适用场景 | 示例 |
|---|---|---|---|
| Min-Max 归一化 | x' = (x - min) / (max - min) |
变量有明确上下界,如年龄、收入区间 | 年龄 25 → 0.25(假设0-100) |
| Z-Score 标准化 | x' = (x - μ) / σ |
变量近似正态分布,如征信查询次数 | 查询次数 5 → 1.2(μ=2, σ=2.5) |
| 分位数标准化 | x' = rank(x) / N |
变量分布偏态严重,如收入、负债 | 收入 8000 → 0.65(分位数) |
| 对数变换 | x' = ln(x + 1) |
变量呈指数分布,如贷款金额 | 金额 100000 → 11.51 |
注意: 标准化参数(min/max/μ/σ)必须在训练集或历史数据上计算,并固化到引擎配置中。线上实时决策时,使用相同的参数进行变换,避免数据泄露。
四、变量与特征工程整体架构
下图展示了从原始数据到策略规则使用的变量之间的完整链路,涵盖变量分类、特征工程、映射与标准化三个核心环节。
五、实战要点与避坑指南
变量命名规范: 在策略引擎中,变量名应遵循统一命名规则,例如:
prefix_entity_timeWindow_aggregation。示例:loan_amt_6m_avg(近6个月平均贷款金额)。避免使用无意义的缩写或中文拼音。
常见陷阱:
- 数据穿越: 在特征工程中使用未来数据(如用全量数据计算均值),导致线上策略失效。必须严格按时间窗口切分。
- 缺失值处理不当: 将缺失值直接赋值为0或均值,可能引入系统性偏差。建议单独编码为-1或使用模型预测填充。
- 过度衍生: 生成过多高度相关的衍生变量,导致策略规则冗余、引擎性能下降。应通过相关性分析和IV值筛选保留有效变量。
变量与特征工程是授信决策引擎的“血液”与“心脏”。只有构建清晰、标准、可追溯的变量体系,并配合科学的特征工程方法,才能支撑起高效、稳定、可解释的策略规则体系。下一环节将进入策略规则的具体编排与决策流设计。