【问题标题】:Rare Event Detection罕见事件检测
【发布时间】:2011-03-02 08:31:23
【问题描述】:

对人们用于罕见事件检测的算法有什么好的参考吗? 另外,如何考虑时间因素?如果我遇到连续数据点说明某些事情的情况(t_1 到 t_n),如何将其纳入正常的机器学习场景?

任何指针将不胜感激。

【问题讨论】:

  • 这取决于您所说的“罕见事件”是什么意思……在您的问题领域中,事件的罕见性如何量化?
  • 查看标记点过程,了解如何处理信息增量。
  • 几天一次,但数据是分钟数据。所以它在 (2-10)*1440 分钟内只有 120 分钟

标签: machine-learning data-mining classification


【解决方案1】:

这可能有助于更多地描述您的场景。由于您正在尝试查找罕见事件,我假设您有一个不罕见的工作定义(对于某些问题空间,这真的很难)。

例如,假设我们有一些不是随机游走进程的进程,例如某些服务的 CPU 利用率。如果您想检测罕见事件,您可以获取平均利用率,然后查看几个标准偏差。 Statistical Process Control 的技术在这里很有用。

如果我们有一个随机游走过程,例如股票价格(打开蠕虫罐...为了简单起见,请假设这一点)。从 t 到 t+1 的方向运动是随机的。随机事件可能是单个方向上一定数量的连续移动,也可能是单个时间步长上单个方向上的大移动。有关基本概念,请参阅Stochastic Calculus

如果步骤 t 的流程仅依赖于步骤 t-1,那么我们可以使用 Markov Chains 来对流程进行建模。

这是您可以使用的数学技巧的简短列表。现在开始机器学习。为什么要使用机器学习? (总是很好地考虑以确保您没有使问题过于复杂)让我们假设您这样做并且这是正确的解决方案。在这个阶段,您使用的实际算法并不是很重要。你需要做的是定义什么是罕见事件。相反,您可以定义什么是正常事件并查找不正常的事情。请注意,这些不是一回事。假设我们产生了一组罕见事件 r1...rn。这些罕见事件中的每一个都会有一些与之相关的特征。例如,如果一台计算机出现故障,可能会出现上次在网络上看到它的时间、它的交换机端口状态等特征……这实际上是机器学习、训练集构建中最重要的部分。它通常包括手动标记一组示例来训练模型。一旦您对特征空间有了更好的了解,您就可以训练另一个模型来为您标记。重复此过程,直到您满意为止。

现在,如果您能够定义稀有事件集,那么简单地生成启发式可能会更便宜。为了检测稀有事件,我一直发现这种方法效果更好。

【讨论】:

  • 同意:)。我想弄清楚的问题是在这些事件发生之前我是否可以捕捉到任何信号。所以时间因素在这里起作用。因为之前定义了基于规则的方法。但是,当它正在调查的软件/硬件发生变化时,这并不适用。
  • 唯一要做的就是不断地重新训练模型。机器学习通过查看过去来工作,因此它假设未来将类似于过去。因此,您也许可以做一些事情来确定一个过程是否不正常。但是,您可能无法将其归类为特定类别,因为您以前不会看到它。考虑高频交易。他们拥有可在大多数市场条件下工作的模型。当市场条件不正常时,他们会因为不确定模型是否有效而关闭。
猜你喜欢
  • 2011-04-19
  • 1970-01-01
  • 2019-03-09
  • 2014-05-23
  • 2013-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多