数据挖掘技术论文【10篇】

无论是在学习还是在工作中,大家都有写论文的经历,对论文很是熟悉吧,通过论文写作可以培养我们独立思考和创新的能力。你知道论文怎样才能写的好吗?下面是小编辛苦为大家带来的数据挖掘技术论文【10篇】,希望大家可以喜欢并分享出去。

数据挖掘论文 篇1

系统采用C/S+B/S结构,主要由前端数据采集设备(位移及载荷传感器)、站点客户端、数据库及Web服务器等组成。各部分采取分布式协同处理运行方式,站点客户端利用前端采集的数据独立分析计算,分析完成后上传至数据库服务器,并通过网页服务器对外。

2系统数据

2.1系统数据结构系统采用MicrosoftSQLServer,创建了WPGUI与WPCHQ数据库来管理3万余口油井数据采集、处理及存储等,建设数据表65张(见主要数据表的关系图2),主要包括生产井的完井数据、静态数据、动态数据、采集数据、原油物性数据、机杆管泵等技术数据,同时系统保存了油井近两年功图电参数据(每天每口井到少100张),以及根据这些数据分析计算出来的结果和汇总生成的数据。

3数据挖掘应用

数据挖掘是从大量数据集中发现可行信息的过程,是统计分析技术、数据库技术及人工智能技术的综合。面对油井工况实时分析及功图计产系统大量的油井生产完备数据,长庆油田充分利用数据挖掘技术,对数据进一步清理、集成、转换、挖掘应用,深化功图系统数据分析,先后开展了动液面计算,系统效率在线实时监测、区块动态分析研究等,并应用于油田现场,取得了较好的效果,既节约了生产成本,又方便了现场管理应用,进一步提升系统在长庆油田数字化前端的核心地位。

3.1区块动态分析

油井生产中,每天都会获得大量的实时生产数据,目前系统主要对单井完成工况分析及产液量计算,如何通过分析和处理这些数据,及时全面了解油田区块产油量、压力、含水等变化规律是数据挖掘应用又一问题。长庆油田开展了基于油井工况诊断及功图计产系统的区块动态分析,从空间和历史角度,对油井分类、分级、分层次进行统计分析,挖掘生产数据里有用的信息,提炼区块共性问题,并按照设计的模板(区块指标统计图表、供液能力分析、产量分析、故障井分析等)每月30日自动生成全面及时的区块油井生产动态分析,从而指导区块生产管理,实现油田的精细管理,为油田开发决策提供依据。

4结束语

随着长庆油田数字化建设的不断深入,各种生产、研究、管理等数据库不断增加,如何深化数据应用,准确迅速从数据库是提取有用信息,已成为是数字油田生产管理的迫切需求。在基于油井工况实时分析及功图计产系统数据挖掘应用中我们积累了不少经验,拓展了系统功能,提升系统在长庆油田数字化前端的核心地位。在今后应用中,油田数据挖掘应用注意几个问题:

(1)数据是数字油田的血液,为了保证数据挖掘效率,在数据库建设中要规范数据存储格式,保证数据源及数据类型的统一,同时加强数据审核,注重数据入库的质量;

(2)数据挖掘中尽可能使用可视化工具,一幅图胜过千句话,数据挖掘可视化主要包括数据可视化、挖掘结果可视化、挖掘过程可视化等;

数据挖掘技术论文 篇2

1.较高的有效性新兴起来的数据挖掘技术的应用时间并不是很长,但是其在经济统计领域的应用受到了良好的效果,其稳定的工作性能,不仅能够对经济统计数据进行分析整理,更能深层次地开发出更多的有用信息,在实际的应用中展现出较高的有效性。

2.综合应用性强数据挖掘技术已经被广泛地应用在统计工作中的多个领域,并且发挥着重要的作用。数据挖掘技术不仅是一种综合应用性强的技术手段,同时又能满足统计数据使用者的特定数据需要。因此,数据挖掘技术能够对经济统计数据进行定向的整理和开发,为数据使用者提供更好的服务。

3.宏观型的数据库有利于数据挖掘技术的应用当前,我国的经济统计大多还是采用传统的经济统计方法,统计收集的数据信息不能形成有机整体,在对数据进行管理过程中,出现了很多问题。因此。经济统计工作需要能够提供数据整理开发的新技术。宏观经济统计数据库,为数据挖掘技术的开展提供了平台。数据管理系统的经济统计信息要正确无误,然后经过数据挖掘技术的整合,就能得到更丰富的数据资源。

二、数据挖掘技术的运用

数据挖掘技术的特性决定了其对经济统计数据整理的重要性,经济统计所得到的数据信息要求必须有实用性和真实性,数据挖掘技术的特性正好满足了经济统计工作的需要。数据挖掘的过程主要包括以下四种方法:

1.预处理方法首先,要对统计数据进行预处理。由于经济统计信息在收集过程中存在一些问题,导致收集到的数据存在缺失和模糊现象,这种有缺憾的数据信息不能作为数据挖掘的基础,因此一定要对数据挖掘对象进行事先的处理。其中包括对基础数据中不正确、不真实、不准确和偏差较大的数据进行甄别。

2.集成化处理方法其次,要对统计数据进行集成化处理。经济统计过程中,会出现对多个数据源进行重叠统计的现象,这就要求对数据进行挖掘之前,要有一个统一整理的过程,即数据的集成化处理。数据集成在统计中被广泛的使用。经过数据集成处理的统计信息更加全面,更加真实,可以作为数据挖掘基础信息。

3.转换方法再有,要对统计数据根据需要进行转换。经济统计数据的描述形式比较单一,为了满足数据信息使用者的需要,就要对数据进行转换,使其的表现形式具有泛化或是更加规范。这里所说的泛化指的是利用更深层次和更加抽象的定义来代替原有的低层数据。

4.决策树方法除却上述四种处理方法外,还有决策树方法,指的是对庞杂的经济数据进行分类,把有利用价值的统计数据提炼出来,这种数据挖掘形式能够对分析对象进行体现,并能快速的对信息进行分类处理,能够解决在经济统计过程中出现的各种问题。

三、结语

经济统计工作对我国经济发展的重要作用越来越明显,随着数据挖掘技术在统计系统中的应用,对统计数据的分析也逐步的走向高质量和高标准化。因此,加强数据挖掘技术的应用,可以促进统计工作的提高,可以有效的减少统计资金的支出。通过数据挖掘技术得到的数据信息,其真实可靠的特性,有利于政府制定出符合社会发展的战略目标,有利于工业企业等确立正确的经济发展目标。数据挖掘技术所带来的经济效益和社会效益是巨大的。

数据挖掘论文 篇3

对于风电功率的预估,本文提出了一种短期的用于一至十五分钟内的预测方法。其中输入数据来自风力发电机的历史寄存器,数据种类有电压、电流、有功功率等。并且对两种预测方法进行了比较。预测出的风力数据作为风力涡轮机预测模型的输入值。风力发电机模型是参考了空气力学、传动系统、感应发电机等参数,并通过唯像模型建立的。风力涡轮模型则建立于一种现象学模型,这种模型将风的空气动力学、传动系统和感应发电机的参数都考虑了进来。另一种预测风电功率方法是使用数据挖掘技术来进行预测。风电发电系统中的数据库就应用到了这些技术。为了提高算法的效率,使用了风速估计器,以估计空气分子的布朗运动。并与没有用风速估计器时平均发电功率进行比较。

二、风功率预测模型和现象学模型

(一)人工神经网络

每一个人工神经网络模型都有架构、处理单元和训练方面的特性。在时间序列预测的人工神经网络模型中,其中很重要的一种是集中延时神经网络。它属于动态神经网络的一般类型,在这种神经网络中,动态只出现于静态的、有多个层级的前馈神经网络的输入层中。集中延时神经网络的一个显著特征是它不要求有动态反向传播来计算神经网络的梯度,原因是抽头延迟线只在神经网络输入数据时才出现。由于这个原因,这种神经网络比其他动态网络的训练进行得更快。

(二)随机时序

风功率模型和现象模型是使用最多的预测方法。如果假设预测变量Xt是已知值的线性组合,那么自回归模型则能用于预测未知值。通过查看自相关函数和偏自相关函数,用于找到模型的顺序和结构,从而确定模型适当的结构和式子顺序。根据赤池信息准则,施瓦茨准则或贝叶斯信息标准以及校正后的决定系数,我们就能选出最好的模型。

