随机砍伐森林,用于检测周期性时间序列模式中的异常

时间:2019-12-08 14:37:41

标签: machine-learning time-series random-forest anomaly-detection

我有时间序列数据,可以每隔半小时测量一次活动量。 该活动具有每周定期模式,例如在星期一早上,音量最高,在周末,音量较低,依此类推。 我不明白RRCF是否会检测到周期性模式并给音量赋予不同的分数,即星期一早上被认为是正常的,而周四早晨则是异常的。

当然,对任何算法的任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

从技术上讲,该算法能够看到这种区别。这样做的原因是,RCF的工作方式是随机切割要素并尝试查看哪些点最“孤立”(实际上,它计算出的分数要复杂一些)。如果星期一的分数总是很高,那么给定的点将不容易被隔离,因为会有许多点具有相同的分布。但是,如果星期三有一个特别高的点,如果算法在交易量和工作日随机分割,则很可能可以看到这些点是独立的。

但是,重要的是给算法提供很好的分割方法。特别要注意的是,在工作日内进行拆分并非易事,这是一个绝对的变量。
此类变量的最佳编码是正弦余弦编码,将工作日转换为两个正弦/余弦变量,因此该算法可以轻松地在各天进行拆分,同时保持它们之间的距离(即星期一与周日,直到周二),否则您会通过标签编码器丢失。

如果编码不清楚,请尝试阅读以下内容,它应该可以更好地解释这一概念:
https://ianlondon.github.io/blog/encoding-cyclical-features-24hour-time/