【问题标题】:Time series change point detection时间序列变化点检测
【发布时间】:2021-10-30 18:55:36
【问题描述】:

python 中检测时间序列上红色点的最佳统计方法是什么(见附图)

我有时间序列数据和一些历史变化点,我想尽快检测时间序列中的变化点。

我已经计算了梯度(下图中的橙色曲线)并试图检测到某个阈值以上的峰值,但仍然有一些错误的点(比如用红色包围的那个):

【问题讨论】:

  • 您可以训练一个查看周围环境的分类器(例如,左右 25 步?)。这可能是一维卷积神经网络。您需要提供训练数据。
  • 或者你可以取 np.gradient (numpy.org/doc/stable/reference/generated/numpy.gradient.html) 的绝对值并取这个信号的最大值。
  • 你好@ikamen 谢谢你的回复,你有什么例子吗?因为我是新手。
  • @ikamen,我对 1d 卷积神经网络很感兴趣,可以在时间序列上检测这个特征。你有什么例子吗?

标签: python time-series trend


【解决方案1】:

这是寻找变化点的经典问题。有大量的算法。建议大家关注以下库https://github.com/deepcharles/ruptures

【讨论】:

  • 您好,我尝试过破裂库等方法,但总是有错误的正变点。​​span>
  • 更详细地描述您究竟需要发现什么?趋势急剧变化?只有积极的趋势变化?
  • 我用更多细节编辑了我的帖子,想法是检测时间序列中的红色点。我试图找出曲线在这些点的行为。
  • 为什么红圈的点不正确?
  • 曲线是石油管道中压力的测量值,垂直轴是经过专家验证的特定点,代表机器人何时通过管道。所以想法是使用压力数据来检测像这样的未来点。目前,红点是错误的,因为专家当时没有检测到机器人通道。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-26
  • 1970-01-01
  • 2022-10-16
  • 2019-05-31
  • 2022-08-22
  • 1970-01-01
相关资源
最近更新 更多