三、算例分析

(一)提出的预处理方法

在考虑风速的复杂动态的情况下,为了更好地描述ARMA模型,本文提出了一种新的数据预处理方法。这种方法是以模型的形式呈现的,我们将这种模型称之为函数的ARMA。

(二)实例仿真

利用SVM工具箱在matlab7.1平台上完成回归模型建立的工作,利用我国某风电场连续100个数据(每10s取一个数值)的实测风能功率输出值,建立训练和预测样本。尽管神经网络在预测风速时误差已经很小,但由风力涡轮机模型和函数的ARMA模型组成的复合模型在各方面性能更好。导致这一结果的原因是焦点延时神经网络(以下简称FTDNN)预测曲线的高度非线性。

四、结论

本文所得预测结果表明,当把风速预测数据当作风力涡轮模型的输入数据时,函数的ARMA模型和焦点延时神经网络在预测风速时产生的误差会平均降低74%。同样地,本文提出的函数的ARMA模型(即FARMA模型)与典型的ARMA模型相比,能降低误差30%~40%。在所有模型中,焦点延时神经网络(FTDNN)预测得最好。但当把现象学风力涡轮机模型和函数的AR-MA模型组成复合模型时,最终预测结果还能更好。

数据挖掘论文 篇4

数据挖掘技术是近些年发展起来的一门新兴学科,它涉及到数据库和人工智能等多个领域。随着计算机技术的普及数据库产生大量数据,能够从这些大量数据中抽取出有价值信息的技术称之为数据挖掘技术。数据挖掘方法有统计学方法、关联规则挖掘、决策树方法、聚类方法等八种方法,关联规则是其中最常用的研究方法。关联规则算法是1993年由R.Atal,Inipusqi,Sqtm三人提出的Apriori算法,是指从海量数据中挖掘出有价值的能够揭示实体和数据项间某些隐藏的联系的有关知识,其中描述关联规则的两个重要概念分别是Suppor(t支持度)和Confi-dence(可信度)。只有当Support和Confidence两者都较高的关联规则才是有效的、需要进一步进行分析和应用的规则。

二、使用Weka进行关联挖掘

Weka的全名是怀卡托智能分析环境(WaikatoEnviron-mentforKnowledgeAnalysis),是一款免费的、非商业化的、基于JAVA环境下开源的机器学习以及数据挖掘软件[2]。它包含了许多数据挖掘的算法,是目前最完备的数据挖掘软件之一。Weka软件提供了Explorer、Experimenter、Knowledge-Flow、SimpleCLI四种模块[2]。其中Explorer是用来探索数据环境的,Experimenter是对各种实验计划进行数据测试,KnowledgeFlow和Explorer类似,但该模块通过其特殊的接口可以让使用者通过拖动的形式去创建实验方案,Simple-CLI为简单的命令行界面。以下数据挖掘任务主要用Ex-plorer模块来进行。

(一)数据预处理

数据挖掘所需要的所有数据可以由系统排序模块生成并进行下载。这里我们下载近两年的教师科研信息。为了使论文总分、学术著作总分、科研获奖总分、科研立项总分、科研总得分更有利于数据挖掘计算,在这里我们将以上得分分别确定分类属性值。

(二)数据载入

点击Explorer进入后有四种载入数据的方式,这里采用第一种Openfile形式。由于Weka所支持的标准数据格式为ARFF,我们将处理好的xls格式另存为csv,在weka中找到这个文件并重新保存为arff文件格式来实现数据的载入。由于所载入的数据噪声比较多,这里应根据数据挖掘任务对数据表中与本次数据任务不相关的属性进行移除,只将学历、职称、论文等级、学术著作等级、科研获奖等级、科研立项等级、科研总分等级留下。

(三)关联挖掘与结果分析

WeakExplorer界面中提供了数据挖掘多种算法,在这里我们选择“Associate”标签下的Apriori算法。之后将“lowerBoundMinSupprot”(最小支持度)参数值设为0.1,将“upperBoundMinSupprot”(最大支持度)参数值设为1,在“metiricType”的参数值选项中选择lift选项,将“minMetric”参数值设为1.1,将“numRules”(数据集数)参数值设为10,其它选项保存默认值,这样就可以挖掘出支持度在10%到100%之间并且lift值超过1.1且排名前10名的关联规则。其挖掘参数信息和关联挖掘的部分结果。

三、挖掘结果与应用

以上是针对教师基本情况和科研各项总分进行的反复的数据挖掘工作,从挖掘结果中找到最佳模式进行汇总。以下列出了几项作为参考的关联数据挖掘结果。

1、科研立项得分与论文、科研总得分关联度高,即科研立项为A级的论文也一定是A。这与实际也是相符的,因为科研立项得A的教师应该是主持了省级或是部级的立项的同时也参与了其他教师的科研立项,在课题研究的过程中一定会有部级论文或者省级论文进行发表来支撑立项,所以这类教师的论文得分也会很高。针对这样的结果,在今后的科研工作中,科研处要鼓励和帮助教师搞科研,为教师的科研工作提供精神上的支持和物质上的帮助,这样在很大程度上能够带动整个学校科研工作的进展。

2、副教授类的教师科研立项得分很高,而讲师类教师和助教类教师的科研立项得分很低,这样符合实际情况。因为副教授类的教师有一定的教学经验,并且很多副教授类的教师还想晋职称,所以大多数副教授类教师都会申请一些课题。而对于讲师类和助教类的教师,由于教学经验不足很少能进行省级以上的课题研究,因此这两类教师的科研立项分数不高。针对这样的结果,在今后的科研工作中,科研处可以采用一帮一、结对子的形式来帮助年轻教师,这样可以使青年教师参与到老教师的科研课题研究工作中去,在课题研究工程中提高科研能力和教学能力。

数据挖掘论文 篇5

1.1数据挖掘相关技术数据挖掘相关技术介绍如下[6]:(1)决策树:在表示决策集合或分类时采用树形结构,在这一过程中发现规律并产生规则,找到数据库中有着最大信息量的字段,从而可建立起决策树的人工智能及识别技术。(2)聚类分析:聚类分析指将物理或抽象对象的集合分组为由类似的对象组成的多个类的分析过程。它是一种重要的人类行为。(3)关联分析:关联分析又称关联挖掘,就是在交易数据、关系数据或其他信息载体中,查找存在于项目集合或对象集合之间的频繁模式、因果、关联或相关性结构。也可以说,关联分析是用来发现有关交易的数据库中不同商品(项)之间的联系。(4)神经网络方法:顾名思义,类似于生物的神经结构,由大量简单的神经元,通过非常丰富和完善的连接组成自适应的非线性动态系统,具有自适应、自组织、自学习、联想记忆、分布存储、大规模并行处理等功能。粗集方法:也就是在数据库里把行为对象列视为元素,将不同对象在某个(或多个)属性上取值相同定义为等价关系R。其等价类为满足R的对象组成的集合[5]。

1.2IBMSPSSModelerIBMSPSSModeler是一个数据挖掘工作台,用于帮助用户快速直观地构建预测模型,而无需进行编程。其精密的数据挖掘技术使用户能够对结果进行建模,了解哪些因素会对结果产生影响。它还能可提供数据挖掘相关的数据提取、转换、分析建模、评估、部署等全过程的功能[3]。通常,SPSSModeler将数据以一条条记录的形式读入,然后通过对数据进行一系列操作,最后将其发送至某个地方(可以是模型,或某种格式的数据输出)[3]。使用SPSSModeler处理数据的三个步骤:(1)将数据读入SPSSModeler;(2)通过一系列操纵运行数据;(3)将数据发送到目标位置。

2客户流失预测分析

2.1数据预处理数据预处理[6],将需要的客户投保数据按照业务预测分析的要求,将数据抽取到中间数据中,同时对数据清洗和转换,满足业务预测分析要求。每日凌晨调用存储过程将核心业务系统数据提取到中间数据库,寿险业务数据与其他数据一样,存在不安全和不一致时,数据清洗与转换可以帮助提升数据质量,进而提升数据挖掘进程的有效性和准确性。数据清洗主要包括:遗漏数据清洗,错误数据处理,垃圾数据处理[1]。

