为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 基于决策树的数据挖掘算法的应用与研究

基于决策树的数据挖掘算法的应用与研究

2019-02-13 15页 doc 64KB 42阅读

用户头像

is_574951

暂无简介

举报
基于决策树的数据挖掘算法的应用与研究基于决策树的数据挖掘算法的应用与研究 摘要:数据挖掘是从大量的数据中抽取出潜在的、不为人知的有用信息、模式和趋势。基于决策树的分类算法在数据挖掘中的应用是非常广泛的。与其他分类算法相比,决策树具有计算量相对较小、易于提取显式规则、可以显示重要的决策属性和分类准确率较高等优点。文章主要是研究数据挖掘中的决策树算法以及决策树算法在具体的客户关系管理系统中的研究与分析,对数据挖掘中的决策树技术做了详细的描述。 关键词:数据挖掘,决策树算法,ID3算法,客户管理 中图分类号:(作者自己填写)             文献标识码:(作...
基于决策树的数据挖掘算法的应用与研究
基于决策树的数据挖掘算法的应用与研究 摘要:数据挖掘是从大量的数据中抽取出潜在的、不为人知的有用信息、模式和趋势。基于决策树的分类算法在数据挖掘中的应用是非常广泛的。与其他分类算法相比,决策树具有计算量相对较小、易于提取显式规则、可以显示重要的决策属性和分类准确率较高等优点。文章主要是研究数据挖掘中的决策树算法以及决策树算法在具体的客户关系管理系统中的研究与分析,对数据挖掘中的决策树技术做了详细的描述。 关键词:数据挖掘,决策树算法,ID3算法,客户管理 中图分类号:(作者自己填写)             文献标识码:(作者自己填写) Data Mining Algorithm Based on Decision Tree Application and Research Abstract: Data mining is the extraction of large amounts of data in the potential, unknown useful information, patterns and trends. Based on decision tree classification algorithm in data mining applications is very extensive. Compared with other classification algorithms, decision tree has a computation is relatively small, easy to extract explicit rules, you can display important decision-making attributes and the advantages of higher classification accuracy. The article is to study the decision tree data mining algorithms and decision tree algorithm in a specific customer relationship management systems research and analysis, decision tree data mining techniques in a detailed description. Key words: data mining, decision tree algorithm, ID3 algorithm, customer management 1 背景 随着信息技术的迅猛发展,人们可以利用计算机方便的获取和存储大量的数据。但是,仅仅停留在对于已获得的数据进行一些表层的处理(如查询、统计等)已越来越不能满足日常工作的需要,因而人们把需要深入挖掘数据之间的内在关系和隐含的信息作为下一步的研究目标。人们迫切需要一种能够智能的、自动的将数据转换成有用信息和知识的技术和工具,这种对强有力数据分析工具的迫切需求使得数据挖掘技术成为了信息技术中的一个前沿的焦点。 2 数据挖掘的相关理论 2.1数据挖掘的概念 数据挖掘从大量的,不完整的,有噪声进行模糊随机在原始数据,提取隐瞒,人们事先不知道,而且是潜在有用的,可信的,新颖的信息和知识的过程。数据挖掘由三个步骤组成:数据预处理阶段、模型阶段和数据分析阶段。 图1 数据挖掘 1、数据预处理阶段(Data Preprocessing Phase)中,特定的业务问题必须得到明确的定义,否则数据挖掘将变得漫无目的。在业务问题的域知识基础上,该阶段的任务包括验证、选择和准备被要求用来论述问题的数据。在构造良好的数据仓库环境里,这些步骤相对简单些,但是仍然会涉及到对采样和平衡数据的考虑。 2、模型设计阶段(Model Design Phase)需要深入地检查数据,并从中选择那些显示与问题最有关系的字段,它也需要选择一个正确的数据挖掘算法以应用于数据(如:决策树、规则归纳)。然后,最小化地细分数据,一般需要将数据分为一个调整集或者多个测试集。 3、数据分析阶段(Data Analysis Phase)典型地包括一个附加的准备活动(数据转换)来重组数据,以求更好地匹配己选择的算法和业务问题(例如,处理数据中缺少的值)。此后将已经选择好的数据挖掘工具应用于数据,典型情况下包括创建一个采用数据修正集的模型,然后用至少一个测试数据的独立集来证明这个模型。模型的准确性和有效性需有效的评估。初始的模型将很可能没法达到数据挖掘的目的,许多反复是有必要的,尤其是在模型设计和数据分析阶段中。 2.2决策树的概念 决策树是作为与样本属性结点,用属性的取值作为分支的树型结构。它是进行了分析和归纳利用信息理论的原则,分析大规模的样本属性而产生的。决策树的根节点是最大的属性信息的,在所有样本。树的中间节点是在示例子集的根树包含的信息内容最大的属性点。决策树的叶点是样品类别的价值。决策树使用新的样本分类,即通过新的决策 树属性值测试的样本,从树的根节点开始,根据样本属性值逐渐向下沿决策树,直到树的叶子点,这一点表现的类是新的样本类别。决策树方法是在数据挖掘中非常有效的方法。决策树是一种知识的一种表现形式,它是所有高采样数据摘要,即决策树能准确识别所有的样本类别,也可以有效识别的新样本的类别。 3数据挖掘技术在实际中的应用——以客户关系系统为例 3.1 以数据挖掘为核心的系统架构 数据挖掘是一个非常复杂的过程。每个类型的数据挖掘技术都有自己的特点与实现方法,输入/输出数据的形式要求、结构、设置、培训、测试和模型评价方法等都有不同要求,分别该算法的应用程序域的意义和能力也有差异。数据挖掘和具体适用问题密切相关的,每个数据挖掘问题的应用程序必须实现的目标,数据收集完整程度,问题领域专家的支持程度,等等算法的选择没有任何共同之处。 针对客户信息进行挖掘,需要建立决策树,然后对客户重要性做出判别,最后指导公司决策。文章采用以下的流程来建立决策树的模型,如图2所示: 图2决策树建模流程图 3.2 系统数据结构的设计与实现 3.2.1 数据的选择 挖掘后确定的目标,必须对数据挖掘做出准备。数据行为的制备根据需求的挖掘,收集数据,并建立了数据库,良好的可发掘。数据占用的制备在整个数据挖掘过程中,规模最大的一次。在选择数据库从SQL Server的客户信息桌前进行数据挖掘的对象。在客户信息表中有大量的客户信息,选择部分原始数据进行数据挖掘。客户信息表中包含的属性,如表1所示: 表1客户信息属性表 序号 代码 属性 类型 宽度 是否为空 1 KFBH 客户编号 char 8 否 2 KFMC 客户名称 varchar 20 是 3 KFLB 客户类别 varchar 10 是 4 XYD 信誉度 varchar 2 是 5 DWXZ 单位性质 varchar 10 是 6 LXDZ 联系地址 varchar 30 是 7 LXDH 联系电话 varchar 13 是 8 CZHM 传真号码 varchar 13 是 9 XFSP 消费水平 varchar 10 是 10 GMNL 购买能力 varchar 2 是 11 FKFS 付款方式 varchar 2 是 12 FKNL 付款能力 varchar 2 是 13 BZ 备注 varchar 50 是 14 KFJB 客户级别 varchar 5 是             其中,客户类别的取值为:{个人,团体};信誉度的取值为:{高,一般};消费水平的取值为:{高,中,低};购买能力的取值为:{强,一般,差};付款方式的取值为:{现金,汇付,本票,支票,其他};付款能力的取值为:{按时,推迟};单位性质的取值为:{国有,私营,个体}客户级别的取值为:{vip,普通,不重要}。 3.2.2数据预处理 数据预处理在数据挖掘过程中是一个重要步骤,尤其是在对包含有噪音,不完全,甚至是不一致的数据进行数据挖掘,需要对数据进行预处理,提高数据挖掘对象和数 据挖掘满图案的质量。数据预处理技术的技术和数据转换等,数据清理,数据集成,数据真实出售和购买埃斯盖特在同一个家庭。预处理后,可以提高数据挖掘算法 的精度和有效性,并保存数据处理的时间。在客户关系管理系统的特点认为,本文提出以下图3的数据预处理模型: 图3数据预处理 本文选取客户信息表500多个样本作为研究的对象,并在这些原始的客户数据进行预处理。 (1)数据转换,我们必须继续就不断离散属性的处理。这个实验涉及的不断属性——消费水平的项目,经过分析,我们将其单独的变化(0,50万):低,(50万,100万):(100万):高。维规约预处理是过程中的重要步骤,其目的是消除一些挖掘没有意义的属性。在多数情况下,我们选择挖掘属性不 好,对我们的挖掘,在挖掘时,进行帮助,我们要按照不同的数据情况,有关于客户信息表,例如选择之前,应进行的维吾尔族条款一般以消除领域的第一次和客户 的序列号等,客户姓名,地址,电话,传真号码,请注意,因为这些信息可能没有到数据挖掘的意义。 (2)数据清理,在之前的数据进行了挖掘,需要进行干净的第一个数据。通过客户关系系统的日常运作发现,在数据表存在的空缺和数据复制的价值。通常关于空缺值数据,它使用的处理方法包括:忽略行、人工填写空缺值、平均值法等。 3.2.3 数据建模 用决策树流程进行建模,决策树生成算法描述如下: Decision Tree(S:训练集,C:测试属性,D:类别属性) { If S为空,返回一个值为Null的单个结点; 调用ID3算法构建决策树; } void main(){ 输入训练集S; 数据预处理; 调用ER方法对测试属性进行约简; 调用Decision Tree方法构建决策树; 调用Prune方法对决策树进行剪枝; } 对原始数据经过预处理,抽取其中部分数据进行数据挖掘,得到条件属性集合C={信誉度,消费水平,购买能力,购买能力,付款能力,单位性质,客户类别},决策属性集合D={客户级别}。 经过基于信息增益的ID3算法构建决策树,我们得到如图4的决策树结果: 图4初步决策树 3.2.4数据挖掘的实现 在Analysis Services中设置将要训练数据的数据挖掘模型。然后使用客户端工具对受训数据运行高级分析,创建数据挖掘模型的步骤如下: 1、在“客户分析”树窗格中右击“挖掘模型”文件夹,然后选择“新建挖掘模型”。 2、打开挖掘模型向导,在“欢迎使用挖掘模型向导”中,选择“下一步”。 3、在“选择源类型”中,选择“关系数据”。然后“下一步”。 4、在“选择事例表”中,选择“单个表包含数据”,在“可用的表”中选“客户分析”,然后选择“下一步”。 5、在“选择数据挖掘技术”中选择“技术”中的“Microsoft决策树”,然后选择“下一步”。 6、在“选择键列”中选择“事例键列”中的“ID”,然后选“下一步”。 7、在“选择输入与可预测列”中选择“重要性分析”,然后用“>”按钮移动到“可预测列”框中。 8、这些列还将用作输入列。选择“单位性质”、“购买能力”、“信誉度”、“付款能力”、“付款方式”和“联系电话”,并通过“输入列”列表旁边的“>”按钮将其移动到“输入列”框中。单击“下一步”按饥 9、最后在“模型名称”框中输入“重要客户预测”。确保选择了“保存并立即处理”,然后“完成”。 10、出现“处理”窗口,显示正在处理的模型。处理完成之后出现一则消息,说明“已成功完成处理”,选择“关闭”。 下面使用代码通过DSO去创建了一个关系型数据挖掘模型。 //连接本机服务器。 Dsoserver.Conneet“dataserver“ Set dsoDB=dsoserveeMDStores(“Sales“) StrLQuote=dsoDB.Datasourees(strsroName).OpenQuoteChar strRQuote=dsoDB.Datasourees(strsreName).CloseQuoteChar StrForm=strLQ&“sales”&strRQ  //sales为挖掘模型的事实表 //检查数据挖掘模型 If Not dsoDB.MiningModels(strModelname) is Nothing Then //如存在即删除 DsoDB.MiningModels.Remove strModelname Endif //创建新关系挖掘模型CustsalesMode1Rel Set dsoDMM=dsoDB.MiningModels.AddNew(StrModelname,_c1sRelationgal) //创建一个新的公用ALLUSERS挖掘模型角色 Set dsoRole=dsoDMM.Roles.AddNew(“ALL Users“) W1th dsoDMM DataSources.AddNew strSrcName,sbcIsRegular Description=”Analysis of Sales edibility” //将sales表设为模型的实例表。 FromC1ause=strFrom //选择算法 MiningAlgorithm=”Mierosoft-Decisjon-Trees“ //让DSO定义训练查询。DS根据所用的数据源及其模型的定义 Train1ngQuery=”” Update End With SetdsoCol=dsoDMM.Colomns.AddNew(“ID“,sbcIsRegular) with dsoCol SourceColumn=strFrom&“.“&stLQ&“id“&strRQ DataType==adlnteger IsKey=True IsDisabled=False End With //以下为供模型进行预测活动的属性列 Set dsoCol=dsoDMM.Columns.AddNew(“购买能力”,sbclsRegular) With dsoCol ContentType=“DISCRETE” SourceColumn=strFrom&”.”&”购买能力”&strRQ IsInput=True IsPredictable=False DataType=adwChar IsDisabled=False End With Set dsoCol=dsoDMM.Colurnns.AddNew(“信誉度”,_sbclsRegular) W1th dsoCol ContentType=“DISCRETE“ SourceColumn=strFrom&”.”&”信誉度”&StrRQ IsInput=True IsPredictable=False DataType=adwChar IsDisabled=False End With Set dsoCol=dsoDMM.Colurnns.AddNew(“消费能力”,_sbclsRegular) W1th dsoCol ContentType=“DISCRETE“ SourceColumn=strFrom&”.”&” 消费能力”&StrRQ IsInput=True IsPredictable=False DataType=adwChar IsDisabled=False End With Set dsoCol=dsoDMM.Colurnns.AddNew(“单位性质”,_sbclsRegular) W1th dsoCol ContentType=“DISCRETE“ SourceColumn=strFrom&”.”&”单位性质”&StrRQ IsInput=True IsPredictable=False DataType=adwChar IsDisabled=False End With //以下为可预测列 Set dsoCol=dsoDMM.Columns.AddNew(“重要性”,_SbclsRegular) With dsoCol ContentType=“DISCRETE“ SourceColumn=strFrom&”.”&”重要性”&StrRQ IsInput=True IsPredictable=False DataType=adwChar IsDisabled=False End With //保存数据挖掘模型 With dsoDMM 4算法评估 本研究采用UCI公共数据库中的3个数据库来进行仿真试验,并将本研究中提出的决策树算法得出的结果和C4.5算法相应结果进行比较。表2为数据库的基本信息: 数据库 Australian German sat 样本数 690 1000 6435 属性数 14 24 36 类别数 2 2 6         表2数据库基本信息 表3为试验的对比结果:   数据库 算法 决策树算法 C4.5 建树所用条件属性数 Australian 12 14 German 18 24 sat 28 36 预测精度 Australian 85.6% 84.1% German 74.8% 72.1% sat 80.6% 86.4%         表3试验结果 通过对比发现决策树算法明显减少了建立决策树所用的属性个数,决策树的计算成本正比于建树所用属性个数,因此,本文提出的算法明显减少了计算成本。同时,由于算法复杂度较小,构建决策树的效率也将有所提高。实验表明,在建树规模相当的情况下,本决策树算法的预测精度比C4.5有所提高。 参考文献: [1] Jiawei Han,Micheline Kamber.数据挖掘概念与技术[M].北京:机械工业出版社,2006:1-100 [2]毛国君.数据挖掘原理与算法[M].北京:清华大学出版社,2005:109-153 [3]杨明等.决策树学习算法ID3的研究[J].微机发展.2007,(5):6-8 [4]滕皓等.改进决策树的研究[J].济南大学学报.2008,16(3):231-233
/
本文档为【基于决策树的数据挖掘算法的应用与研究】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索