数据挖掘,统计,机器学习和AI之间有什么区别?


208

数据挖掘,统计,机器学习和AI之间有什么区别?

可以准确地说,它们是试图解决非常相似的问题但使用不同方法的4个领域吗?它们到底有什么共同之处,又有何不同?如果它们之间存在某种等级关系,那会是什么?

以前曾问过类似的问题,但我仍然不明白:

Answers:


109

这些之间有相当大的重叠,但是可以加以区别。必要时,我将不得不简化某些事情或给其他人以简短的印象,但我会尽我所能来对这些领域有所了解。

首先,人工智能与其他技术截然不同。人工智能是关于如何创建智能代理的研究。在实践中,这是如何对计算机进行编程以使其像智能代理(例如,人)那样行动并执行任务。这并不具有在所有涉及学习或感应,它可以只是为“建立一个更好的捕鼠器”的方式。例如,AI应用程序包括用于监视和控制正在进行的过程的程序(例如,如果方面A太低,则增加方面A)。请注意,只要机器不“愚蠢”地进行,人工智能就可以在其所做的任何事情上包含织补。

但是,实际上,大多数需要智能的任务都需要具备从经验中吸取新知识的能力。因此,人工智能中的很大一部分是机器学习。根据某种性能度量,如果计算机程序在任务上的性能随经验而提高,则据说它可以从经验中学习一些任务。机器学习涉及可以自动提取信息的算法的研究(即,无需在线人工指导)。这当然是其中的一些程序,包括思想直接来源于,或古典统计启发的情况下,但他们不具备成为。与AI类似,机器学习非常广泛,几乎可以包含所有内容,只要其中包含一些归纳性成分即可。机器学习算法的一个示例可能是卡尔曼滤波器。

数据挖掘是一个领域,它从机器学习(还有一些也是从统计学)中汲取了很多灵感和技术,但却处于不同的目的。数据挖掘是由人员在特定情况下根据特定目标对特定数据集进行的。通常,此人想利用机器学习中已开发的各种模式识别技术的力量。数据集经常是庞大复杂和/或可能有特殊问题的(例如,变量多于观察值)。通常,目标是在事先真的很少了解的领域中发现/产生一些初步的见解,或者能够准确地预测未来的观察结果。此外,数据挖掘过程可以是“无监督的”(我们不知道答案—发现),也可以是“监督的”(我们知道答案-预测)。注意,通常的目的不是要对底层数据生成过程有更复杂的了解。常见的数据挖掘技术将包括聚类分析,分类和回归树以及神经网络。

我想我不需要多说什么解释该网站上的统计信息,但是也许我可以说几句话。古典统计(这里我指的是常客和贝叶斯)是数学中的一个子主题。我认为这很大程度上是我们对概率的了解与对优化的了解的交集。尽管可以将数学统计仅作为柏拉图研究的对象进行研究,但与其他较稀疏的数学领域相比,它通常被理解为更实用和更具有特色。因此(尤其是与上述数据挖掘相反),它通常用于更好地理解某些特定的数据生成过程。因此,它通常以正式指定的模型开始,并由此衍生出一些程序,可以从嘈杂的实例中准确地提取该模型(即通过优化某些损失函数进行估算),并能够将其与其他可能性区分开(即基于采样分布的已知属性进行推断)。原型统计技术是回归。


1
我同意大部分职位,但我会说,大多数时候AI不会尝试创建智能代理(无论如何,什么是智能?),而是理性代理。理性的意思是“给定关于世界的可用知识是最优的”。尽管公认的最终目标是解决一般问题。
kutschkem 2014年

3
抱歉,我仍然没有得到数据挖掘和机器学习之间的区别。从我的角度来看,数据挖掘=机器学习的无监督学习。机器学习在发现新见解方面是否不受监督?
dtc

一位匿名用户在此博客文章中建议使用一个表,该表按参数分解数据挖掘和机器学习之间的差异。
gung

1
Common data mining techniques would include cluster analyses, classification and regression trees, and neural networks.可以肯定地说,与聚类分析相比,神经网络数据挖掘中使用的机器学习工具的一个示例,聚类分析不是为数据挖掘中的机器学习而设计的算法
t0mgs 2016年