2.2数据选取数据预处理后,可以从中得到投保人的投保信息,包括投保人姓名,投保年龄(有效保单为当前年龄,无效保单为退保年龄),保费,投保年期,保单状态等。数据如图1所示。

2.3客户流失预测模型建立寿险业务按渠道来分可分为个人保险、团体保险、银行保险、网销保险、经代保险五类。由于团体保险在寿险公司发展比较缓慢,团险业务基本属于停滞阶段。结合寿险公司的营销特点,选定个人保单作为分析的对象,通过IBMSPSSModeler预测模型工具[3],使用决策树预测模型对客户流失进行预测分析。

2.4结果分析通过使用IBMSPSSModeler决策类预测模型分析某寿险公司2013年个人客户承保情况来看有以下规则:(1)投保年数在1年以内,首期保费在0~2000元或大于9997.130保费的客户比较容易流失。(2)保单终止保单中,女性客户较男性客户容易流失。(3)投保年数在2年以上,湖北及河北分支机构客户流失率比较容易流失。(4)分红寿险相对传统寿险,健康寿险的客户比较容易流失[1]。

3总结

本文在IBMSPSSModeler软件应用的基础上,根据现有的寿险业务数据信息,利用数据挖掘的决策树预测模型,对寿险进行流失规则的分析,比较全面的了解了寿险公司客户流失的原因,并建立客户流失的决策树预测模型,便于公司客户服务部对现有客户采取合适的措施防止客户流失,从而达到保留现有客户的目的。

数据挖掘技术论文 篇6

关键字:数据挖掘金融数据

金融部门每天的业务都会产生大量数据,利用目前的数据库系统可以有效地实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段,导致了数据爆炸但知识贫乏”的现象。与此同时,金融机构的运作必然存在金融风险,风险管理是每一个金融机构的重要工作。利用数据挖掘技术不但可以从这海量的数据中发现隐藏在其后的规律,而且可以很好地降低金融机构存在的风险。学习和应用数扼挖掘技术对我国的金融机构有重要意义。

一、数据挖掘概述

1.数据挖掘的定义对于数据挖掘,一种比较公认的定义是W.J.Frawley,G.PiatetskShapiro等人提出的。数据挖掘就是从大型数据库的数据中提取人们感兴趣的知识、这些知识是隐含的、事先未知的、潜在有用的信息,提取的知识表示为概念(Concepts),规则(Rules)、规律(Regularities)、模式(Patterns)等形式。这个定义把数据挖掘的对象定义为数据库。

随着数据挖掘技术的不断发展,其应用领域也不断拓广。数据挖掘的对象已不再仅是数据库,也可以是文件系统,或组织在一起的数据集合,还可以是数据仓库。与此同时,数据挖掘也有了越来越多不同的定义,但这些定义尽管表达方式不同,其本质都是近似的,概括起来主要是从技术角度和商业角度给出数据挖掘的定义。

从技术角度看,数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在的和有用的信息和知识的过程。它是一门广义的交叉学科,涉及数据库技术、人工智能、机器学习、神经网络、统计学、模式识别、知识库系统、知识获取、信息检索、高性能计算和数据可视化等多学科领域且本身还在不断发展。目前有许多富有挑战的领域如文本数据挖掘、Web信息挖掘、空间数据挖掘等。

从商业角度看,数据挖掘是一种深层次的商业信息分析技术。它按照企业既定业务目标,对大量的企业数据进行探索和分析,揭示隐藏的、未知的或验证已知的规律性并进一步将其模型化,从而自动地提取出用以辅助商业决策的相关商业模式。

2.数据挖掘方法

数据挖掘技术是数据库技术、统计技术和人工智能技术发展的产物。从使用的技术角度,主要的数据挖掘方法包括:

2.1决策树方法:利用树形结构来表示决策集合,这些决策集合通过对数据集的分类产生规则。国际上最有影响和最早的决策树方法是ID3方法,后来又发展了其它的决策树方法。

2.2规则归纳方法:通过统计方法归纳,提取有价值的if-then规则。规则归纳技术在数据挖掘中被广泛使用,其中以关联规则挖掘的研究开展得较为积极和深入。

2.3神经网络方法:从结构上模拟生物神经网络,以模型和学习规则为基础,建立3种神经网络模型:前馈式网络、反馈式网络和自组织网络。这种方法通过训练来学习的非线性预测模型,可以完成分类、聚类和特征挖掘等多种数据挖掘任务。

2.4遗传算法:模拟生物进化过程的算法,由繁殖(选择)、交叉(重组)、变异(突变)三个基本算子组成。为了应用遗传算法,需要将数据挖掘任务表达为一种搜索问题,从而发挥遗传算法的优化搜索能力。

2.5粗糙集(RoughSet)方法:Rough集理论是由波兰数学家Pawlak在八十年代初提出的一种处理模糊和不精确性问题的新型数学工具。它特别适合于数据简化,数据相关性的发现,发现数据意义,发现数据的相似或差别,发现数据模式和数据的近似分类等,近年来已被成功地应用在数据挖掘和知识发现研究领域中。

2.6K2最邻近技术:这种技术通过K个最相近的历史记录的组合来辨别新的记录。这种技术可以作为聚类和偏差分析等挖掘任务。

2.7可视化技术:将信息模式、数据的关联或趋势等以直观的图形方式表示,决策者可以通过可视化技术交互地分析数据关系。可视化数据分析技术拓宽了传统的图表功能,使用户对数据的剖析更清楚。

二、数据挖掘在金融行业中的应用数据挖掘已经被广泛应用于银行和商业中,有以下的典型应用:

1.对目标市场(targetedmarketing)客户的分类与聚类。例如,可以将具有相同储蓄和货款偿还行为的客户分为一组。有效的聚类和协同过滤(collaborativefiltering)方法有助于识别客户组,以及推动目标市场。

2..客户价值分析。

在客户价值分析之前一般先使用客户分类,在实施分类之后根据“二八原则”,找出重点客户,即对给银行创造了80%价值的20%客户实施最优质的服务。重点客户的发现通常采用一系列数据处理、转换过程、AI人工智能等数据挖掘技术来实现。通过分析客户对金融产品的应用频率、持续性等指标来判别客户的忠诚度;通过对交易数据的详细分析来鉴别哪些是银行希望保持的客户;通过挖掘找到流失的客户的共同特征,就可以在那些具有相似特征的客户还未流失之前进行针对性的弥补。

3.客户行为分析。

找到重点客户之后,可对其进行客户行为分析,发现客户的行为偏好,为客户贴身定制特色服务。客户行为分析又分为整体行为分析和群体行为分析。整体行为分析用来发现企业现有客户的行为规律。同时,通过对不同客户群组之间的交叉挖掘分析,可以发现客户群体间的变化规律,并可通过数据仓库的数据清洁与集中过程,将客户对市场的反馈自动输人到数据仓库中。通过对客户的理解和客户行为规律的发现,企业可以制定相应的市场策略。

4.为多维数据分析和数据挖掘设计和构造数据仓库。例如,人们可能希望按月、按地区、按部门、以及按其他因素查看负债和收入的变化情况,同时希望能提供诸如最大、最小、总和、平均和其他等统计信息。数据仓库、数据立方体、多特征和发现驱动数据立方体,特征和比较分析,以及孤立点分析等,都会在金融数据分析和挖掘中发挥重要作用。

5.货款偿还预测和客户信用政策分析。有很多因素会对货款偿还效能和客户信用等级计算产生不同程度的影响。数据挖掘的方法,如特征选择和属性相关性计算,有助于识别重要的因素,别除非相关因素。例如,与货款偿还风险相关的因素包括货款率、资款期限、负债率、偿还与收入(payment——to——income)比率、客户收入水平、受教育程度、居住地区、信用历史,等等。而其中偿还与收入比率是主导因素,受教育水平和负债率则不是。银行可以据此调整货款发放政策,以便将货款发放给那些以前曾被拒绝,但根据关键因素分析,其基本信息显示是相对低风险的申请。

