我有活动频率的时间数据。我想识别数据中的集群,这些集群指示具有相似活动水平的不同时间段。理想情况下,我想在不事先指定集群数量的情况下识别集群。
什么是合适的聚类技术?如果我的问题没有包含足够的信息来回答,我需要提供哪些信息来确定合适的聚类技术?
下面是我想象的数据/集群类型的图示:
我有活动频率的时间数据。我想识别数据中的集群,这些集群指示具有相似活动水平的不同时间段。理想情况下,我想在不事先指定集群数量的情况下识别集群。
什么是合适的聚类技术?如果我的问题没有包含足够的信息来回答,我需要提供哪些信息来确定合适的聚类技术?
下面是我想象的数据/集群类型的图示:
从我自己的研究看来,高斯隐马尔可夫模型可能很合适: http ://scikit-learn.org/stable/auto_examples/plot_hmm_stock_analysis.html#example-plot-hmm-stock-analysis-py
它似乎确实找到了不同的活动片段。
小波可以帮助您识别具有不同属性的周期。但是,我不确定是否有方法可以将您的时间序列划分为离散的时间段。似乎有很多理论需要探讨,而我才刚刚开始。我期待着阅读其他建议..
您是否看过此页面:UCR 时间序列分类/聚类页面?
在那里您可以找到两者:要练习的数据集和已发布的结果 - 以比较您自己的实现的性能(也有关于众所周知的机器学习技术的已知性能的链接)。此外,此页面引用了大量论文,您可以从中进一步研究适合您的问题、数据或需求的最佳方法。
此外,还有另一种方法(可能)通过应用 sequitur http://sequitur.info 来做到这一点。如果您能够很好地规范化/近似您的数据,它将为您提供那些“具有相似活动水平的不同时间段”的语法,请参阅本文并搜索另一篇论文,因为我无法添加更多链接......