ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:72.92KB ,
资源ID:19408064      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19408064.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据分析与挖掘实验报告docWord文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据分析与挖掘实验报告docWord文档格式.docx

1、遗传算法:遗传算法是一种基于生物自然选择与遗传机理的随机搜索算法,是一种仿生 全局优化方法。遗传算法具有的隐含并行性、易于和其它模型结合等性质使得它在数据挖掘 中被加以应用。sunil已成功地开发了一个基于遗传算法的数据挖掘工具,利用该工具对两 个飞机失事的真实数据库进行了数据挖掘实验,结果表明遗传算法是进行数据挖掘的有效方 法之一。遗传算法的应用还体现在与神经网络、粗糙集等技术的结合上。如利用遗传算法优 化神经网络结构,在不增加错误率的前提下,删除多余的连接和隐层单元:用遗传算法和 bp算法结合训练神经网络,然后从网络提取规则等。但遗传算法的算法较复杂,收敛于局 部极小的较早收敛问题尚未解决

2、。决策树方法:决策树是一种常用于预测模型的算法,它通过将大量数据有目的分类,从 中找到一些有价值的,潜在的信息。它的主要优点是描述简单,分类速度快,特别适合大规 模的数据处理。粗糙集方法:粗糙集理论是一种研究不精确、不确左知识的数学工具。粗糙集方法有几 个优点:不需要给出额外信息:简化输入信息的表达空间:算法简单,易于操作。粗糙集处 理的对象是类似二维关系表的信息表。目前成熟的关系数据库管理系统和新发展起来的数据 仓库管理系统,为粗糙集的数据挖掘奠定了坚实的基础。但粗糙集的数学基础是集合论,难 以直接处理连续的属性。而现实信息表中连续属性是普遍存在的。因此连续属性的离散化是 制约粗糙集理论实用

3、化的难点。覆盖正例排斥反例方法:它是利用覆盖所有正例、排斥所有反例的思想来寻找规则。首 先在正例集合中任选一个种子,到反例集合中逐个比较。与字段取值构成的选择子相容则舍 去,相反则保留。按此思想循环所有正例种子,将得到正例的规则(选择子的合取式)。比较 典型的算法有michalski的aqll方法、洪家荣改进的aql5方法以及他的ae5方法。统计分析方法:在数据库字段项之间存在两种关系:函数关系(能用函数公式表示的确 泄性关系)和相关关系(不能用函数公式表示,但仍是相关确左性关系),对它们的分析可采 用统计学方法,即利用统计学原理对数据库中的信息进行分析。可进行常用统讣(求大量数 据中的最大值

4、、最小值、总和、平均值等)、回归分析(用回归方程来表示变疑间的数量关系)、 相关分析(用相关系数来度疑变量间的相关程度)、差异分析(从样本统计量的值得岀差异来 确定总体参数之间是否存在差异)等。模糊集方法:即利用模糊集合理论对实际问题进行模糊评判、模糊决策、模糊模式识别 和模糊聚类分析。系统的复杂性越髙,模糊性越强,一般模糊集合理论是用隶属度来刻画模 糊事物的亦此亦彼性的。李徳毅等人在传统模糊理论和概率统汁的基础上,提岀了左性泄量 不确定性转换模型一云模型,并形成了云理论。还有接下来重点介绍的 彌纽恢/方法。1.2关联规则1.2.1关联规则的概念关联规则的一个典型例子是购物篮分析。它是由著名的

5、全国五百强沃尔玛发现的,沃尔 玛有着世界最大的数据仓库系统,为了能够准确了解顾客在其门店的购买习惯,沃尔玛对其 顾客的购物行为进行购物篮分析,想知道顾客经常一起购买的商品有哪些。沃尔玛数拯仓库 里集中了其各门店的详细原始交易数据。在这些原始交易数据的基础上,沃尔玛利用数据挖 掘方法对这些数据进行分析和挖掘。一个意外的发现是:跟尿布一起购买最多的商品竟是 啤洒!经过大量实际调查和分析,揭示了一个隐藏在尿布与啤洒背后的美国人的一种行为 模式:在美国,一些年轻的父亲下班后经常要到超市去买婴儿尿布,而他们中有30%40% 的人同时也为自己买一些啤酒。产生这一现象的原因是:美国的太太们常叮嘱她们的丈夫下