6.业务关联分析。通过关联分析可找出数据库中隐藏的关联网,银行存储了大量的客户交易信息,可对客户的收人水平、消费习惯、购买物种等指标进行挖掘分析,找出客户的潜在需求;通过挖掘对公客户信息,银行可以作为厂商和消费者之间的中介,与厂商联手,在掌握消费者需求的基础上,发展中间业务,更好地为客户服务。

7.洗黑钱和其他金融犯罪的侦破。要侦破洗黑钱和其他金融犯罪,重要的一点是要把多个数据库的信息集成起来,然后采用多种数据分析工具找出异常模式,如在某段时间内,通过某一组人发生大量现金流量等,再运用数据可视化工具、分类工具、联接工具、孤立点分析工具、序列模式分析工具等,发现可疑线索,做出进一步的处理。

数据挖掘技术可以用来发现数据库中对象演变特征或对象变化趋势,这些信息对于决策或规划是有用的,金融

行业数据的挖掘有助于根据顾客的流量安排工作人员。可以挖掘股票交易数据,发现可能帮助你制定投资策略的趋势数据。挖掘给企业带来的潜在的投资回报几乎是无止境的。当然,数据挖掘中得到的模式必须要在现实生活中进行验证。

参考文献

丁秋林,力士奇。客户关系管理。第1版。北京:清华人学出版社,2002

张玉春。数据挖掘在金融分析中的应用。华南金融电脑。2004

张娴。数据挖掘技术及其在金融领域的应用。金融教学与研究。2003

数据挖掘技术论文 篇7

1.1安全技术资金不足

煤炭的持续开采会受到地质条件的直接影响,过去国家投入众多的设施,使用至今均已出现老化,并且维修量非常大。随着矿井的不断延深,矿压极度强化,巷道的维修任务更是不断的增加,矿井的供电以及通风、提升与排水等都不能适应生产的需要。

1.2安全管理模式传统

与西方发达产煤国家相比较,我国的煤矿使用技术研究起步很晚。并且人力、财力非常缺乏,某些重大的安全技术问题,比如冲击地压以及煤和瓦斯的突出、地热以及突水等灾害不能进行有效的预测和控制。且受到以往传统运营思想的直接作用与影响以及各个企业的经济实力的约束,我国的煤矿生产装备和安全监控设施相对落后。井巷的断面设计以及支护强度的确定、支护材料的型号选择较小。生产设施功率以及矿井的供风量等富余参数非常低,极易出现事故。绝大多数的煤炭企业还是利用以往传统的安全管理模式,各种报表计算仍是靠人工劳动并且精确度很低。信息传送的时间较长,且速度较慢,管理者的工作重复性很大,资料查询十分困难,并且工作效率很低。安全检查以及等级鉴定等总是凭借主观意念以及相关的经验。

1.3安全信息管理体制不健全

安全信息可以说是安全管理工作的重要依据,它主要包括事故和职业伤害的有效记录与分析统计,职业的安全卫生设施的相关研究与设计、生产以及检验技术,法律法规以及相应技术标准和其变化的动态,教育培训以及宣传和社会活动,国内的新型技术动态以及隐患评估与技术经济类分析和咨询、决策的体系。信息体制的健全是安全体制工程以及计算机技术的有效结合,可促使安全工作转型为定性和定量的超前预测,不过大多数矿井还是处于起步与摸索阶段,并未呈现出健全的体制,真正的使用还有待进一步的发展。

2空间数据挖掘技术

数据挖掘研究行业的持续进展,开始由起初的关系数据以及事务数据挖掘,发展至对空间数据库的不断挖掘。空间的信息还在逐渐地呈现各类信息体制的主体与基础。空间数据挖掘技术是一项非常关键的数据,具有比普通关系数据库和事务数据库更丰富、复杂的相关语义信息,且蕴含了更丰富的知识。所以,虽说数据的挖掘最初是出现在关系数据挖掘以及事务的数据库,不过因为空间数据库中的发掘知识,这就很快引起了各个研究者的关注与重视。很多的数据挖掘类研究工作都是从关系型以及事务型数据库拓展至空间数据库的。在地学领域中,随着卫星以及遥感技术的不断使用,逐渐丰富的空间以及非空间的数据采集与储存在较大空间数据库中,大量的地理数据已经算是超过了人们的处理能力,并且传统的地学分析很难在这些数据中萃取并发现地学知识,这也就给现阶段的GIS带来了很大的挑战,急切的需要强化GIS相应的分析功能,提升GIS处理地学实际状况的能力。数据挖掘以及知识发现的产生能满足地球空间的数据处理要求,并推进了传统地学空间分析的不断发展。依据地学空间数据挖掘技术的特性,把数据挖掘的方式融进GIS技术中,呈现地学空间数据挖掘技术和知识发展的新地学数据分析理念与依据。

3煤矿安全管理水平的提升

3.1建设评价指标体制库

评价指标体制库是矿井的自然灾害危害存在的具体参数式的知识库。模型的组建务必要根据矿井的瓦斯以及水害等自然灾害危害呈现的不同指标体制和其临界值构建一定的指标体制库,危害的警报识别参数关键是采掘工程的平面图动态开采面以及相应的巷道。各种瓦斯的危害以及水害隐患和通风隐患均呈现一定的评价指标库。

3.2构建专业的分析模型库

依据瓦斯以及水害等诸多不同的矿井自然灾害类别构建相关的专业性模型库,比如瓦斯的灾害预测,应根据矿井的地质条件以及煤层所赋存的状况构建瓦斯的地质区分图,再根据采掘工程的平面图动态呈现的采掘信息以及相应的瓦斯分区构建关联并实行相应的比较分析,确定可以采集区域未来的可采区域是不是高瓦斯区域。

3.3构建以GIS空间分析为基础的方法库

GIS空间分析可以说是矿井自然灾害的隐患高度识别的关键性方式,并且还是安全故障警报的主要路径。比如断层的防水层的有效划分,关键是根据断层的保安煤柱来实行可靠的确定。断层的保安煤柱确定可以利用GIS缓冲区域的分析得到。空间的统计分析以及多源信息有效拟合和数据挖掘亦是瓦斯和水害等安全隐患监测经常使用GIS空间分析方式,如物探水文的异常区域确定以及瓦斯突出相应的危险区域确定。

3.4决策支持体制与煤矿管理水平评价指标

体制库以及模型库、方式库与图形库均是矿井的自然灾害隐患识别和决策的最基础。利用矿井的自然灾害隐患识别决策来支持体系具体的功能呈现矿井的自然灾害隐患识别以及决策分析,在根源处提高煤矿的安全管理水平。分类构建矿井的自然灾害实时监控体系,进行动态跟踪相应的灾害实时数据,并事实呈现矿井的自然灾害数据或是信息和自然灾害的指标体系库以及模型库与知识库、空间数据库的合理化比较,并运用图形库的数据再通过GIS空间分析方式来确定安全隐患的,矿井自然灾害的隐患实时警报并进行决策分析,以提交空间数据的自然灾害隐患识别以及分析处理的决策性报告。

4结语

随着矿山持续的深化及开展,矿区的历史以及实际数据量会日益增多,数据的处理会越来越困难。数字化矿山可以说是数字地球的主要构成,亦是呈现矿山可持续发展与矿业可持续发展的关键性决策,是呈现矿山、矿区信息化管理的重要基础。

数据挖掘论文 篇8

【关键词】数据挖掘技术;档案管理;分析运用

由于信息技术的迅速发展,现代的档案管理模式与过去相比,也有了很大的变化,也让如今的档案管理模式有了新的挑战。让人们对信息即时、大量地获取是目前档案管理工作和档案管理系统急切需要解决的问题。

一、数据挖掘概述

(一)数据挖掘技术。数据挖掘是指从大量的、不规则、乱序的数据中,进行分析归纳,得到隐藏的,未知的,但同时又含有较大价值的信息和知识。它主要对确定目标的有关信息,使用自动化和统计学等方法对信息进行预测、偏差分析和关联分析等,从而得到合理的结论。在档案管理中使用数据挖掘技术,能够充分地发挥档案管理的作用,从而达到良好的档案管理工作效果。(二)数据挖掘技术分析。数据挖掘技术分析的方法是多种多样的,其主要方法有以下几种:1.关联分析。指从已经知道的信息数据中,找到多次展现的信息数据,由信息的说明特征,从而得到具有相同属性的事物特征。2.分类分析。利用信息数据的特征,归纳总结相关信息数据的数据库,建立所需要的数据模型,从而来识别一些未知的信息数据。3.聚类分析。通过在确定的数据中,找寻信息的价值联系,得到相应的管理方案。4.序列分析。通过分析信息的前后因果关系,从而判断信息之间可能出现的联系。

