时间序列分类

数据挖掘 分类 时间序列
2021-10-08 06:30:05

我正在查看时间序列安全攻击数据,其中给定的 IP 可以标记为 (1) 攻击或 (0) 无攻击。总的来说,我们将拥有数千个 IP 以及大致相等数量的攻击和非攻击。数据相当嘈杂,每个时间序列序列都可以有不同的长度。

我正在寻找有关时间序列分类的最新方法的建议。我已经过了移动平均线等简单事物的阶段,我正在寻找改进我当前方法或尝试新事物的方法。

我目前已经实现了一些不同的技术:

  1. 具有 DTW 的 K 近邻。我成功地使用了http://www.cs.ucr.edu/~eamonn/UCRsuite.html,它提供了最先进的性能。
  2. 逻辑 shapelets ( http://www.cs.ucr.edu/~mueen/LogicalShapelet/ )。这看起来很有希望,但无法让任何现有的代码库正常工作。

任何人都可以建议尝试不同的技术吗?我看过有关不和谐和主题的论文,但仍需要调查它们是否与我的问题相关。

2个回答

我建议Recurrent Neural Nets它们适用于时间序列,但是它们需要庞大的数据集才能获得良好的性能。在这里你可以在 torch中找到一个实现

我建议 Marco Suturi 的“广义对齐内核”用于时间序列分类。这个想法是在 SVM 中使用众所周知的 DTW 距离。论文中解决的问题是DTW距离不会导致有效的SVM内核;作者采用了一些技巧来实现这一点。

我在一些流行的时间序列数据集上运行了这个算法并注意到:

  1. 算法非常快
  2. 相对于已发布的测试集( UCR 时间序列,各个数据集的性能非常好

最后,源代码可用。