6、 班后为小孩买尿布,而丈夫们在买尿布后又随手带回了他们喜欢的啤酒。关联规则由此进入 人们的视野。关联规则挖掘被泄义为假设I是项的集合。给左一个交易数据库D,苴中每个事务 (Transaction)t是I的非空子集,即每一个交易都与一个唯一的标识符TID(Transaction ID)对 应。关联规则在D中的支持度(support)是D中事务同时包含X、Y的百分比,即概率:置 信度(confidence)是包含X的事务中同时又包含Y的百分比,即条件槪率。下而举个例子来更好地说明关联规则。给左AllElectronics关系数据库,一个数据挖掘系统可能发现如下形式的关联规则Age (X, “20.

7、29”) Aincome (X, 20,000.29,000”) ?二buys(X, CD-Player” ) Support二20$, Confident=60%英中X是变量,代表顾客,该关联规则表示所研究的AllElectronics数据库中,顾客有 20%在20-29岁,年收入在20,000-29,000之间,并且购买CD机;这个年龄和收入组的顾客购买CD机的可能性有60%o1.2.2关联规则的实现 Apriori算法1.2.2.1算法描述Apriori算法在发现关联规则领域具有很大影响力。算法命鋼源于算法使用了频繁项集 性质的先验(prior)知识。在具体实验时,Apriori算法将发

8、现关联规则的过程分为两个步 骤:第一步通过迭代,检索岀事务数据库中的所有频繁项集,即支持度不低于用户设定的阈 值的项集:第二步利用频繁项集构造出满足用户最小信任度的规则。其中,挖掘或识别出所 有频繁项集是该算法的核心,占整个计算量的大部分。Apriori算法使用一种称作逐层搜索的迭代方法,K项集用于搜索(K+1)项集。首先, 通过扫描数据库,累积每个项的计数,并收集满足最小支持度的项,找出频繁1项集的集合。 该集合记作L1。然后,L1用于寻找频繁2项集的集合L2, L2用于寻找L3,如此下去,直 到不能再找到频繁K项集。为提髙频繁项集逐层产生的效率,一种称作Apriori的重要性质用于压缩搜索