二、数据挖掘的重要性

在进行现代档案信息处理时,传统的档案管理方法已经不能满足其管理的要求,数据挖掘技术在这方面确有着显著的优势。首先,档案是较为重要的信息记录,甚至有些档案的重要性大到无价,因此对于此类的珍贵档案,相关的档案管理人员也是希望档案本身及其价值一直保持下去。不过越是珍贵的档案,其使用率自然也就越高,所以其安全性就很难得到保障,在档案管理中运用数据挖掘技术,可以让档案的信息数据得到分析统计,归纳总结,不必次次实物查阅,这样就极大地提升了档案相关内容的安全性,降低档案的磨损率。并且可以对私密档案进行加密,进行授权查阅,进一步提高档案信息的安全性。其次,对档案进行鉴定与甄别,这也是档案工作中较困难的过程,过去做好这方面的工作主要依靠管理档案管理员自己的能力和水平,主观上的因素影响很大,但是数据挖掘技术可以及时对档案进行编码和收集,对档案进行数字化的管理和规划,解放人力资源,提升档案利用的服务水平。第三,数据挖掘技术可以减少档案的收集和保管成本,根据档案的特点和规律建立的数据模型能为之后的工作人员建立一种标准,提升了档案的鉴定效率。

三、档案管理的数据挖掘运用

(一)档案信息的收集。在实施档案管理工作时,首先需要对档案信息数据的收集。可以运用相关档案数据库的数据资料,进行科学的分析,制定科学的说明方案,对确定的数据集合类型和一些相关概念的模型进行科学说明,利用这些数据说明,建立准确的数据模型,并以此数据模型作为标准,为档案信息的快速分类以及整合奠定基础。例如,在体育局的相关网站上提供问卷,利用问卷来得到的所需要的信息数据,导入数据库中,让数据库模型中保有使用者的相关个人信息,通过对使用者的信息数据进行说明,从而判断使用者可能的类型,提升服务的准确性。因此,数据挖掘技术为档案信息的迅速有效收集,为档案分类以及后续工作的顺利展开,提供了有利条件,为个性化服务的实现提供了保证。(二)档案信息的分类。数据挖掘技术具有的属性分析能力,可以将数据库中的信息进行分门别类,将信息的对象通过不同的特征,规划为不同的分类。将数据挖掘技术运用到档案管理中时,可以简单快速地找到想要的档案数据,能根据数据中使用者的相关数据,找寻使用者在数据库中的信息,使用数据模型的分析能力,分析出使用者的相关特征。利如,在使用者上网使用网址时,数据挖掘技术可以充分利用使用者的搜索数据以及网站的访问记录,自动保存用户的搜索信息、搜索内容、下载次数、时间等,得到用户的偏好和特征,对用户可能存在的需求进行预测和分类,更加迅速和准确的,为用户提供个性化的服务。(三)档案信息的整合。数据挖掘技术可以对新旧档案的信息进行整合处理,可以较为简单地将“死档案”整合形成为“活档案”,提供良好的档案信息和有效的档案管理。例如,对于企事业单位而言,培训新员工的成本往往比聘请老员工的成本要高出很多。对老员工的档案信息情况进行全体整合,使档案资源充分发挥作用,将档案数据进行总结和规划,根据数据之间的联系确定老员工流失的原因,然后建立清晰、明白的数据库,这样可以防止人才流失,也能大大提高档案管理的效率。

四、结语

综上所述,在这个信息技术迅速跳跃发展的时代,将数据挖掘技术运用到档案管理工作中是时展的需求与必然结果。利用数据挖掘技术,可以使档案管理工作的效率大大提升,不仅减少了搜索档案信息的时间,节省人力物力,避免资源的浪费,还能帮助用户在海量的信息数据中,快速找到所需的档案数据信息。数据挖掘技术的运用,使静态的档案信息变成了可以“主动”为企事业单位的发展,提供有效的个性化服务的档案管家,推动了社会的快速发展。

【参考文献】

[1]栾立娟,卢健,刘佳,数据挖掘技术在档案管理系统中的应用[J].计算机光盘软件与应用,2015:35-36.

[2]宇然,数据挖掘技术研究以及在档案计算机管理系统中的应用[D].沈阳工业大学,2002.

数据挖掘技术论文 篇9

数据挖掘技术是一种新型的技术,在现代数据存储以及测量技术的迅猛发展过程中,人们可以进行信息的大量测量并进行存储。但是,在大量的信息背后却没有一种有效的手段和技术进行直观的表达和分析。而数据挖掘技术的出现,是对目前大数据时代的一种应急手段,使得有关计算机数据处理技术得到加快发展。数据挖掘技术最早是从机器学习的概念中而产生的,在对机器的学习过程中,一般不采用归纳或者较少使用这种方法,这是一种非常机械的操作办法。而没有指导性学习的办法一般不从这些环境得出反馈,而是通过没有干预的情况下进行归纳和学习,并建立一种理论模型。数据挖掘技术是属于例子归纳学习的一种方式,这种从例子中进行归纳学习的方式是介于上述无指导性学习以及较少使用归纳学习这两种方式之间的一种方式。因此,可以说,数据挖掘技术的特征在出自于机器学习的背景下,与其相比机器主要关心的是如何才能有效提高机器的学习能力,但数据挖掘技术主要关心如何才能找到有用、有价值的信息。其第二个特征是,与机器学习特点相比较而言,机器关心的是小数据,而数据挖掘技术所面临的对象则是现实中海量规模的数据库,其作用主要是用来处理一些异常现象,特别是处理残缺的、有噪音以及维数很高的数据项,甚至是一些不同类型数据。以往的数据处理方法和现代的数据挖掘技术相比较而言,其不同点是以往的传统数据处理方法前提是把理论作为一种指导数据来进行处理,在现代数据挖掘技术的出发角度不同,主要运用启发式的归纳学习进行理论以及假设来处理的。

2、数据挖掘技术主要步骤

数据挖掘技术首先要建立数据仓库,要根据实际情况而定,在易出现问题的有关领域建立有效的数据库。主要是用来把数据库中的所有的存储数据进行分析,而目前的一些数据库虽然可以进行大量的存储数据,同时也进行了一系列的技术发展。比如,系统中的在线分析处理,主要是为用户查询,但是却没有查询结果的分析能力,而查询的结果仍旧由人工进行操作,依赖于对手工方式进行数据测试并建模。其次,在数据库中存储的数据选一数据集,作为对数据挖掘算法原始输入。此数据集所涉及到数据的时变性以及统一性等情况。然后,再进行数据的预处理,在处理中主要对一些缺损数据进行补齐,并消除噪声,此外还应对数据进行标准化的处理。随后,再对数据进行降维和变换。如果数据的维数比较高,还应找出维分量高的数据,对高维数数据空间能够容易转化为检点的低维数数据空间进行处理。下一步骤就是确定任务,要根据现实的需要,对数据挖掘目标进行确定,并建立预测性的模型、数据的摘要等。随后再决定数据挖掘的算法,这一步骤中,主要是对当前的数据类型选择有效的处理方法,此过程非常重要,在所有数据挖掘技术中起到较大作用。随后再对数据挖掘进行具体的处理和结果检验,在处理过程中,要按照不同的目的,选择不同的算法,是运用决策树还是分类等的算法,是运用聚类算法还是使用回归算法,都要认真处理,得出科学的结论。在数据挖掘结果检验时,要注意几个问题,要充分利用结论对照其他的信息进行校核,可对图表等一些直观的信息和手段进行辅助分析,使结论能够更加科学合理。需要注意的是要根据用户来决定结论有用的程度。最后一项步骤是把所得出的结论进行应用到实际,要对数据挖掘的结果进行仔细的校验,重点是解决好以前的观点和看法有无差错,使目前的结论和原先看法的矛盾有效解除。

