从日志文件训练机器学习模型

数据挖掘 机器学习 机器学习模型
2022-03-02 16:03:39

我开始学习机器学习,大多数例子都展示了如何训练你的机器学习模型的非常简单的例子。对我来说,这看起来更像是统计计算,而不是实际的 ml。这类示例可以很容易地用 sql server 等编写。

我正在寻找的是在我不知道的数据中找到模式的 ml。例如,假设我有很多设备记录温度、湿度、使用时间等等。在某些时候,这些设备由于某种未知原因而失败,并将被标记为“失败”

所以 om 寻找的是,如果有一种方法可以使用 ml 来分析所有日志文件并找到这些设备失败的常见模式,而无需我以这种方式“告诉它首先要查找什么”,我将能够根据日志文件预测功能故障。

这会是我可以使用 ml 的东西吗?Azure 会是一个很好的起点吗?

2个回答

您好,欢迎来到社区!

当然你可以使用 ML。我会从头脑风暴开始制定问题。所以一个想法可能是序列学习:

  1. 注入一个唯一可识别的数字而不是F并训练一个基于 NN 的模型(在这种情况下使用RNN,例如ESNLSTM)将在建模内存时学习数据本身的动态。但是为了训练这样的模型,你实际上需要大量的数据(更准确地说,你需要很长的时间序列)。在此解决方案中,任务是查看预测和输出中唯一且可识别的数字是否失败。有关更多信息,请参阅内容。
  2. 隐马尔可夫模型也是为此类任务设计的。

另一个想法可能是:

  • 将每个时间序列分割成以失败告终的间隔。例如:

    ts1 = [1,2,1,2,F,1,2,3,4,F1,2,F]

变成

> ts1_1 = [1,2,1,2]
> ts1_2 = [1,2,3,4]
> ts1_3 = [2]

现在您有一组时间序列 1(例如温度)的训练样本(仅限正样本!)。现在从那些不产生“ F ”的序列片段中产生一些负样本,并训练一个模型进行分类。然后在实时预测上,您需要在收到每个新点(例如 temp)后进行预测,看看它是否会导致失败。

免责声明:这种方式不是您在实践中真正做的,但对于该领域的新手学习者来说是一个不错的起点!

我建议你看看这个答案这个教程这个视频

希望能帮助到你!

每当您查看日志时,基本上您都想做异常检测我尝试过多种方法,并希望使用更多方法:

1) 主题建模 2) 监督学习并可以使用 H2O.ai 进行扩展 3) XGBOOST 如果您使用的是 Elastic Search,则可以使用 NBoost。⚡NBoost 是一个可扩展的搜索引擎增强平台,用于开发和部署最先进的模型以提高搜索结果的相关性。

如果您想利用 Azure 提供的所有其他优势快速扩展,请使用 Azure。您也可以在没有 Azure 的情况下工作。首先清理您的数据并查看日期时间是否对识别模式很重要。例如:CPU 温度可能在设备发生故障之前已经波动了 2-3 天,或者在设备发生故障之前风扇发生故障。C捕获模式并围绕这些模式绘制概率作为特征。

大多数人会推荐 BERT,但除非您为任务创建 OWN BERT,否则 BERT 不会准确执行。

我希望这些观点是有帮助的。