9、空间。 Apriori性质:频繁项集的所有非空子集也必须是频繁的。如何在算法中使用Apriori性质? 主要有两步过程组成:连接步和剪枝步。(1)连接步:为找Lk,通过将Lkw与自身连接产生候选K项集的集合。该候选项集合 记作Ck。设11和12是Lk中的项集。记号1JJ俵示h中的第j项。执行S小连接5小,如 果它们的前(K-2)项相同的话,其中的元素是可连接的。(2)剪枝步:为压缩Ck,可以用Apriori的性质:任何非频繁的(K-1)项集都不是频 繁K项集的子集。因此,如果候选K项集的(K-1)项子集不在L(k小中,则该候选也不可 能是频繁的,从而可以从Ck中删除。1.2.2.1算法举例Ap

10、riori算法的伪代码input: DB, min supOutput: result =所有频繁项集的他们的支持度 方法:Result: = ;K:=l;Cj:=所有的1-项集While(Ck)dobegin为每一个Ck中的项集生成一个计数器;For (i=l;i2的项集频繁项集L111612713215由L*生成 候选集C?候选项集C2I1J24I1J41I1J5AqI2J5I3J4I3J5I4J5扫描D,并对 每个候选计数频繁项集L211,13图6.2候选相集合频繁项集的产生,最小支持度为22用Matlab实现关联规则2.1Matlab 概述Matlab是由美国malhworks公司发布

11、的主要而对科学计算、可视化以及交互式程序设计 的高科技计算环境。它将数值分析、矩阵计算、科学数拯可视化以及非线性动态系统的建模 和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设汁以及必须 进行有效数值计算的众多科学领域提供了一种全而的解决方案,并在很大程度上摆脱了传统 非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进 水平。Matlab的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似, 故用MATLAB来解算问题要比用C, FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优

12、点,使MATLAB成为一个强大的数学软件。 由于Matlab使用矩阵作为其基本数据单位,所以使用Matlab进行Apriori算法的编辑 有着先天的优势,可以使代码简洁易懂。下面就来介绍用Matlab编写的Apriori算法。2.2 基于 Matlab 的 Apriori 算法采用的原始数据是上节表1的某超市的销售项目的事务记录。以下为基于Matlab的Apriori算法的源代码以及相关解释。sup=2; %假设支持度为2shw=l 1 0 0 1;0 1 0 1 0;0 1 1 0 0;1 1 0 1 0;1 0 1 0 0; 0 1 1 0 0;1 1 1 0 1;1 1 1 0 0;焉h

13、w是事务矩阵,行衣示个事务,列衣示项目;若某事务没有某项,则该项目用0衣示。将 上述衣1.1的数据衣示为事务矩阵,每个项目都用数字衣示。shw =mlz nl=size(shw);ml =9nl =5幺寻找1项集 col=(l:nl)f; col =3count_sup=sum (shw, 1) * ; %求出所有候选项集Cl的支持度 count_sup =temp=f ind (count_sup=sup) ; $査找候选项集Cl中支持度2的项集,生成频繁项集Lltemp =col=col(temp); count_col_sup=count_sup(temp); Ll= col count

14、_col_sup;LL丄%产生2项集i=0;j=0;co2=nchoosek (col, 2);务产生候选项集C2co2 =m2,n2=size(co2); count_co2_sup=zeros(m2, 1); for i=l:m2for j=l:mlif (shw(j,co2(i,1)=1) & (shw(j,oo2(i,2)=1) count_co2_sup(i)=count_co2_sup(i)+1;endend endtemp=f ind (count_co2_sup=sup);务查找候选项集C2支持度2的项集,生成频繁项L2 co2=co2(temp,:);count_co2_su

15、p=count_co2_sup(temp,:L2= co2 count_co2_sup;L2 =%寻找3项集A=co2(:zl) co2(:,2);4 =mA,nA=size (A);B(1)=A(1);k=2;for i=l:mAnAif (A(i, j)-=B(l: end) 电查找重复出现的商品号 B(k)=A(i, j);k=k+l; %B=1 2354i=i+l;co3=nchoosek (B, 3) ; $产生候选项集C3co3 =m3,n3=size(co3);count_co3_sup=zeros (m3, 1);m3for j =1:if(shw(jzco3(i,1)=1)

16、& (shw(j,oo3(i,2)=1) & (shw(jzco3(iz3)=l)count_co3_sup(i)=count_co3_sup(i)+1;m3=m3+l;temp=f ind ( (count_co3_sup) 务査找候选项集C3支持度2的项集,生成频繁项L3 co3=co3(temp,:count_co3_sup=count_co3_sup (temp,:L3= co3 count_co3_sup;L3 =务寻找4项集C=co3(:zl)1 co3(:,2)1 co3(:,3)1;mC,nC=size(C);D(1)=C(1);K=2;for i=2:nCif (C (i)

17、-=D(l:end) ) %查找重复出现的商品号D(K)=C(i);K=K+1;co4=nchoosek(D,4);m4,n4=size(co4);count_co4_sup=zeros (m4,1);m4if(shw(j,co4(i,1)=1) & (shw(j,oo4(i,2)=1) & (shw(jzco4 (i, 3) )=1) & (shw(j,oo4 (i, 4) )=1)count_co4_sup(i)=count_co4_sup(i)+1;jWtemp=find(count_co4_sup)co4=co4(temp,:count_co4_sup=count_co4_sup (t

18、emp,:L4=co4 count_co4_sup;Empty matrix: 0-by-5上述基于Matlab的Apriori算法的结果与上节的图6.2致,由于C4是空集,所以算法终 止,共找到频繁项集Li, L“ L3o3用java实现关联规则3.1 java界面描述运行程序Apriori,进入关联规则主界而,如图3所示图3.1关联规则主界面点击“载入”选择g:/l.lxt,选择“打开S载入到java界而中,如图3.2所示圍关联更则回 込图3.2载入界面载入完成后的界而,如图3.3所示图33载入完成界面输入最小支持度阈值,如2,点击“生成频繁项集S生成所有频繁项集,如下图3.4所示图3.4

19、频繁项集输入最小可信度的值,如0.6,点击生成关联规则,结果如下图3.5所示图3.5关联规则3.2java关键代码描述1、 删除小于支持度的键public void rettioveNotSupporty(Hsshtable ht) String str = support.getTezt();int j = Integer );Set s = ht-keyset();for (Iterator i = s .iterator(); i .hasllext();) if (Integer.parseInt(String) ht.get(i.next() j) i.reniove();2、 创建

20、并返回Li的结果集public St ring createLl() Stririig str = ,M;for (int i = 0; i. info.length; i+) for (int j = Q; j infoi .Lehgth; j+) if (!htl.cantainsKey(infoij) ht JL.pugQnf oiI ;小e ht 1. pu t j Inrt eger parselnt( ( St ring) lit 1十1十“);removellot SupportKey( ht 1);str = ML1 如下;”十 MnM;str = str + print(ht

21、l)十str = str + B, M + In;return str;3、创建并返回L2的结果集public String createL2() St ring str = MM;str = createLl();Set s = htJL.keyset ();for (It erator iter = s .iterator (); iter has Hext (); ) Object o = iter next();for (int i = O; i i卄)for int j = 0; infoi .length - 1; j+ if (o.equalsinfoij) for (int k = j 4- 1; k inf oi .length; k+) if ( ! this c oht a in(ht 2 -k eySet()4 (String) infoik, null) Item item = new Item(String) o丿 infoik); ht 2 piut(:Ltem,U; else Obj

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1