3、数据挖掘技术的方法以及在电力营销系统中的应用和发展

数控挖掘技术得到了非常广泛的应用,按照技术本身的发展出现了较多方法。例如,建立预测性建模方法,也就是对历史数据进行分析并归纳总结,从而建立成预测性模型。根据此模型以及当前的其他数据进行推断相关联的数据。如果推断的对象属于连续型的变量,那么此类的推断问题可属回归问题。根据历史数据来进行分析和检测,再做出科学的架设和推定。在常用的回归算法以及非线性变换进行有效的结合,能够使许多问题得到解决。电力营销系统中的数据挖掘技术应用中关联规则是最为关键的技术应用之一。这种应用可以有效地帮助决策人员进行当前有关数据以及历史数据的规律分析,最后预测出未来情况。把关联规则成功引入电力营销分析,通过FP-Growth算法对电力营销的有关数据进行关联规则分析,从中得出各种电量销售的影响因素以及外部因素、手电水平等的关联信息,以便更好地为电力的市场营销策略提供参谋和决策。对电力营销系统的应用中,时间序列挖掘以及序列挖掘非常经典、系统,是应用最为广泛的一种预测方法。这种方法的应用中,对神经网络的研究非常之多。因此,在现实中应用主要把时间序列挖掘以及神经网络两者进行有效地结合,然后再分析有关电力营销数据。此外,有关专家还提出应用一种时间窗的序列挖掘算法,这种方式可以进行有效地报警处理,使电力系统中的故障能够准确的定位并诊断事故。此算法对电力系统的分析和挖掘能力的提高非常有效,还可判定电力系统的运行是否稳定,对错误模型的分析精度达到一定的精确度。

4、结语

目前,对数据挖掘技术在整个电力营销系统中的应用还处于较低水平上,其挖掘算法的单一并不能有效地满足实际决策需要。但是,由于数据挖掘技术对一些潜在的问题预测能力较强,特别是对电力营销系统中较大规模的非线性问题,具有较强的处理能力,在未来的发展中会成为营销领域中重要的应用工具。

数据挖掘论文 篇10

1.1GPUGPU之所以在某些应用中较CPU能够获得更高的性能,主要是因为GPU和CPU在硬件结构设计上存在很大差异。如图1所示[10],GPU将大量的晶体管用作ALU计算单元,从而适应密集且可并行的图像渲染计算处理需要。相对GPU而言,CPU却是将更多的晶体管用作复杂的控制单元和缓存等非计算功能,并以此来提高少量执行单元的执行效率。此外,存储带宽是另一个重要问题。存储器到处理器的带宽已经成为许多应用程序的瓶颈。目前GPU的芯片带宽是CPU芯片带宽的6倍左右。

1.2CPU/GPU协同并行计算在诸多适用于高性能计算的体系结构中,采用通用多核CPU与定制加速协处理器相结合的异构体系结构成为构造千万亿次计算机系统的一种可行途径。而在众多异构混合平台中,基于CPU/GPU异构协同的计算平台具有很大的发展潜力。在协同并行计算时,CPU和GPU应各取所长,即CPU承担程序控制,而密集计算交由GPU完成。另外,除管理和调度GPU计算任务外,CPU也应当承担一部分科学计算任务[12]。新型异构混合体系结构对大规模并行算法研究提出了新的挑战,迫切需要深入研究与该体系结构相适应的并行算法。事实上,目前基于GPU加速的数据挖掘算法实现都有CPU参与协同计算,只是讨论的重点多集中在为适应GPU而进行的并行化设计上。实践中,需要找出密集计算部分并将其迁移到GPU中执行,剩余部分仍然由CPU来完成。

1.3CUDA为了加速GPU通用计算的发展,NVIDIA公司在2007年推出统一计算设备架构(ComputeUnifiedDeviceArchitecture,CUDA)[10,13]。CUDA编程模型将CPU作为主机,GPU作为协处理器,两者协同工作,各司其职。CPU负责进行逻辑性强的事务处理和串行计算,GPU则专注于执行高度线程化的并行处理任务。CUDA采用单指令多线程(SIMT)执行模式,而内核函数(kernel)执行GPU上的并行计算任务,是整个程序中一个可以被并行执行的步骤。CUDA计算流程通常包含CPU到GPU数据传递、内核函数执行、GPU到CPU数据传递三个步骤。CUDA不需要借助于图形学API,并采用了比较容易掌握的类C/C++语言进行开发,为开发人员有效利用GPU的强大性能提供了条件。CUDA被广泛应用于石油勘探、天文计算、流体力学模拟、分子动力学仿真、生物计算和图像处理等领域,在很多应用中获得了几倍、几十倍,乃至上百倍的加速比[13]。

1.4并行编程语言和模型过去几十年里,人们相继提出了很多并行编程语言和模型,其中使用最广泛的是为可扩展的集群计算设计的消息传递接口(MessagePassingInterface,MPI)和为共享存储器的多处理器系统设计的OpenMP[14]。OpenMP最初是为CPU执行而设计的。OpenACC[15]是计算机厂商为异构计算系统提出的一种新编程模型,其主要优势是为抽象掉许多并行编程细节提供了编译自动化和运行时系统支持。这使得应用程序在不同厂商的计算机和同一厂商不同时代的产品中保持兼容性。然而,学习OpenACC需要理解所有相关的并行编程细节。在MPI编程模型中,集群中的计算节点之间相互不共享存储器;节点之间的数据共享与交互都通过显式传递消息的方式实现。MPI成功应用于高性能科学计算(HPC)领域。现在很多HPC集群采用的是异构的CPU/GPU节点。在集群层次上,开发人员使用MPI进行编程,但在节点层次上,CUDA是非常高效的编程接口。由于计算节点之间缺乏共享存储器机制,要把应用程序移植到MPI中需要做大量针对性分析和分解工作。包括苹果公司在内的几大公司在2009年共同开发了一套标准编程接口,称之为OpenCL[16]。与CUDA类似,OpenCL编程模型定义了语言扩展和运行时API,使程序员可以在大规模并行处理中进行并行管理和数据传递。与CUDA相比,OpenCL更多地依赖API,而不是语言的扩展,这允许厂商快速调整现有编译器和工具来处理OpenCL程序。OpenCL和CUDA在关键概念和特性上有诸多相似之处,因此CUDA程序员可以很快掌握OpenCL。

1.5MATLAB因提供丰富的库函数库以及诸多其他研究者贡献和共享的函数库,MATLAB是研究人员实现算法的常用平台。通过封装的数据容器(GPUArrays)和函数,MATLAB允许没有底层CUDA编程能力的研究人员可以较容易获得GPU计算能力,因此MATLAB较OpenCL更容易上手。截止准备本文时,2014版本的MATLAB提供了226个内置的GPU版本的库函数。对于有CUDA编程经验的人员,MATLAB允许直接集成CUDA内核进MATLAB应用。本文第四节的实验亦基于MATLAB实现。

1.6JACKET引擎JACKET[17]是一个由AccelerEyes公司开发专门用于以MATLAB为基础的基于GPU的计算引擎,其最新版本已经包含了高层的接口,完全屏蔽了底层硬件的复杂性,并支持所有支持CUDA的GPU计算,降低了进行CUDA开发的门槛。JACKET是MATLAB代码在GPU上运行的插件。JACKET允许标准的MATLAB代码能够在任何支持CUDA的GPU上运行,这使得广大的MATLAB及C/C++用户可以直接使用GPU强大的计算能力进行相关应用领域的快速原型开发。JACKET包含了一套运行于MATLAB环境中优化并行计算的基础函数库。并且支持MATLAB数据类型,可将任何存储于MATLABCPU内存中的变量数据转换为GPU上的数据类型,对以往的MATLAB程序来说,只需更改数据类型,就能迁移到GPU上运行。本文的第四节的实验亦基于JACKET在MATLAB上实现。

2相关工作综述

