论文部分内容阅读
随着科学与经济数据的爆炸性增长,分析这些数据并提取出有用的知识显得尤为重要,这就导致一代新的工具和技术的产生,这些工具和技术归结一起被称为数据挖掘。在许多论文和文档中,存在其他一些名词,如数据库知识挖掘,知识提取,数据分析等,它们的意思和数据挖掘差别微小。科学或企业的大量数据运用数据挖掘进行分析,能够获得数据的规律和趋势。因此,数据挖掘日益得到人们的接受和认可。在许多不同的领域,包括数据库系统,知识库系统,人工智能,机器学习,知识获取、统计,空间数据库和数据可视化,研究人员表现出了极大兴趣。此外,一些新兴的信息应用,如提供在线服务和万维网服务,也要求各种数据挖掘技术,以便更好地了解客户的行为,改善服务质量,从而增加商机。数据挖掘和术语KDD之间存在一些混淆,一般来说,这两个名词可以交替使用。我们用KDD来表示将低层次的数据转换为高层次的知识的整个过程。KDD的一个简单定义就是确定一个有效的、新颖的、具有潜在价值的、并且最终可理解的数据形式的全过程。我们经常使用的数据挖掘的定义就是从可见的数据中提取数据模型。因此,数据挖掘就是KDD整个过程的其中一个步骤。数据挖掘产品正在席卷这个行业。数据库主要厂商已经采取了行动,以确保他们的平台含有数据挖掘技术。Oracle的数据挖掘套件(Darwin)采用了分类和回归树,神经网络,回归分析和聚类算法,微软的SQL Server通过使用聚类算法,分类树等来提供数据挖掘功能。还有一些其他的数据挖掘工具,如WEKA与MATLAB数据挖掘工具等。由于数据挖掘这一领域越来越受到重视,以及它的美好前景。我们创建了一个Browser/Server (B/S)数据挖掘系统,它允许客户实现一些在线数的据挖掘操作。虽然该系统目的不是替代现有的数据挖掘工具,但是我们努力使它成为一个通用的数据挖掘平台。我们用C#、MATLAB和SQL server 2005来实现该系统。为了达到预期的结果,我们的研究分三个步骤。第一步,我们对数据挖掘和数据分析的背景进行了调研。第二步,查看了许多资料,详细地了解了SQL server和MATLAB中的数据挖掘功能。第三步,在ASP. NET平台上设计并实现了该(B/S)系统。在该系统的开发中,集成了两个数据挖掘技术,分别为SQL在线分析技术和MATLAB引擎。该系统允许注册用户上传一些Excel数据文件,并且进行一些数据分析操作。在该系统中每个用户都拥有属于自己的空间,进行一些数据分析操作,甚至是编写MATLAB脚本来实现更复杂的功能。默认情况下,该系统允许用户执行两种算法:决策树和K均值聚类。一方面,当用MATLAB作为该系统的工具时,用户直接分析上传的Excel数据文件,结果显示并保存在Excel文件中;当用户开发自己的MATLAB脚本时,MATLAB系统被调用,得到的结果返回到该系统中。另一方面,当用户使用SQL分析服务时,数据集首先被作为SQL Server数据库,用来创建数据挖掘所需要的数据模型,该模型作为训练集,最后才使用数据挖掘对该训练集进行操作分析。为了提高系统的可维护性和可测试性,系统分为三个模块。用户管理模块,它管理所有用户的数据操作和空间管理;SQL server管理模块,它实现了SQL server分析服务所需要的所有数据挖掘功能模块,以及保存了执行后的结果:MATLAB管理模块,实现了所有数据挖掘所需要的功能,并且管理MATLAB用户脚本。该系统的许多方面考虑到后期的工作。在用户界面旁边提供了文件编辑的选择功能,使系统支持其他格式的数据格式文件;在算法方面,系统将被扩展,以便集成大量的算法,其他的一些数据挖掘工具也将被集成到该系统中来。