CaDrift: A Time-dependent Causal Generator of Drifting Data Streams¶
会议: ICLR2026
arXiv: 2602.20329
代码: https://github.com/eduardovlb/CaDrift
领域: others
关键词: concept drift, structural causal model, synthetic data generation, data streams, time dependence
一句话总结¶
提出 CaDrift,一个基于结构因果模型(SCM)的时间依赖合成数据流生成框架,通过 EWMA 平滑和自回归噪声引入时序相关性,并通过修改因果映射函数实现可控的分布漂移、协变量漂移、严重漂移和局部漂移,填补了现有数据流生成器既不因果又不时序依赖的空白。
研究背景与动机¶
- 领域现状:数据流挖掘中概念漂移(concept drift)是核心挑战——数据分布随时间变化,模型需要持续适应。评估自适应学习算法需要有可控漂移事件的合成基准数据。
- 现有痛点:现有合成生成器(如 SEA、Sine、RandomRBF)依赖线性或概率函数,生成的样本本质上是 iid 的——即使有漂移事件,样本间也没有时序相关性。这与真实数据流(如 IoT 传感器、金融数据)的特性严重不符。
- 核心矛盾:真实数据流具有两个关键特性:(a) 变量间存在因果关系而非简单相关,(b) 连续样本间有时序依赖(serial correlation)。现有生成器两者都不满足。
- 本文要解决什么? 设计一个同时具备因果结构和时序依赖的合成数据流生成器,支持多种可控漂移类型。
- 切入角度:将 SCM 的因果图结构与 EWMA 平滑 + 自回归噪声结合,在因果传播链上自然引入时序依赖;通过修改 SCM 的映射函数来产生不同类型的漂移。
- 核心idea一句话:在 SCM 的因果图上叠加时序动态(EWMA + AR噪声),再通过修改映射函数实现可控漂移,首次实现因果 + 时序依赖 + 可控漂移三合一的数据流生成。
方法详解¶
整体框架¶
CaDrift 基于有向无环图(DAG)定义的结构因果模型。输入是 DAG 结构(节点=特征+目标,边=因果关系)和各类超参数(平滑系数 \(\alpha\)、自回归系数 \(\rho\)、漂移类型和时间点)。输出是一条时间依赖的合成数据流,其中样本间有 serial correlation,且在指定时间点发生可控的概念漂移。
生成流程:根节点通过 EWMA 平滑的分布采样 → 内部节点通过映射函数(小型神经网络)从父节点计算 → 所有节点叠加自回归噪声 → 目标节点通过因果链计算标签 → 在漂移时间点修改映射函数/分布参数。
关键设计¶
- 时序依赖的 SCM(Time-dependent SCM):
- 做什么:让原本 iid 的 SCM 生成具有时序相关性的数据流
- 核心思路:标准 SCM 定义 \(E := f_E(C) + N_E\),CaDrift 引入两个时序组件:(a) 根节点使用 EWMA 平滑 \(Z_t = (1-\alpha)Z_{t-1} + \alpha X_t\),让根节点值携带历史记忆;(b) 所有连续节点的噪声改为自回归形式 \(N_E^{(t)} = \rho N_E^{(t-1)} + \epsilon^{(t)}\),其中 \(\rho \in [0,1]\) 控制时序平滑度
-
设计动机:EWMA 让根节点值平滑过渡而非跳变,自回归噪声让每个节点的随机波动也有连续性。两者结合后时序相关性沿因果链传播到所有下游节点和目标
-
因果映射函数初始化:
- 做什么:定义节点间的因果关系函数
- 核心思路:不像 TabPFN 那样随机初始化 MLP/决策树,而是先用父节点分布拟合小型神经网络到目标值,确保映射函数能捕捉父节点分布范围内的因果关系
-
设计动机:避免随机树模型可能产生的分裂点在父节点分布外导致因果链变异过小或输出单一类别
-
干预机制(Interventions):
- 做什么:模拟真实世界的环境扰动(设备故障、环境冲击等)
- 核心思路:对被干预节点断开所有入边,强制赋予来自正态/均匀分布的值,不再依赖因果映射函数。效果用 do-calculus 描述:\(P(y | \text{do}(x_3 \sim \mathcal{N}(\mu, \sigma^2)))\)
-
设计动机:真实数据流中偶发性的异常事件(如传感器故障)不遵循正常因果关系,干预机制自然模拟这种情况
-
可控漂移生成:
- 做什么:在指定时间点引入不同类型的概念漂移
- 核心思路:通过修改 SCM 的不同组件实现四种漂移:
- 分布漂移(Distributional):修改节点间的映射函数 \(f_E(C)\) 或目标映射 \(f_y(C)\),改变 \(P(y|X)\)
- 协变量漂移(Covariate):修改根节点的分布参数,改变 \(P(X)\) 但不改变因果关系
- 严重漂移(Severe):反转目标映射的输出类别
- 局部漂移(Local):只修改单个特征的分布参数
- 漂移速率通过参数 \(\Delta\) 控制:\(\Delta=1\) 为突变,\(\Delta>1\) 为渐变/增量漂移;还支持循环漂移(恢复旧概念)
训练策略¶
CaDrift 是生成框架而非训练模型。映射函数在初始化时拟合一次,之后按因果图传播生成数据流。漂移事件在预设时间点触发映射函数替换。
实验关键数据¶
主实验¶
在 8 个 CaDrift 生成的数据集 + 3 个传统基准(SEA、Sine、RandomRBF)上评估 7 个数据流分类器:
| 方法 | CaDrift 8数据集平均准确率 | 传统3数据集平均准确率 | 总平均排名 |
|---|---|---|---|
| ARF | ~73% | ~85.5% | 2.2 |
| TabPFN\(^{\text{Stream}}\) | ~69% | ~83.0% | 3.0 |
| IncA-DES | ~73% | ~85.1% | 3.4 |
| LevBag | ~73% | ~79.5% | 3.0 |
| LAST | ~71% | ~77.7% | 4.9 |
| OAUE | ~63% | ~74.6% | 5.3 |
| HT | ~60% | ~65.3% | 6.2 |
消融实验(平稳性测试 - Ljung-Box Test)¶
| 配置 | 特征拒绝 \(H_0\) 比例 | 说明 |
|---|---|---|
| iid(无时序机制) | 0/6 | 所有特征和目标均不拒绝,无 serial correlation |
| 仅 EWMA (\(\alpha\)=0.05) | 4/6 | 大部分特征有 serial correlation,但部分下游节点不显著 |
| 仅 AR (\(\rho\)=0.1) | 6/6 | 所有特征和目标都有显著 serial correlation |
| EWMA + AR | 6/6 | 所有节点完全通过,serial correlation 沿因果链传播 |
关键发现¶
- 协变量漂移不影响分类性能:在数据集1和2中,500个样本处的协变量漂移没有导致分类器性能下降,符合预期(因果关系未变)
- 自适应方法(ARF、LevBag)更抗漂移:比无自适应的 HT 和 TabPFN 恢复更快
- TabPFN 的上下文窗口问题:当概念持续时间短于上下文窗口时,TabPFN 会混合两个概念的数据,导致漂移后性能下降严重——这是 stability-plasticity 困境的典型表现
- 自回归噪声是时序依赖的关键:即使 \(\rho\) 很小(0.1),也能在所有节点产生显著的 serial correlation
- CaDrift 比传统生成器更具挑战性:SEA 和 Sine 上分类器经常达到接近 100% 的准确率,而 CaDrift 生成的数据集更难
亮点与洞察¶
- 因果+时序+漂移三合一:首次在 SCM 上引入时序依赖和可控漂移,这是一个自然而优雅的组合——因果图本身定义了变量关系,修改映射函数自然产生漂移,EWMA/AR 自然引入时序性
- 干预机制模拟扰动:用因果推断中的 do-calculus 概念来模拟环境扰动,概念上非常干净——断开入边、强制赋值,完美对应现实中的传感器故障等场景
- 消融设计巧妙:用 Ljung-Box 统计检验来定量验证时序依赖性,而不是只用分类准确率等间接指标
- 可迁移到基础模型训练:CaDrift 生成的数据可以作为时序表格基础模型的预训练数据先验,这是一个有价值的下游应用方向
局限性 / 可改进方向¶
- 仅支持表格数据:当前框架限于表格型数据流,不适用于图像、文本等非结构化数据流的漂移模拟
- 映射函数种类有限:主要用小型神经网络作为因果映射,可以扩展到更多函数族(如分段线性、核函数等)以增加多样性
- 缺少与真实数据流的定量对比:虽然做了 MMD 分析,但没有系统地回答"CaDrift 生成的数据流在统计特性上多大程度匹配真实数据流"
- 漂移检测评估缺失:生成器的一个重要用途是评估漂移检测算法,但实验中没有测试任何漂移检测方法
- 计算开销未讨论:生成大规模数据流(100-200节点DAG)的时间和内存开销未报告
相关工作与启发¶
- vs TabPFN 的 SCM 生成器:TabPFN 也用 SCM 生成合成数据,但样本是 iid 的且无漂移控制。CaDrift 的优势是时序依赖+可控漂移,可以作为 TabPFN 的时序扩展
- vs RealDriftGenerator:RealDriftGenerator 需要源数据集,通过 Clip Swap 引入漂移。CaDrift 完全合成,不需要源数据,且漂移类型更丰富
- vs OWDSG:OWDSG 通过改变聚类来引入漂移,但底层仍是 Madelon 生成器,没有因果结构。CaDrift 的因果链使漂移更加自然和可解释
评分¶
- 新颖性: ⭐⭐⭐⭐ 首次将因果模型、时序依赖和可控漂移结合,概念创新清晰
- 实验充分度: ⭐⭐⭐⭐ 8个自生成数据集+3个传统基准,消融实验用统计检验验证,但缺少漂移检测评估
- 写作质量: ⭐⭐⭐⭐ 结构清晰、对比表格完善,数学定义规范
- 价值: ⭐⭐⭐⭐ 对数据流挖掘社区有实际工具价值,代码已开源