我想在实时传感器数据流上做R异常检测.我想探讨一下Twitter anomalyDetection或异常的使用。
我试图想出最有效的方法来做到这一点,因为一些在线消息来源表明R不适合实时异常检测。见https://anomaly.io/anomaly-detection-twitter-r。我应该使用stream包来实现我自己的数据流源吗?如果我这样做了,是否有“经验法则”,我应该流多少数据才能有足够的数据(也许这就是我需要尝试的)?有没有办法在数据库中进行异常检测,而不是在应用程序中加快速度?
发布于 2015-12-22 19:18:23
我的经验是,如果您想要实时异常检测,您需要应用在线学习算法(而不是批处理),在收集/生成每个样本时最好在每个样本上运行。要做到这一点,您需要修改现有的开放源代码,以便在联机模式下运行,并为处理的每个示例调整模型参数。不过,我不知道有一个开源包能做到这一点。例如,如果您正在计算一个非常简单的异常检测器,使用正态分布,您所需要做的就是根据到达的每个样本更新每个度量的均值和方差。如果您希望模型是自适应的,则需要添加遗忘因子(例如,指数遗忘),并控制均值和方差的“记忆”。另一种适合在线学习的算法是Holt-温特斯。有几个R-实现它,虽然你仍然必须使它在在线模式下运行的实时。
去年五月,我在“大数据、分析与应用机器学习--以色列创新会议”( Big,Analytics &)上就这个话题发表了演讲。视频地址是:RQ (免责声明:我是从事实时异常检测的商业公司Anodot的首席数据科学家)。
https://stackoverflow.com/questions/33801034
复制相似问题