首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用时间序列报警数据预测设备故障

利用时间序列报警数据预测设备故障
EN

Data Science用户
提问于 2020-07-12 09:11:19
回答 1查看 297关注 0票数 1

我正试图根据报警数据来预测机器故障。

情况:

每年大约有4000台机器故障。这些标记很差(它是手动输入的,可以有多个名称用于相同的故障)。此数据集以下列方式由时间戳、故障名称和故障描述组成。

代码语言:javascript
复制
timestamp, name, description
01/01/2020 - 08:10, Motor Failure, Motor failed due to overheating 

此外,每年大约有100万警报器显示可能出现的问题(系统中有8000个可能的警报,但只有1200个激活的警报)。警报在故障点开火,但也有很大比例的情况下,有多个相关的警报激活数周前,是无法采取行动,因为剪切数。此数据集由时间戳、警报id和警报描述组成,如下所示。

代码语言:javascript
复制
timestamp, alarm id, description
01/01/2020 - 08:10, MFHeatHiHi, Motor temperature critical

请原谅我的无知,因为我对数据科学不熟悉。我试图找出最好的方法,首先清理/修改数据,然后向哪个方向创建预测。请让我知道,如果我是走错了方向,或有错误的想法,从哪里开始。

  1. 用相同的事件同名更新4000个故障(我估计其中大约有600个离散故障)。或者,我称它们为" failure“,只针对一个变量测试警报,并使用警报描述给我可能导致故障的问题。
  2. 在发生故障时(可能在30天或更短的时间内)将警报及时插入窗口。然后使用警报id描述作为列,并以出现次数作为值。

例如:

代码语言:javascript
复制
Failure timestamp, MFHeatHiHi - Motor temperature critical, FanHeatHiHi - Fan temperature critical,
01/01/2020 - 08:10,                4,                                        3,

然后我想用随机森林和R。

这是正确的方法吗,如果我使失败只是一个变量,是删除警报的时间分量,并转换为警报的数目正确的方式,这意味着我需要8000列的每一个可能的警报。

我很确定我有错误的方法,所以我真的很感激一些指导,所以我正朝着正确的方向前进。

谢谢你的帮忙,

EN

回答 1

Data Science用户

发布于 2020-07-13 05:07:11

我想你所描述的将被称为异常检测。我建议尝试另一种方法。有几个标准的解决方案来处理这个主题,下面是几个。

要解决的主要问题是:

  1. 设置一个很好的阈值来平衡误报和漏报事件。选择模型将影响此设置(见下面两个典型模型)
  2. 正确的标签/响应:如果你有足够多的正确标记的警报示例,你可以查看聚类方法来确定未标签或标签错误的例子的正确标签。这将为您提供一个用于培训的更大的数据集。
  3. 选择模型:模型1:手动-多变量使用协方差矩阵警报设置来减少错误警报:您可以使用欧几里德(用于球面分布),或者更好的是使用Mahalanobis (对于椭球分布)距离和从质心的n Sigma阈值来确定机器的正态读数,然后为正态分布和异常设置一个截止值。模型2:神经网络-自动编码器列车对正常数据(过滤掉警报数据)和新数据的测试,观察概率分布在重建误差在模型输出(高MAE),并选择一个阈值的基础上输出。

在线参考资料(可能需要帐户查阅):

https://towardsdatascience.com/how-to-use-machine-learning-for-anomaly-detection-and-condition-monitoring-6742f82900d7

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/77583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档