2.1基于CPU的数据挖掘算法实现数据挖掘算法的研究一直很活跃,许多成熟和经典的算法已经实现在诸多研究或商用软件包/平台,例如开源的Weka[18]和KNIME,以及商用的IBM公司的PASWModeler(即之前SPSS公司的Clementine®)。这些软件默认都是单机版本,可运行在普通PC或高性能服务器上,基于CPU的计算能力。为了适应目前大规模的计算,出现了基于Google公司提出的MapReduce[19]计算框架实现的开源数据挖掘平台Mahout[20]。相关的研究起源于斯坦福大学AndrewNg研究组2006年的经典论著[21]。由于现有的算法需要先找到可“迁移”到MapReduce的方式,因此目前Mahout平台上仅有几个能支持分布式部署的数据挖掘算法,包括用于分类的朴素贝叶斯、随机森林,用于聚类的k-Means,基于项目的协同过滤等。目前Mahout仍然是基于CPU的计算能力。

2.2聚类算法聚类是数据挖掘中用来发现数据分布和隐含模式的一种无监督学习,每个训练元组的类标号是未知的,并且要学习的个数或集合也可能事先不知道。对于给定的数据集,聚类算法按照一定的度量,将数据对象分组为多个簇,使得在同一个簇中的对象之间具有较高的相似度,而不同簇中的对象差别很大[22-23]。k-Means算法是经典的基于距离/划分的聚类分析算法,也是应用得最广泛的算法之一,采用距离作为相似性的评价指标,即认为两个对象距离越近,其相似度就越大。k-Means算法的流程如下[24]:输入:簇的数目k和包含n个对象数据集D。输出:k个簇的集合。方法:1)从D中任意选择k个对象作为初始簇中心。计算每个数据对象到各簇中心的欧氏距离,将每个数据对象分配到最相似的簇中。2)重新计算每个簇中对象的均值。3)循环执行步骤2-3两个步骤,直到各个簇内对象不再变化。上述算法步骤2属于计算密度最大的部分,且具备并行化的条件。计算各个数据对象到各簇中心的欧氏距离和将数据对象分配到最近的簇的时候,数据对象之间都是相互独立的,不需要进行交换,且没有先后顺序,后计算的对象不需要等待前一次计算的结果,仅在完成全部分配过程之后,才需要进行一次数据汇总。所以文献[25]的作者们使用GPU并行优化了一维数据的k-Means算法的步骤2,并使用带缓存机制的常数存储器保存中心点数据,能获得更好的读取效率。文献中还展示了实验结果,在8600GT上取得了14倍左右的加速效果。DBSCAN属于基于密度的聚类算法中最常被引用的,G-DBSCAN是它的一个GPU加速版本[26]。文献[26]的实验显示较DBSCAN可以实现高达112倍的加速。BIRCH是经典的基于层次的聚类算法,文献[27]中基于CUDA实现的GPU加速版本在实验中获得了高达154倍的加速。

2.3分类算法分类是数据挖掘中应用领域极其广泛的重要技术之一,至今已经提出很多算法。分类算法[28]是一种监督学习,通过对已知类别训练集的分析,从中发现分类规则,以此预测新数据的类别。分类算法是将一个未知样本分到几个已存在类的过程,主要包含两个步骤:首先,根据类标号已知的训练数据集,训练并构建一个模型,用于描述预定的数据类集或概念集;其次,使用所获得的模型对新的数据进行分类。近年来,许多研究已经转向实现基于GPU加速分类算法,包括k-NN(k近邻)分类算法[29],支持向量机分类算法[30],贝叶斯分类算法[31-32]等。kNN算法[33]是数据挖掘中应用最广泛的一种分类算法,简单易实现。它是一种典型的基于实例的学习法,将待判定的检验元组与所有的训练元组进行比较,挑选与其最相似的k个训练数据,基于相应的标签和一定的选举规则来决定其标签。在ShenshenLiang等人的文章[34]指出,由于kNN算法是一种惰性学习法,对于每个待分类的样本,它都需要计算其与训练样本库中所有样本的距离,然后通过排序,才能得到与待分类样本最相邻的k个邻居。那么当遇到大规模数据并且是高维样本时,kNN算法的时间复杂度和空间复杂度将会很高,造成执行效率低下,无法胜任大数据分析任务。所以加速距离的计算是提高kNN算法的核心问题。因为每个待分类的样本都可以独立地进行kNN分类,前后之间没有计算顺序上的相关性,因此可以采用GPU并行运算方法解决kNN算法串行复杂度高的问题。将计算测试集和训练集中点与点之间的距离和排序一步采用GPU并行化完成,其余如判断类标号一步难以在GPU上高效实现,由CPU完成。文献[34]通过GPU并行化实现kNN算法,让kNN算法时间复杂度大幅度减少,从而说明GPU对kNN算法的加速效果是非常明显的。

2.4关联分析算法关联规则挖掘是数据挖掘中较成熟和重要的研究方法,旨在挖掘事务数据库频繁出现的项集。因此,挖掘关联规则的问题可以归结为挖掘频繁项集[35]。关联分析算法首先找出所有的频繁项集,然后根据最小支持度和最小置信度从频繁项集中产生强关联规则。Apriori算法[36]是最有影响力的挖掘布尔关联规则频繁项目集的经典算法。Apriori算法使用逐层搜索的迭代方法产生频繁项目集,即利用k频繁项集来产生(k+1)项集,是一种基于生成候选项集的关联规则挖掘方法。在刘莹等人的文章[37]中指出,产生候选项和计算支持度,占据Apriori的大部分计算量。产生候选项的任务是连接两个频繁项集,而这个任务在不同线程之间是独立的,所以这个过程适合在GPU上被并行化。通过扫描交易数据库,计算支持度程序记录一个候选项集出现的次数。由于每个候选项集的计数与其他项集的计数相对独立,同样适合于多线程并行。所以文献[37]的作者们在实现Apriori时使用GPU并行化了产生候选项和计算支持度这两个过程,取得了显著的加速效果。文献[38]是目前发现的对于在GPU上实现频繁项集挖掘最全面细致的研究。他们使用的是早期的CUDA平台,采用了bitmap和trie两种数据结构来实现GPU的挖掘算法,并且根据不同数据集和支持度进行了算法性能的对比,均相对于CPU版本的算法获得的一定的加速比。

2.5时序分析由于越来越多的数据都与时间有着密切的关系,时序数据作为数据挖掘研究的重要分支之一,越来越受到人们的重视。其研究的目的主要包括以下两个方面:一是学习待观察过程过去的行为特征;二是预测未来该过程的可能状态或表现。时序数据挖掘主要包含以下几个主要任务:数据预处理,时序数据表示,分割,相似度度量,分类,聚类等。这些任务中很多都涉及到相当大的计算量。由于问题规模的不断扩大,并且对于实时性能的要求,时序数据挖掘的任务就必须要求充分地提高计算速度或者通过优化减少计算量。时序数据的表示有时候会采取特征来表示,这就涉及到了特征提取问题,当特征数量庞大的时候就需要进行维数约简,主要的方法有奇异值分解法,离散小波变换。这些计算都涉及到很大的时间复杂度,为了减少计算的时间消耗,SheetalLahabar等人使用GPU加速SVD的计算,获得了60多倍的加速效果[39]。动态时间弯曲(DynamicTimeWarping,DTW)起初被应用于文本数据匹配和视觉模式识别的研究领域,是一种相似性度量算法。研究表明这种基于非线性弯曲技术的算法可以获得很高的识别、匹配精度。Berndt和Clifford提出了将DTW的概念引入小型时间序列分析领域,在初步的实验中取得了较好的结果[40]。随着问题规模的扩大,对于DTW的计算成为了时序数据挖掘的首先要处理的问题。在DTW中,搜索需要找出与训练数据最近距离的样本,这就需要搜索与每个训练样本的距离,这就可以很好的利用GPU进行并行化处理。DorukSart等人在对DTW加速的处理中,获得了两个数量级的加速效果[41]。而对于分类和聚类任务的加速,上面已经提到,这里不再累赘。