实际上,@ TomGranot-Scalosub非常模糊。我想说神经网络绝对是ML,并且肯定是ML研究人员研究了聚类分析和CART。我试图使这些想法更加清晰和鲜明,但是这些类别之间并没有真正的界限。
gung

41

其他许多答案都涵盖了要点,但您询问是否存在等级制度以及我的看法,尽管它们都是各自独立的学科,但似乎没有人提到等级制度,因为每种制度都是基于前一个。

统计信息只是关于数字和量化数据。有很多工具可以找到数据的相关属性,但这与纯数学非常接近。

数据挖掘是关于使用统计信息以及其他编程方法来查找隐藏在数据中的模式,以便您可以解释某些现象。数据挖掘建立了一些数据中实际发生情况的直觉,并且对数学的理解只比编程多,但两者都使用。

机器学习使用数据挖掘技术和其他学习算法来构建一些数据背后发生的事件的模型,以便可以预测未来的结果。数学是许多算法的基础,但这更多地是针对编程。

人工智能使用由机器学习和其他方法构建的模型来推理世界,并引发智能行为,无论是玩游戏还是驾驶机器人/汽车。人工智能通过预测行动将如何影响世界模型并选择最能实现该目标的行动来实现某些目标。非常基于编程。

简而言之

  • 统计 量化的数字
  • 数据挖掘 解释模式
  • 机器学习 通过模型进行预测
  • 人工智能的 行为原因

话虽这么说,将会出现一些AI问题,这些问题只属于AI,其他领域也是如此,但是当今大多数有趣的问题(例如自动驾驶汽车)都可以轻松正确地称为所有这些问题。希望这可以消除您询问的他们之间的关系。


您曾经使用过WEKA或RapidMiner吗?例如,EM在数据挖掘之内,并且应用了模型。除此之外,请查看mariana soffer给出的定义,并将其与您的答案进行比较。几年前,我读了Bishop和Russell / Norvig,但据我所知。通过mariana soffer比较合适。btw数据挖掘是(“仅”)知识发现之前的主要步骤。当使用具有足够参数的算法时,数据挖掘仅是在获取数据,然后是在获取信息。数据挖掘无法解释模式。
助记符

不,@助记符,关于AI的定义与mariana的定义更符合Russell和Norvig的要求
nealmcb

2
我认为统计资料描述不佳;quantifyinf数字是国家统计部门报告的统计数据,但这与为数据创建模型,估计其参数并进行推断的统计科学不同。另外,数据挖掘和机器学习之间的关系是颠倒的。数据科学使用机器学习技术,而不是相反。也请参阅Ken van Haren的答案。
理查德·哈迪

25
  • 统计与概率模型有关,特别是关于使用数据推断这些模型的信息。
  • 机器学习涉及在给定一些数据的情况下预测特定结果。几乎任何合理的机器学习方法都可以表述为正式的概率模型,因此从这个意义上讲,机器学习与统计信息非常相似,但是区别在于它通常不关心参数估计(只是预测),并且关注计算效率和大型数据集。
  • (据我所知)数据挖掘是应用的机器学习。它更侧重于在大型数据集上部署机器学习算法的实际方面。它与机器学习非常相似。
  • 人工智能是与计算机中的智能(某些任意定义)有关的事物。因此,它包含很多东西。

通常,事实证明,概率模型(以及统计数据)是在机器中正式构造知识和理解的最有效方法,以至于在今天所有其他三个模型(AI,ML和DM)中,概率模型都是子领域。统计。不是第一个成为统计学的影子臂的学科……(经济学,心理学,生物信息学等)


5
@Ken-将经济学心理学或AI描述为统计的影子臂是不准确的-即使统计数据在每个领域都被大量用来分析这些领域感兴趣的许多问题。您也不想建议医学是影子臂即使大多数医学结论在很大程度上都依赖于数据分析,也无法确定统计数据。
mpacer 2011年

