有没有针对时间序列数据的无监督学习算法?

数据挖掘 算法
2021-10-04 09:21:29

我的数据中的每个观察值都是以 0.1 秒的差异收集的。我不称它为时间序列,因为它没有日期和时间戳。在聚类算法(我在网上找到)和 PCA 的示例中,样本数据每个案例有 1 个观察值,并且没有计时。但是我的数据每辆车每 0.1 秒收集数百个观测值,并且有很多车辆。

注意:我也在quora上问过这个问题。

1个回答

你所拥有的是根据时间的一系列事件,所以不要犹豫,称之为时间序列!

时间序列中的聚类有两种不同的含义:

  1. 时间序列的分割,即您希望根据内部相似性将单个时间序列分割成不同的时间间隔。
  2. 时间序列聚类,即你有几个时间序列,你想根据它们之间的相似性找到不同的聚类。

我假设您的意思是第二个,这是我的建议:

您有很多车辆,每辆车有很多观察结果,即您有很多车辆。所以你有几个矩阵(每辆车都是一个矩阵),每个矩阵包含N行(Nr 个观察值)和T列(时间点)。一个建议可能是将 PCA 应用于每个矩阵,以减少 PC 空间中的维度和观察数据,并查看矩阵(车辆)内的不同观察之间是否存在有意义的关系然后,您可以将所有车辆的每个观察值放在一起,并制作一个矩阵并将 PCA 应用于该矩阵,以查看不同车辆之间单个观察值的关系。

如果您没有负值,强烈建议使用矩阵分解来降低矩阵形式数据的维数。

另一个建议是将所有矩阵放在一起并构建一个N x M x T张量,其中N是车辆数量,M是观察数,T是时间序列,并应用张量分解来查看全局关系。

本文展示了一种非常好的时间序列聚类方法,其实现非常简单。

我希望它有帮助!

祝你好运 :)


编辑

正如您提到的,您的意思是时间序列分割,我将其添加到答案中。

时间序列分割是唯一具有评估基础的聚类问题。实际上,您考虑了时间序列背后的生成分布并对其进行分析,我强烈建议您使用this , this , this , this , thisthis来全面研究您的问题。特别是最后一篇和博士论文。

祝你好运!