2.6深度学习深度学习虽然隶属机器学习,但鉴于机器学习和数据挖掘领域的紧密联系,深度学习必定将在数据挖掘领域获得越来越多的应用。从2006年Hinton和他的学生Salakhutdinov在《科学》上发表的文章[42]开始,深度学习在学术界持续升温。深度学习的实质是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类预测的准确性[43]。如何在工程上利用大规模的并行计算平台来实现海量数据训练,是各个机构从事深度学习技术研发首先要解决的问题。传统的大数据平台如Hadoop,由于数据处理延迟太高而不适合需要频繁迭代的深度学习。神经网络一般基于大量相似的神经元,故本质上可以高度并行化训练;通过映射到GPU,可以实现比单纯依赖CPU显著地提升。谷歌搭建的DistBelief是一个采用普通服务器的深度学习并行计算平台,采用异步算法,由很多计算单元独立更新同一个参数服务器的模型参数,实现了随机梯度下降算法的并行化,加快了模型训练速度。百度的多GPU并行计算平台克服了传统SGD训练不能并行的技术难题,神经网络的训练已经可以在海量语料上并行展开。NVIDIA在2014年9月推出了深度学习GPU加速库cuDNN,可以方便地嵌入高层级机器学习框架中使用,例如Caffe[45]。cuDNN支持NVIDIA的全系列GPU,包括低端的TegraK1和高端的TeslaK40,并承诺可向上支持未来的GPU。

2.7小结并行化能带来多少倍的加速取决于算法中可并行化的部分。例如,如果可并行部分的时间占整个应用程序执行时间的20%,那么即使将并行部分加速100倍,总执行时间也只能减少19.8%,整个应用程序的加速只有1.247倍;即使无限加速也只能减少约20%的执行时间,总加速不会超过1.25倍。对于一个数据挖掘(学习和预测)算法进行GPU加速实现,首先要思考是否存在可并行执行的部分,之后再结合GPU的架构特点进行针对性实现优化。然而,由于数据挖掘算法普遍是数据密集型计算,而GPU片内存储容量有限,如何降低与内存交换数据集是一个要解决的关键问题。通过以上相关工作的分析,可以发现数据挖掘算法在GPU上的加速具有数据独立,可并行化共同特征。本文提出数据挖掘算法在GPU上加速实现的一种解决思路:在大数据下,分析算法的性能瓶颈,从而确定算法中耗时大,时间复杂度高的部分,将此部分在GPU上执行,不耗时部分在CPU上串行执行,以达到加速效果。为了更充分利用GPU的并行计算的体系结构,可深入分析耗时大的部分,将具有数据独立,可并行化的部分在GPU上并行执行,达到更进一步的加速效果。

3实践和分析:协同过滤推荐

当前主要的协同过滤推荐算法有两类:基于用户(r-based)和基于项目(item-based)的协同过滤推荐算法。基于项目的协同过滤推荐算法[46-50]认为,项目间的评分具有相似性,可以通过用户对目标项目的若干相似项目的评分来估计该项目的分值。基于用户的协同过滤推荐算法认为,如果用户对一些项目的评分比较相似,那么他们对其他项目的评分也比较相似。本文根据以上总结的算法特征围绕两种经典协同过滤算法的实现,通过大规模数据的实验来验证GPU相对于传统CPU的优势。

3.1算法实现

3.1.1基于CPU实现协同过滤推荐的两类经典算法本文基于MATLAB实现CPU版本的基于用户和基于项目的两种经典协同过滤推荐算法。实现的步骤:1)数据表示:收集用户的评分数据,并进行数据清理、转换,最终形成一个mn的用户-项目评分矩阵R,m和n分别代表矩阵中的用户数和项目数,矩阵中的元素代表用户对项目的评分值。2)最近邻居搜索:主要完成对目标用户/项目的最近邻居的查找。通过计算目标用户/项目与其他用户/项目之间的相似度,算出与目标用户/项目最相似的最近邻居集。该过程分两步完成:首先采用协同过滤推荐算法中运用较多的度量方法“Pearson相关系数”计算用户/项目之间的相似度得到相应的相似度矩阵,其次是采用最近邻方法找到目标用户/项目的最近的K个邻居,这些邻居是由与目标相似度最高的一些用户/项目组成的。3)产生推荐:根据之前计算好的用户/项目之间的相似度,并使用相应的预测评分函数对用户未打分的项目进行预测,得到预测评分矩阵,然后选择预测评分最高的Top-n项推荐给目标用户。4)性能评估:本研究拟采用平均绝对误差MAE作为评价推荐系统预测质量的评价标准。MAE可以直观地对预测质量进行度量,是最常用的一种方法。MAE通过计算预测的用户评分与实际评分之间的偏差度量预测的准确性;MAE越小,预测质量越高。

3.1.2基于GPU实现协同过滤推荐的两类经典算法在大数据下,协同过滤算法中主要的时间消耗在于相似度计算模块,占了整个算法的大部分时间,且每个用户/项目之间的相似度可以被独立计算,不依靠其他用户/项目,具备并行化的条件,所以在以下的实验中,将相似度计算模块在GPU上执行,其他部分在CPU上执行,进而提高整个算法的执行效率。使用MATLAB编程技术和JACKET编程技术在GPU上分别实现基于用户和基于项目的两种经典协同过滤推荐算法。实现步骤如下:1)数据表示:收集用户的评分数据,并进行数据清理、转换,最终形成用户-项目评分矩阵。2)将收集的数据从CPU传输至GPU。3)对传输到GPU上的数据执行GPU操作,调用相关函数库,采用公式(1)和(2)分别计算并获取用户/项目间的相似度矩阵。4)将GPU计算结果返回CPU中以便后续操作。5)采用公式(3)和(4)在CPU上分别获取两种经典算法的评分预测矩阵。6)选择预测评分最高的Top-n项推荐给目标用户。7)采用公式(5)求两种经典算法的平均绝对误差MAE。

3.2实验结果与分析

3.2.1实验环境本实验所用的CPU是IntelXeonE52687W,核心数量是八核,主频率是3.1GHz,内存大小是32GB;所使用的GPU是NVIDIAQuadroK4000,显存容量是3GB,显存带宽是134GB/s核心频率是811MHz,流处理器数是768个。使用Windows764位操作系统,编程环境使用最新的CUDA。

3.2.2实验数据本实验使用目前比较常用的MovieLens[56]数据集作为测试数据,该数据集从MovieLens网站采集而来,由美国Minnesota大学的GroupLens研究小组提供,数据集1包含943个用户对1682部电影约10万的评分数据,数据集2包含6040个用户对3952部电影约100万的评分数据,其中每个用户至少对20部电影进行了评分。评分的范围是1~5,1表示“很差”,5表示“很好”。实验需要将每个数据集划分为一个训练集和一个测试集,每次随机选出其中80%的评分数据用作训练集,另20%用作测试集。

3.2.3实验结果与分析本文采用加速比来比较算法的CPU实现和GPU实现的运行效率。计算加速比的方法如式(6)所示:在公式中,TimeCPU表示算法在CPU上的平均运行时间,TimeGPU表示算法在GPU上的平均运行时间。所有实验中均取最近邻居数为20,且各实验结果均为5次独立测试的平均值。图2是关于两个算法核心步骤的加速效果,而图3则展示了算法整体加速效果。可以看出,(1)整体加速效果取决于核心步骤的加速效果,(2)GPU版本的算法在性能上较CPU版本有较显著地优势,且面对大数据集的加速效果更为明显。例如在基于100万条数据集时,Item-based的整体算法的加速比达到了14倍左右,而面对10万条数据集时,加速比不到8倍。这可以解释为GPU的多核优势在面对大数据集时被更为充分地得到释放;(3)算法对r-based和Item-based两种算法的加速比相近。图4是关于算法预测效果的评估,可以看出基于GPU加速的两类经典协同过滤算法与基于CPU的两类经典协同过滤算法在预测效果上相近。如果结合图2和图3,可获得结论-能够基于GPU获得得可观的计算加速而不牺牲应用效果。

3.3小结

本文通过使用JACKET加快开发过程。目前国内还缺少对JACKET的了解和应用,JACKET的出现为科学领域进行大规模计算仿真提供了新的研究方法,并使得研究人员可以在熟悉的MATLAB平台上实现相关算法。

4结束语

本文既对基于GPU加速经典数据挖掘的研究进行了分类回顾和小结,也实践了基于GPU加速协同过滤计算,通过和基于CPU的版本对比,确实可以实现可观的效率提升。这对我们深入研究将GPU应用到大数据处理场景可以积累宝贵的一手经验,并在已知的尚未基于GPU加速的数据挖掘算法有的放矢。

一键复制全文保存为WORD
相关文章