@Ken-这是一个很好的回应,但是您可以更全面地描述AI所包含的其他内容。例如,从历史上看,人工智能还包括大量非概率模型的分析(例如生产系统,细胞自动机等,例如,参见Newell&Simon 1972)。当然,所有这些模型都是某些概率模型的局限性案例,但是直到很久以后才对它们进行分析。
mpacer 2011年

4
数据挖掘超出了机器学习的范围,因为它实际上涉及数据的存储和索引方式,从而使算法更快。它的特点是主要采用AI,ML和统计方法,并将其与高效,聪明的数据管理和数据布局技术相结合。当它不涉及数据管理时,通常可以将其称为“机器学习”。但是,有一些任务,特别是“无监督”任务,既不涉及“学习”,又不涉及数据管理,这些任务仍称为“数据挖掘”(聚类,离群值检测)。
Anony-Mousse 2012年

21

我们可以说它们都是相关的,但是它们都是不同的东西。尽管您可以在它们之间有共同点,例如在统计和数据挖掘中,但是您可以使用聚类方法。
让我尝试简要定义每个:

  • 统计学是一门非常古老的学科,主要基于经典的数学方法,可以用于与数据挖掘有时用于对事物进行分类和分组的相同目的。

  • 数据挖掘包括构建模型,以检测模式,这些模式使我们能够在给定一定数量的事实或因素的情况下对情况进行分类或预测。

  • 人工智能(请参阅Marvin Minsky *)是一门试图模仿大脑如何使用编程方法(例如,构建下棋程序)的学科。

  • 机器学习是建立知识并将其以某种形式存储在计算机中的任务;该形式可以是数学模型,算法等。可以帮助检测模式的任何形式。


2
不,大多数现代AI都不遵循早期的“模仿大脑”方法。它着重于创建“理性代理”,该理性代理在环境中发挥作用以最大化效用,并且与机器学习更紧密相关。参见Russell和Norvig的书。
nealmcb '16

1
在您的定义中,我看不到机器学习和数据挖掘之间的区别
Martin Thoma,

16

我最熟悉机器学习-数据挖掘轴-因此,我将专注于此:

机器学习倾向于对非标准情况下的推理感兴趣,例如非iid数据,主动学习,半监督学习,使用结构化数据(例如字符串或图形)进行学习。ML还倾向于对可学内容的理论界限感兴趣,这通常构成所使用算法(例如支持向量机)的基础。ML倾向于具有贝叶斯性质。

数据挖掘有兴趣在您不了解的数据中查找模式。我不确定统计数据与探索性数据分析有何显着差异,而在机器学习中,通常要解决一个更明确的问题。

ML倾向于对过拟合是问题的小型数据集更感兴趣,而数据挖掘则对问题在处理数据量的大型数据集感兴趣。

统计和机器学习提供了数据挖掘者使用的许多基本工具。


我不同意“ ML对小型数据集更感兴趣”。
Martin Thoma

对于小型数据集,数据挖掘变得更加困难,因为它增加了发现虚假关联的机会(并增加了检测它的难度)。对于小型数据集,做出尽可能少的选择的推理往往会更加安全。
迪克兰有袋动物

13

这是我的看法。让我们从两个非常广泛的类别开始:

  • 甚至假装为智能的任何东西都是人工智能(包括ML和DM)。
  • 总结数据的任何事情都是统计数据,尽管您通常只将其应用于关注结果有效性的方法(通常在ML和DM中使用)

