不使用ILP的关系数据挖掘


9

我有一个来自关系数据库的庞大数据集,需要为其创建分类模型。通常在这种情况下,我会使用归纳逻辑编程(ILP),但由于特殊情况,我无法做到这一点。

解决此问题的另一种方法是,当我有外交关系时尝试合计价值观。但是,对于某些名义属性,我有成千上万的重要且不同的行(例如:与几种不同的药物处方有关的患者)。因此,如果不为该名义属性的每一行创建一个新属性,我就无法做到这一点,而且如果我这样做的话,大多数新列将具有NULL值。

是否有任何非ILP算法可以让我在不使用数据透视之类的技术的情况下对关系数据库进行数据挖掘,该技术会创建成千上万的新列?


2
规则挖掘呢?我不清楚您的目标是什么。
adesantos

我注意到一个很好的问题,它出现在多个Stack Exchange论坛上... stackoverflow.com/questions/24260299/… ; 并不是说我对这样的事情固执己见,但我认为我们不应该这样做
Hack-R

另外,如果您对分类的内容,遇到的障碍有更多的了解,并且在理想的情况下为我们提供一些示例数据供您参考,将会很有帮助
Hack-R

Answers:


1

首先,一些警告

我不确定为什么您不能使用您喜欢的编程(子)范例*,归纳逻辑编程(ILP)或您尝试分类的内容。提供更多细节可能会导致更好的答案。尤其是因为根据与之关联的编程范式来选择分类算法有点不寻常。如果您的真实示例是机密的,则只需构成一个虚构但类似的示例。

没有ILP的大数据分类

话虽如此,在排除ILP之后,我们在考虑的范围内还有其他4种逻辑编程范例:

  1. 诱拐的
  2. 答案集
  3. 约束
  4. 功能性

除了逻辑编程之外的数十种范式和子范式。

例如,在功能逻辑编程中,存在称为归纳功能逻辑编程的ILP扩展,该扩展基于反转缩小(即缩小机制的反转)。这种方法克服了ILP的一些局限性(至少根据一些学者的观点)适合于表示形式的应用,并具有允许以更自然的方式表达问题的好处。

在不了解数据库的详细信息以及使用ILP所面临的障碍的情况下,我不知道这是否解决了您的问题或遭受了同样的问题。因此,我还将提出一种完全不同的方法。

ILP与“经典”或“命题”方法进行数据挖掘形成对比。这些方法包括机器学习的实质,例如决策树,神经网络,回归,装袋和其他统计方法。您可以加入使用高性能计算(HPC)来将这些方法用于海量数据集的许多数据科学家,大数据工程师和统计学家的行列,而不是因为数据量大而放弃这些方法。您还可以选择抽样和其他统计技术来减少计算资源和分析关系数据库中大数据所需的时间。

HPC包括利用多个CPU内核,通过弹性使用具有高内存和大量快速CPU内核的服务器来扩展分析,使用高性能数据仓库设备,采用群集或其他形式的并行计算等。我不确定要使用哪种语言或统计套件分析数据,但是作为示例,该CRAN任务视图列出了R语言的许多HPC资源,这将使您可以扩展命题算法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.