一、模态分解方法是否存在固有泄露?
- 分解方法的全局性
大多数模态分解方法(如VMD、EMD)需要完整的信号输入进行分解,其本质是通过全局优化或迭代过程提取模态分量(IMF)。这意味着:
如果直接在整个数据集(含未来测试数据)上分解,分解后的IMF会隐含未来信息。
在训练阶段使用这些IMF训练模型时,模型会间接“看到”未来数据,导致数据泄露。
- 泄露的根源
泄露并非来自分解方法本身,而是来自不合理的预处理流程。若分解步骤在数据划分(训练集/测试集)之前进行,则必然引入未来信息,导致泄露。
二、泄露风险分析
假设流程如下:
- 原始数据划分为训练集和测试集;
- 整个数据集(含测试集)进行VMD分解;
- 重构高频/低频分量;
- 分别训练预测模型,最终结果相加。
关键问题:
- 步骤2的分解过程使用了测试集数据,导致分解后的IMF(包括训练集的IMF)包含未来信息。
- 训练模型时,输入的高频/低频分量已隐含测试集信息,导致模型过拟合,预测结果不可信。
三、如何避免泄露?
正确流程(无泄露方案)
- 划分数据:将数据严格分为训练集(历史数据)和测试集(未来数据),禁止测试集参与任何预处理。
- 仅在训练集上分解:
对训练集进行VMD分解,确定分解参数(如模态数、中心频率);
重构高频/低频分量。
- 训练预测模型:使用训练集的分解结果训练高频/低频预测模块。
- 测试阶段处理:
- 对测试集数据,需仅用训练阶段确定的分解参数进行分解。
- 若VMD无法局部应用(需全局信号),需通过滚动窗口或在线分解(如实时更新历史窗口)避免使用未来数据。
- VMD的局限性:VMD需要全局优化,难以分块处理。若必须用VMD,可采用以下妥协方案:
滚动分解:每次预测时,仅用当前时刻前的历史数据重新分解,逐步扩展窗口。
牺牲分解质量:短窗口可能导致模态不稳定,但可避免泄露。
- 替代方法:选择支持在线分解的算法(如Online-EMD),或改用滤波类方法(如小波变换)。
本文转载自高斯的手稿,作者:哥廷根数学学派