资讯动态

Time-Series-Library 时间序列数据增广实战:16 种方法与三步启用

发布时间:2026/9/13 8:13:46 来源:尧图企业网站定制
Time-Series-Library 时间序列数据增广实战16 种方法与三步启用【免费下载链接】Time-Series-LibraryA Library for Advanced Deep Time Series Models for General Time Series Analysis.项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-LibraryTime-Series-Library 的 utils/augmentation.py 内置 16 种时间序列数据增广方法按机制分为加噪扰动、几何扭曲、DTW 智能引导三类。样本少、采集贵、标注难时打开开关即可成倍扩充训练集无需重新采数。 一、方法全景16 种增广方法按机制三分类所有方法输入输出形状均为 (batch_size, sequence_length, num_channels)结果可直接拼回训练集。增广作用在这类一维多通道序列上TimesNet 等模型再将其转二维做卷积多样性直接传到下游。加噪扰动类数值层面的随机微扰原理在原始数值上叠加噪声或做重排改动小、开销几乎为零是最便宜的扩充手段。jitter抖动叠加 sigma0.03 高斯噪声模拟测量误差让模型忽略细微波动。scaling缩放各通道乘以以 1 为中心sigma0.1的随机系数形状不变幅度变化适合量级漂移数据。rotation旋转随机翻转并打乱通道顺序适合通道次序无关的多通道分类。permutation排列把序列切成等长片段打乱--randompermutation 为随机长度分段保留局部模式、打散全局顺序。几何扭曲类时间轴与幅值轴上的连续形变原理用三次样条对时间轴或幅值轴做非线性拉伸压缩波形整体变形但语义保持是主力扩充手段。时序常由多个周期叠加而成几何扭曲正是在这些结构上做形变。magnitude_warp幅值扭曲随机样条曲线乘入幅值产生非均匀起伏适合幅度漂移的数据。time_warp时间扭曲沿时间方向重采样模拟同一模式发生得更快或更慢适合形状同、节拍不同的数据。window_slice窗口切片截取约 90% 长度窗口再插值回原长放大局部细节。window_warp窗口扭曲对约 10% 长度小窗口做 0.5×或 2× 缩放后拼回制造局部突起或凹陷。DTW 智能引导类借 DTW 对齐路径做有依据的变形原理DTW动态时间规整让时间轴弹性对齐来度量序列相似先求与其他样本的对齐路径再沿路径变形改动有参照而非纯随机主要服务分类任务需标签。spawner配随机同类样本沿对齐路径取平均并插值回原长生成中间形态适合稀疏类别。random_guided_warp随机引导扭曲沿随机同类样本的 DTW 路径扭曲当前样本--shapedtwwarp 为 ShapeDTW 版本。discriminative_guided_warp判别式引导扭曲同抽正例反例原型朝离正例近、离反例远方向变形以拉大类间差异--discsdtw 为 ShapeDTW 版本。wdba加权 DBA 平均先在类内找质心再按 DTW 路径加权融合其余样本产出更干净原型适合类内噪声大的数据。回头看动机时序采集贵、标注难样本常常有限模型容易学不到稳定周期结构。这 16 种方法即用已有样本推导合理变体把训练集撑大、分布撑满。 二、三步启用增广从装环境到接入训练第一步 装好环境git clone https://gitcode.com/GitHub_Trending/ti/Time-Series-Library cd Time-Series-Library pip install -r requirements.txt模块仅依赖 numpy、scipy、tqdm装完即可用。第二步 配置增广参数run.py 把方法整理成命令行开关--jitter、--scaling、--timewarp、--magwarp、--spawner、--dtwwarp、--discdtw、--wdba 等配合 --augmentation_ratio增广轮数、--seed、--extra_tag结果标记使用。命令后追加 --jitter --timewarp --augmentation_ratio 2即两方法各跑 2 轮。第三步 调用 run_augmentation 并入训练from utils.augmentation import run_augmentation args.jitter, args.timewarp, args.augmentation_ratio True, True, 2 x_aug, y_aug, tags run_augmentation(x, y, args) # (batch, seq_len, channels)x 需为 (batch_size, sequence_length, num_channels)函数按开关依次变换、跑满 augmentation_ratio 轮后拼回原始数据样本量约为原始 (ratio1) 倍。官方流程已内置data_provider/data_loader.py 取数时直接调用 run_augmentation_single打开开关即自动生效2D 整条序列也会自动补 batch 维再压回。 三、效果验证预测曲线对比与多任务基准官方教程对比中蓝线是真实值、橙线是模型预测启用增广后曲线更贴真实轨迹稀疏区域的拐点与振幅偏差明显收窄。库内覆盖长短期预测、填补、分类、异常检测常见基准含 ETT、ECL、Weather、Traffic、M4 等。经验上收益与数据量负相关训练窗口短、数据量小如 ILI时提升最明显大数据集上更多起防过拟合作用。建议先在小样本设置验证再决定是否全量开启。⚠ 四、选型建议与避坑清单方法组合从少到多先开 1~2 种如 jitter timewarp确认有效再叠加全部同开会让增广样本离原始分布过远反而伤指标。增广倍率控制在 2~5--augmentation_ratio 取 2~5最终样本量约为原始 3~6 倍数据量大时 1~2 即可。任务与方法匹配分类优先 DTW 智能引导类需标签预测、填补优先几何扭曲类加 jitter/scaling。DTW 类计算更重成对计算对齐路径保留默认 window 约束序列长的 1/10大 batch 先小数据试跑。固定 --seed、用好 --extra_tag同开关组合才可复现用 tag 标注方法组合避免结果文件混淆。rotation/permutation 慎用重排翻转通道通道语义固定的预测任务不建议开。16 种方法、三类机制加一个 --augmentation_ratio就是全部家当小样本先上几何扭曲分类再叠 DTW 引导往往有可见收益。后续引入生成式增广这套开关式接口也能平滑扩展。【免费下载链接】Time-Series-LibraryA Library for Advanced Deep Time Series Models for General Time Series Analysis.项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-Library创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价