0

我有一个经常对其执行数据挖掘操​​作的数据集。我想根据数据更新的频率来确定执行数据挖掘操​​作的频率。是否有任何方程式可以根据数据更新频率为我提供最佳挖掘频率?如果没有,并且我想获得自己的,我将如何去做?如果我想包含更多变量怎么办?如果有的话,我只需要一些指向一些阅读材料的指针。谢谢你。

4

2 回答 2

0

这不是一个真正的 CS 问题,即使它听起来像一个(除非它是一个家庭作业问题......我假设你有一个现实世界的问题要解决)。我假设如果您是“数据挖掘”,您所做的不仅仅是针对实时 OLTP 数据库运行查询(例如在单独的系统上设置多维数据集)。这将归结为用户问题。答案将取决于:

  • 您正在捕获的数据中的模式(它是周期性的,即每小时/每天/每周)。比一个周期更频繁的更新可能没有用。同样,如果它是基于事件的,并且事件不是连续发生的,那么比传入事件更频繁地更新您的采矿系统将是无用的。
  • 您能否收集数据以将其转换为数据挖掘设置,而不会让用户或系统编写原始数据陷入困境?如果没有,您需要在系统负载较低时执行此操作。如果您正在分析日志,或使用自动复制(即 oracle 流),您可能不受此限制。
  • 进行数据挖掘的人员/流程何时可以停止并接受新的数据集……您不能只是从正在进行的工作中撤出地毯并替换他们正在处理的数据。

答案可能不是你可以“推导出”的东西。它将来自两端用户(自动或人工)的约束。

于 2012-06-04T20:43:11.060 回答
0

不确切知道您的数据是什么样的,或者您的需求是什么 - 通常我们数据挖掘到

  1. 在数据中找到模式
  2. 创建一个模型以根据我们的(过去)数据做出未来的决策

你只需要进一步数据挖掘,如果

  1. 您已经收集了足够的“新”数据,您可能能够找到新的模式
  2. 您已经收集了足够的“新”数据,您的模型不再预测新现象
  3. 你开发了一种新技术,或者修改了数据,使得再次执行数据挖掘是有意义的

一些盲目的猜测:

  1. 每次您收集占当前数据集 5% 的新数据时,我都会执行该操作,即,如果您有 10 GB,则在收集 0.5 GB 后执行该操作(假设这是可行的!(不到一天))
  2. 如果您没有以这种规模收集新数据,那么每周运行一次操作应该相对便宜,并且肯定会让您放心
  3. 如果您以每天千兆字节或更多的规模收集数据,那么瓶颈就是操作成本。使用您的判断,如果手术时间超过一天,可能每月一次。在这种规模下,运营本身将开始在计算能力上花钱,公司应该聘请专家。

就公式而言,没有,但我会向您推荐有关统计意义的维基百科文章。

于 2012-06-16T03:40:18.383 回答