1.数据挖掘的起源
数据挖掘技术出现于20世纪80年代末,是在多门学科发展的基础上发展起来的。随着数据库技术的发展应用,数据不断积累膨胀,简单的查询和统计已无法满足企业的商业需求,急需一些革命性的技术挖掘数据背后的信息。与此同时,计算机领域的人工智能(Artificial Intelligence,AI)也取得了巨大进展,进入了机器学习阶段。因此,人们将两者结合,用数据库管理系统存储数据,用计算机分析数据,并尝试挖掘数据背后的信息,这两者的结合促生了一门新的学科,即数据挖掘 [8] 。
1989年8月,美国底特律市召开第十一届国际联合人工智能学术会议,首次提到“知识发现”这一概念;1993年,电气电子工程师学会(IEEE)的知识与数据工程(Knowledge and Data Engineering)会刊出版KDD技术专刊,发表的论文和摘要体现了当时KDD的最新研究成果和动态。1995年,加拿大蒙特利尔召开首届“知识发现和数据挖掘”国际学术会议,首次提出“数据挖掘”这一学科名称,并把数据挖掘技术分为科研领域的知识发现与工程领域的数据挖掘,之后每年召开一次,经过十几年的努力,人们对数据挖掘技术的研究已经取得了丰硕的成果。
2.数据挖掘的研究热点
数据挖掘的研究热点 [9] 主要包括以下几个方面。
1)多媒体数据挖掘
多媒体数据包括图形、图像、文本、文档、超文本、声音、视频和音频数据等。随着信息技术的进步,人们所接触的数据形式越来越丰富,多媒体数据的大量涌现,形成了很多海量的多媒体数据库。很多数据都是非结构化的,所以首先要将这些数据转化为结构化数据,研究者提出了多媒体数据挖掘的系统原型MDMP,主要过程是将多媒体数据的建模、表示、存储和检索等多媒体数据库技术与数据挖掘技术结合在一起,采用多媒体图像数据的相似性搜索、多维分析、关联规则挖掘、分类与聚类分析等挖掘方法。
2)时序数据挖掘
时序数据挖掘是指通过研究数据的时间特性,深入发掘事物演变机制,揭示其内在规律。成为获得知识的有效途径,时序数据挖掘技术的关键是要寻找一种合适的序列表示方式,根据点距离和关键点建立时序序列是常用的方法。时序数据挖掘的主要技术有趋势分析与相似搜索,在宏观经济预测领域、市场营销、客流量分析、股票价格波动等众多领域得到了应用。在专利数据挖掘领域,专利的编号、年份等信息可以利用时序数据挖掘技术进行检索分析。
3)Web数据挖掘
随着网络技术的快速普及和飞速发展,在网络上可获得数量庞大的信息。但通过这种方式获得的数据普遍都具有量大、分布广泛、全球性多样和动态变化的特点。面对如此大量的网络数据,如何在这样全球化的、大的数据集合中发现有用信息已经成为Web数据挖掘研究的热点。
4)文本数据挖掘
文本数据挖掘被定义为从文本中挖掘出有意义的知识方法和技术。文本数据挖掘根据知识类型的不同,可以分为文本总结、文本分类、分布分析和趋势分析。
(1)文本总结。文本总结就是从文本中抽取一些关键信息,对文本内容进行概括,这样用户不需要阅读文本的全文就可以大致了解文本中所涉及的内容。
(2)文本分类。文本分类指的是根据带有特定关键信息的样文和样文中的关键信息对数量庞大的文本进行分类,通过限制检索范围的方法使得检索更加精确。
(3)分布分析和趋势分析。分布分析和趋势分析就是对文本某一特定方面,得到数据在历史时期和现在的情况,并根据此情况分析出未来的发展趋势。
3.数据挖掘的挑战
在大数据背景下数据挖掘要面临的挑战主要表现在以下几个方面 [4,10] 。
(1)数据类型的多样性:不同的应用、系统和终端,由于标准的差异性,会产生不同结构的数据,其中包括结构化数据、半结构化数据和非结构化数据,对这些异构化数据的抽取与集成将成为一大挑战。
(2)数据挖掘分析模型的重构:在大数据背景下,要实现用低成本和可扩展的方式处理大数据,就需要对IT架构进行重构,开发和使用先进的软件平台和算法。Hadoop是目前最为流行的大数据处理平台之一,围绕Hadoop平台应用也已开展大量工作。目前,尽管计算机智能化有了很大进步,但还只是针对小规模、有结构或者类结构的数据进行分析,对于深层次的数据挖掘,现有数据挖掘算法在不同行业中还难以通用。
(3)清洗粒度大小不易把握:普适终端所处地理位置具有复杂性,因此其产生的数据具有很多噪声。在进行数据清洗时,不易把握清洗粒度。粒度太大,残留的噪声会干扰有价值的信息;粒度太小,可能会遗失有价值的信息。
(4)数据开放与隐私的权衡:互联网的交互性,使得人们在不同位置产生的数据足迹得到积累和关联,从而增加了隐私暴露的概率,且这种隐性的数据暴露往往是无法控制和预知的。随着数据挖掘工具和电子产品的日益普及,如何在推动数据全面开放、应用和共享的同时,有效地保护公民和企业的隐私、逐步加强隐私立法,将是数据挖掘要面对的一个重要问题。
4.数据挖掘的发展趋势
数据挖掘的发展趋势 [11] 如下。
(1)数据挖掘语言的标准化描述:标准的数据挖掘语言将有助于数据挖掘的系统化开发,改进多个数据挖掘系统和功能间的互操作,促进其在企业和社会中的使用。
(2)数据挖掘过程的可视化方法:可视化要求已经成为数据挖掘系统中必不可少的技术,可以在发现知识的过程中进行很好的人机交互。数据的可视化起到了推动人们主动进行知识发现的作用。
(3)与特定数据存储类型的适应问题:根据不同数据存储类型的特点,进行针对性的研究是目前流行及将来一段时间必须面对的问题。
(4)网络与分布式环境下的数据挖掘问题:随着互联网的不断发展,网络资源日渐丰富,这就需要分散的技术人员各自独立地处理分离数据库的工作方式应是可协作的。因此,考虑适应分布式与网络环境的工具、技术及系统将是数据挖掘中极为重要的子领域。
(5)应用的探索:随着数据挖掘的日益普遍,其应用范围也日趋扩大,如生物医学、电信业、零售业等领域。由于数据挖掘在处理特定应用问题时存在局限性,因此目前的研究趋势是开发针对特定应用的数据挖掘系统。
(6)数据挖掘与数据库系统和Web数据库系统的集成:数据库系统和以Web查询接口方式访问数据库资源的Web数据库系统已经成为信息处理系统的主流。通常来说,数据存储在数据库系统和Web数据库系统中,并在此之上进行数据挖掘和应用。