数据挖掘(英语:Data mining),又译为数据采矿、数据挖掘。它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤。数据挖掘一般是指从大量的数据中自动搜索隐藏于其中的有着特殊关系性(属于Association rule learning)的信息的过程。数据挖掘通常与计算机科学有关,并通过统计、在线分析处理、情报检索、机器学习、专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。
数据挖掘有以下这些不同的定义:
尽管通常数据挖掘应用于数据分析,但是像人工智能一样,它也是一个具有丰富含义的词汇,可用于不同的领域。 它与KDD的关系是:KDD是从数据中辨别有效的、新颖的、潜在有用的、最终可理解的模式的过程;而数据挖掘是KDD通过特定的算法在可接受的计算效率限制内生成特定模式的一个步骤。 事实上,在现今的文献中,这两个术语经常不加区分的使用。
数据挖掘的方法(Strategy)包括监督式学习、非监督式学习、关系分组(Affinity Grouping,作关系性的分析)与购物篮分析(Market Basket Analysis)、同值分组(Clustering)与描述(Description)。监督式学习包括:分类(Classification)、推估(Estimation)、预测(Prediction)。
数据挖掘在零售行业中的应用:零售公司跟踪客户的购买情况,发现某个客户购买了大量的真丝衬衣,这时数据挖掘系统就在此客户和真丝衬衣之间创建关系。销售部们就会看到此信息,直接发送真丝衬衣的当前行情,以及所有关于真丝衬衫的资料发给该客户。这样零售商店通过数据挖掘系统就发现了以前未知的关于客户的新信息,并且扩大经营范围。
数据挖掘是因为海量有用数据快速增长的产物。使用计算机进行历史数据分析,1960年代数字方式采集数据已经实现。1980年代,关系数据库随着能够适应动态按需分析数据的结构化查询语言(Structured Query Language, SQL)发展起来。数据仓库开始用来存储大量的数据。
因为面临处理数据库中大量数据的挑战,于是数据挖掘应运而生,对于这些问题,它的主要方法是数据统计分析和人工智能搜索技术。
通常作为与数据仓库和分析相关的技术,数据挖掘处于它们的中间。然而,有时还会出现十分可笑的应用,例如发掘出不存在但看起来振奋人心的模式(特别的因果关系),这些根本不相关的、甚至引人误入歧途的、或是毫无价值的关系,在统计学文献里通常被戏称为“数据捕捞”(Data dredging, data fishing, or data snooping)。
数据挖掘意味着扫描可能存在任何关系的数据,然后筛选出符合的模式,(这也叫作“过度匹配模式”)。大量的数据集中总会有碰巧或特定的数据,有着“令人振奋的关系”。因此,一些结论看上去十分令人怀疑。尽管如此,一些探索性数据分析 还是需要应用统计分析查找数据,所以好的统计方法和数据数据的界限并不是很清晰。
更危险是出现根本不存在的关系性。投资分析家似乎最容易犯这种错误。在一本叫做《顾客的游艇在哪里?》的书中写道:“总是有相当数量的可怜人,忙于从上千次的赌轮盘的轮子上查找可能的重复模式。十分不幸的是,他们通常会找到。”[3]
多数的数据挖掘研究都关注于发现大量的数据集中,一个高度详细的模式。在《大忙人的数据挖掘》一书中, 西弗吉尼亚大学和不列颠哥伦比亚大学研究者讨论了一个交替模式,用来发现一个数据集当中两个元素的最小区别,它的目标是发现一个更简单的模式来描述相关数据。[4]
数据预处理一般包括数据清理、数据集成、数据变换和数据规约四个处理过程
与数据挖掘有关的,还牵扯到隐私问题,例如:一个雇主可以通过访问医疗记录来筛选出那些有糖尿病或者严重心脏病的人,从而意图削减保险支出。然而,这种做法会导致伦理和法律问题。
对于政府和商业数据的挖掘,可能会涉及到的,是国家安全或者商业机密之类的问题。这对于保密也是个不小的挑战。[5]
数据挖掘有很多合法的用途,例如可以在患者群的数据库中查出某药物和其副作用的关系。这种关系可能在1000人中也不会出现一例,但药物学相关的项目就可以运用此方法减少对药物有不良反应的病人数量,还有可能挽救生命;但这当中还是存在着数据库可能被滥用的问题。
数据挖掘实现了用其他方法不可能实现的方法来发现信息,但它必须受到规范,应当在适当的说明下使用。
如果数据是收集自特定的个人,那么就会出现一些涉及保密、法律和伦理的问题。[6]
先验算法(英语:Apriori algorithm)是数据挖掘中最基本的算法。
(按照字母顺序排列)