ML和DM通常都是AI和统计数据,因为它们通常涉及两者的基本方法。以下是一些区别:

  • 机器学习中,您有一个明确的目标(通常是预测
  • 数据挖掘中,您的目标实质上是“ 我之前知道的事情

此外,数据挖掘通常涉及更多的数据管理,即如何在有效的索引结构和数据库中组织数据。

不幸的是,它们并不是那么容易分离。例如,存在“无监督学习”,因为它无法朝目标进行优化,所以与DM的关系通常比与ML的关系更紧密。另一方面,DM方法很难评估(您如何评价您不知道的东西?),并且经常通过遗漏一些信息来在机器学习相同的任务上进行评估。但是,这通常会使它们的工作效果比可以朝实际评估目标进行优化的机器学习方法更差。

此外,它们经常组合使用。例如,使用数据挖掘方法(例如,聚类或无监督的异常值检测)对数据进行预处理,然后将机器学习方法应用于预处理的数据以训练更好的分类器。

机器学习通常更容易评估:存在诸如得分或班级预测之类的目标。您可以计算精度和召回率。在数据挖掘中,大多数评估是通过省略一些信息(例如类标签)然后测试您的方法是否发现相同的结构来完成的。从某种意义上讲,这是天真的,因为您假设类标签完全编码了数据的结构。实际上,您会惩罚发现数据中新内容的数据挖掘算法。间接评估的另一种方法是,发现的结构如何提高实际ML算法的性能(例如,在对数据进行分区或删除异常值时)。尽管如此,此评估仍基于再现现有结果,而这实际上并不是数据挖掘的目标...


1
您的回应非常有见地。我特别赞赏最后一段,这是关于评估ML性能和评估DM性能的差异。
justis 2012年

8

我会说些什么...

人工智能是一个非常广义的术语,它涉及与机器进行类似推理或有感觉的活动的机器有关的任何事情,从计划任务或与其他实体合作到学会操纵肢体走路。一个简单的定义是,人工智能是任何与计算机相关的东西,我们还不知道如何做好。(一旦我们知道如何做好,它通常会获得自己的名称,而不再是“ AI”。)

与Wikipedia相反,我的印象是模式识别和机器学习是同一领域,但是前者是由计算机科学人员实践的,而后者则是由统计学家和工程师实践的。(许多技术领域是由不同的小组反复发现的,他们经常将自己的术语和思维方式带到桌面上。)

无论如何,我认为数据挖掘采用机器学习/模式识别(与数据配合使用的技术)并将其包装在数据库,基础架构和数据验证/清除技术中。


6
机器学习和模式识别不是一回事,机器学习也对诸如回归和因果推理等事物感兴趣。模式识别只是机器学习中关注的问题之一。我认识的大多数机器学习人员都在计算机科学系学习。
Dikran有袋动物博物馆,2010年

2
@Dikran同意,但是ML和PR通常是别名,并在数据分析的相似主题下介绍。我的首选书的确是Christophe M Bishop的《模式识别和机器学习》。这是John MainDonald在JSS中的评论,j.mp/etg3w1
chl 2010年

我还感到,在CS领域,“机器学习”一词比“模式识别”更为普遍。
bayerj 2011年

在这里也觉得ML更像是CS术语。
卡尔·莫里森

3

可悲的是,这些领域之间的差异主要是在授课的地方:统计基于数学部门,人工智能,计算机科学部门中的机器学习,并且数据挖掘得到了更多的应用(由商业或市场部门使用,由软件公司开发) 。

首先,人工智能(尽管它可能意味着任何智能系统)传统上是指基于逻辑的方法(例如专家系统),而不是统计估计。基于数学系的统计学对理论有很好的理解,并且在实验科学中有着明确的科学模型,并且在实验科学中具有丰富的应用经验,需要统计学来处理有限的实验数据。人们通常将重点放在从非常小的数据集中获取最大的信息。此外,数学证明也存在偏差:除非您能证明自己的方法,否则您将不会发表论文。这往往意味着统计数据落后于使用计算机来自动进行分析。再次,缺乏编程知识使统计学家无法解决在计算问题变得重要的大规模问题上(考虑GPU和诸如hadoop之类的分布式系统)。我认为,生物信息学等领域现在已经朝着这个方向更加推动了统计工作。最后,我要说的是统计学家对此持怀疑态度:他们并不是声称您可以从统计学中发现知识,而是科学家提出了一个假设,统计学家的工作是检查假设是否得到了数据的支持。机器学习是在CS部门教授的,不幸的是没有教授适当的数学:多变量演算,概率,统计和优化并不常见...有人含糊不清的``迷人''概念,例如从示例中学到的东西...统计学习要素第30页。这往往意味着对理论的了解很少,并且算法的爆炸性增长,因为研究人员总是可以找到一些可以证明其算法更好的数据集。因此,随着ML研究人员追赶下一个大事,便有大量的炒作阶段:神经网络,深度学习等。不幸的是,CS部门有很多钱(想想google,Microsoft,以及更有市场价值的“学习”),所以更多的怀疑统计学家被忽略了。最后,经验主义者倾向于:基本上有一个基本的信念,即如果在算法上投入足够的数据,它将“学习”正确的预测。尽管我对ML有偏见,但ML中有一个基本的见解,而统计学家却忽略了这一见解:计算机可以彻底改变统计学的应用。

有两种方法-a)自动执行标准测试和模型。例如运行一系列模型(线性回归,随机森林等,尝试输入,参数设置等的不同组合)。这确实没有发生-尽管我怀疑kaggle上的竞争对手开发了自己的自动化技术。b)将标准统计模型应用于海量数据:想想例如Google翻译,推荐系统等(没有人声称例如人们会这样翻译或推荐。但这是一种有用的工具)。基本的统计模型很简单,但是将这些方法应用于数十亿个数据点时,存在巨大的计算问题。

