我和几个同事正在查看我们在工作场所最近更换的“猫”。对于那些好奇的人,本文中的“猫”是指一种特定类型的泵,称为猫泵。它被亲切地称为“小猫”,因为我们只有一个这样的泵。
经过一次例行检查后,我注意到小猫在许多时期表现不佳。这在数据集中被标记为 Cat Anomaly。
(如果有人想进一步分析,可以从这里访问:
https://drive.google.com/open?id=1e0OhzhaSZP9_A3QdaK9-BvWXbRPZacED)
这是异常时的样子:
从本质上讲,它看起来类似于正弦曲线并且略微弯曲。我还注意到,当它处于异常状态时,点簇似乎很紧。
使用 Python 的 Sklearn 库和一些很好的老式信号处理,我决定删除一些有噪声的集群,这样我就可以看到信号在“没有”噪声的情况下是什么样子的。为此,我对数据执行了 Savitzy-Golay 过滤器,它按照下面的方法对其进行了平滑处理。
然后,我使用了一个功能从“正常”猫值中减去值——“平滑”猫值,它可以粗略地指示“集群”何时出现。
这已经可以接受(大约 90% 的准确率),当我将这个特征输入到我的随机森林模型中时,我可以在一定程度上发现异常,但我觉得我使用的“集群”方法非常笨拙,并且有更好的方法将 cat 信号的“噪声”捕获为变量。
所以现在我正在寻找一种更好的方法来识别和区分“异常”的猫行为。
那么,作为捕获“嘈杂”集群的更好特征或变量,其他人对如何捕获这一点有任何想法吗?