Tsaug:时间序列数据增强库

Tsaug:是一个用于时序数据增强的 Python 库,它提供了一系列简洁且易用的时序数据增强方法。允许通过组合不同的增强方法来创建复杂的增强管道,适用于深度学习模型的训练。

常用的Tsaug数据增强方法有:

  • TimeWarp(n_speed_change, max_speed_ratio): 对时间轴进行非线性扭曲,模拟数据的速度变化。
  • Crop(size): 从序列中裁剪指定大小的片段。
  • Quantize(n_levels): 将时间序列数据量化到指定级别的离散值。
  • Drift(max_drift): 在整个序列上添加缓慢变化的漂移量。
  • Reverse(): 反转序列。
  • AddNoise(scale): 添加高斯噪声,scale 控制噪声的强度。
  • Convolve(size): 使用随机或自定义核对数据进行卷积。
  • Dropout(p): 以概率 p 随机丢弃一些数据点。
  • Pool(size): 在时间维度上进行最大池化或平均池化。

示例代码和生成示例图效果如下:

from tsaug import TimeWarp, Quantize, Pool, Crop, Drift, AddNoise, Convolve, Dropout
# 示例数据
import numpy as np
import matplotlib.pyplot as plt
# 示例数据
data = np.arange(0,100)
# 使用 TimeWarp 增强
augmenter = TimeWarp(n_speed_change=3, max_speed_ratio=1.5)
augmented_data = augmenter.augment(data)

# 使用 Crop 增强
cropper = Crop(size=50)
cropped_data = cropper.augment(data)

# 使用 Quantize 增强
quantizer = Quantize(n_levels=10)
quantized_data = quantizer.augment(data)

# 使用 Drift 增强
drifter = Drift(max_drift=0.5, n_drift_points=10)
drifted_data = drifter.augment(data)

# 使用 AddNoise 增强
# scale=0.1 表示噪声的标准差
noiser = AddNoise(scale=0.1)
noisy_data = noiser.augment(data)

# 使用 Convolve 增强
convolver = Convolve(size=7)
convolved_data = convolver.augment(data)

# 使用 Dropout 增强
# p=0.2 表示丢弃 20% 的数据
dropout = Dropout(p=0.2)
dropped_data = dropout.augment(data)

# 使用 Pool 增强
pooler = Pool(size=10, kind='max')
pooled_data = pooler.augment(data)

plt.figure()
plt.plot(data,label='source')
plt.plot(augmented_data,label = 'aug_timewarp')
plt.plot(pooled_data,label = 'aug_pool')
plt.plot(quantized_data,label = 'aug_quantized')
plt.plot(drifted_data,label = 'aug_drifted')
plt.plot(noisy_data,label = 'aug_noisy')
plt.plot(convolved_data,label = 'aug_conv')
plt.plot(dropped_data,label = 'aug_drop')

plt.legend()
plt.show()

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值