数据挖掘是这种哲学的高潮...开发从数据中提取知识的自动化方法。但是,它有一种更实用的方法:本质上,它适用于没有总体科学理论(营销,欺诈检测,垃圾邮件等)的行为数据,并且其目的是使大量数据的分析自动化:如果有足够的时间,统计学家团队可以进行更好的分析,但是使用计算机更具成本效益。此外,正如D. Hand所解释的那样,它是对辅助数据的分析-无论如何都要记录数据,而不是为可靠地进行实验设计而明确收集来回答科学问题的数据。数据挖掘统计等,D Hand

因此,我可以总结一下,传统的AI是基于逻辑而不是统计,机器学习是没有理论的统计,而统计是“没有计算机的统计”,而数据挖掘是在最少的用户干预下开发用于统计分析的自动化工具。


这个答案到处都是,因此很难遵循,而且不必要地冗长,但确实打了一个印记,即差异与纪律传统和重点更多有关。
Tripartio '18

1

数据挖掘是关于发现隐藏的模式或未知的知识,这些知识可用于人们进行决策。

机器学习涉及学习模型以对新对象进行分类。


机器学习关于分类吗?机器学习不能用于实现其他目标吗?
gung

@gung绝对不是。恕我直言,强化学习是ML最具特色的子领域,我不会说它是基于分类而是基于实现目标。
nbro

@nbro,该评论原本是要向OP暗示重新考虑他们定义ML的范围。
gung

0

在我看来,人工智能可以被视为机器学习,数据挖掘,模式识别等领域的“超集”。

  • 统计是一个数学领域,包括AI中使用的所有数学模型,技术和定理。

  • 机器学习是AI的一个领域,其中包括应用上述统计模型并能理解数据的所有算法,即预测分析,例如聚类和分类。

  • 数据挖掘是一门使用以上所有技术(主要是机器学习)的科学,目的是从数据中提取有用和重要的模式。数据挖掘通常与从海量数据集(即大数据)中提取有用信息有关。


-1

怎么样:教学机器学习

识别数据中有意义的模式:数据挖掘

根据已知模式预测结果:ML

查找新功能以重新映射原始数据:AI

这个鸟脑真的需要简单的定义。


-1

数据挖掘通常试图“预测”某些将来的数据,或者“解释”发生某些事情的原因。

统计数据更常用于验证我的假设。但这是一个主观的讨论。

统计人员和数据挖掘人员之间的明显区别可以从他们查看的摘要统计类型中找到。

统计数据通常会限制其R²和准确性,而数据挖掘人员将查看AUC,ROC曲线,升力曲线等,并且可能还会考虑采用与成本相关的准确性曲线。

数据挖掘程序包(例如,开源的Weka)具有用于输入选择,支持向量机分类等的内置技术,而在诸如JMP之类的统计程序包中,大多数则不存在这些技术。我最近刚从jmp人员那里上一门“ jmp数据挖掘”课程,尽管它是一个外观强大的软件包,但缺少一些必要的数据挖掘之前/之后/中间技术。输入选择是手动完成的,以获取对数据的深入了解,而仍在数据挖掘中,这只是您要针对大数据智能地发布算法并自动查看结果的目的。该课程显然是由统计人员教授的,强调了两者之间的不同心态。

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.