3. 单变量分析:均值、方差、分布形态与业务逻辑校验

单变量分析是坏样本归因流程中的第一道筛网。在进入复杂的多变量交互与模型训练之前,必须对每个特征自身的统计属性与业务合理性进行独立审查。本章聚焦于四个核心维度:集中趋势(均值)、离散程度(方差)、分布形态(偏度/峰度)以及业务逻辑校验。通过这一环节,可以快速识别出数据采集错误、异常值污染、特征失效等基础问题。

3.1 均值与中位数:集中趋势的鲁棒性检查

均值对极端值高度敏感,而中位数具有鲁棒性。当两者差异显著时,往往意味着数据存在偏态或异常值。

指标 计算公式 对异常值敏感度 典型业务场景
均值 (Mean) μ = (1/n) Σ xᵢ 高 用户年龄、交易金额
中位数 (Median) 排序后中间值 低 收入分布、响应时间
众数 (Mode) 出现频率最高值 极低 类别特征、离散计数
实战校验规则: 若 |Mean - Median| > 2 * 标准差,则标记该特征为“强偏态候选”,需进一步检查是否存在录入错误或业务异常。

3.2 方差与标准差:离散度的业务阈值

方差衡量数据围绕均值的波动程度。在坏样本归因中,方差过小(接近零)或过大(超出业务常识)都是危险信号。

  • 方差趋近于零: 特征几乎为常数,对模型无区分能力。常见于传感器故障、默认值填充错误。
  • 方差异常大: 可能存在极端离群点或数据录入单位错误(如将“元”误录为“分”)。
  • 变异系数 (CV = σ/μ): 无量纲指标,用于比较不同量纲特征的离散程度。CV > 1 通常提示数据稳定性差。
# 快速方差校验代码片段
import numpy as np

def check_variance_anomaly(feature, feature_name, cv_threshold=1.0):
    mean = np.mean(feature)
    std = np.std(feature)
    cv = std / mean if mean != 0 else np.inf
    if std < 1e-6:
        print(f"[警告] {feature_name}: 方差接近零,特征可能失效")
    elif cv > cv_threshold:
        print(f"[警告] {feature_name}: 变异系数 {cv:.2f} > {cv_threshold},离散度过高")
    else:
        print(f"[通过] {feature_name}: CV = {cv:.2f}")

3.3 分布形态:偏度与峰度的诊断价值

分布形态直接反映数据生成过程是否稳定。偏度衡量对称性,峰度衡量尾部厚度。

指标 取值范围 业务含义 坏样本归因提示
偏度 (Skewness) =0 对称;>0 右偏;<0 左偏 右偏:多数值集中在低区,少数极高值拉高均值 右偏严重时,坏样本可能集中在右尾
峰度 (Kurtosis) =3 正态;>3 尖峰;<3 平峰 尖峰:数据集中在均值附近,但尾部有极端值 高峰度常伴随离群点,需排查异常事件
经验阈值: 偏度绝对值 > 2 或峰度 > 8,建议对该特征进行对数变换或分箱处理后再进入模型。

3.4 业务逻辑校验:统计之外的硬约束

统计指标无法覆盖所有问题。业务逻辑校验是单变量分析中不可替代的环节,通常包含以下检查项:

  • 值域校验: 年龄是否在 [0, 120] 内?交易金额是否非负?
  • 枚举值校验: 性别字段是否只包含 'M'/'F'/'Unknown'?是否存在拼写错误?
  • 时序一致性: 注册日期是否早于首次交易日期?时间戳是否在未来?
  • 缺失模式: 缺失率是否与业务预期一致?缺失是否集中在特定坏样本群体中?
常见陷阱: 不要仅依赖统计p值或方差阈值。例如,一个特征方差很大但完全符合业务逻辑(如“年收入”),不应被机械剔除。业务逻辑校验应优先于统计筛选。

3.5 单变量分析决策流程

以下SVG图展示了从原始特征到“通过/待审查/拒绝”三类标签的完整单变量分析决策流程。

单变量分析决策流程 单变量分析决策流程 原始特征输入 统计属性检查 (均值/方差/偏度/峰度) 业务逻辑校验 (值域/枚举/时序/缺失) 综合判定 ✅ 通过 ⚠️ 待审查 ❌ 拒绝 决策说明 • 通过:统计与业务均无异常,直接进入特征筛选池 • 待审查:统计异常但业务合理(如高收入人群),需人工复核 • 拒绝:统计异常且违反业务逻辑(如负年龄),直接剔除 • 所有待审查特征需在下一轮多变量分析中重点监控

3.6 单变量分析报告模板

完成上述分析后,建议按以下模板输出每个特征的诊断报告,便于团队协作与后续追踪。

特征名称 均值 方差 偏度 峰度 业务校验 决策
age 38.5 189.2 0.12 2.95 通过 通过
income 85200 4.2e9 3.45 18.7 通过 待审查
transaction_count 12.3 0.01 -0.05 2.80 通过 通过
negative_flag 0.02 0.0196 6.85 45.9 失败(含负值) 拒绝
核心原则: 单变量分析的目标不是“剔除所有异常特征”,而是“标记所有需要关注的特征”。保留业务合理的偏态特征,拒绝统计与业务双重异常的特征,这是坏样本归因的第一道防线。