在时间序列分析中,断点检测(breakout detection)是一个很基本的问题。
通过捕捉时序数据中的断点(breakout),来发现时序数据所表示的系统在过去是否发生了某种事件(event)。进而为系统诊断提供必要的数据支持。
为了实现对时序断点的检测,我们首先需要对时序的整体时序做拟合。
这里我们通过一条直线来拟合一段时序,如果时序的趋势发生了变化,则用多条直线来拟合整条时序数据。
如下是对一条波动规律明显的时序做拟合之后的结果。
每个红色线条的转折点,就是我们找到的断点。
以上数据是我们在实验环境下,为了检测算法效果而人工构造的一条时序。
那么,该算法在实际情况下表现如何?
一下是一条实际的股票价格时序数据。我们通过该算法进行断点检测,并将断点红红色线条连起来的效果: