基于mda的数据分析过程研究

上传人:E**** 文档编号:114192970 上传时间:2019-11-10 格式:PDF 页数:68 大小:2.43MB
返回 下载 相关 举报
基于mda的数据分析过程研究_第1页
第1页 / 共68页
基于mda的数据分析过程研究_第2页
第2页 / 共68页
基于mda的数据分析过程研究_第3页
第3页 / 共68页
基于mda的数据分析过程研究_第4页
第4页 / 共68页
基于mda的数据分析过程研究_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《基于mda的数据分析过程研究》由会员分享,可在线阅读,更多相关《基于mda的数据分析过程研究(68页珍藏版)》请在金锄头文库上搜索。

1、pjlijj!:规则(2)规则(3),关联关系如代码34所示:代码3-4字段与规则的关联关系山东大学硕士学位论文在检测到年龄属性为空值时,首先与第一条规则匹配,传递的参数是出生日期,若能够得到返回值,则匹配结束,检测其他空值属性;若没有返回值,则匹配第二条规则,由同类型教师的平均年龄作为该老师的年龄,依次类推,直到获得返回值或者所有规则都匹配完毕。在匹配规则一时执行代码35中的代码,匹配其他规则时,代码相似。代码35规则匹配规则引擎可以将业务规则从具体的程序代码中独立出来,规则引擎接收数据输入,通过推理引擎接收数据输入,解释业务规则,并根据规则做出响应。当规则的具体内容有变化或者属性关联的规则

2、集有变化时,改动非常容易,对于用户来说也是透明的,比硬编码的方式方便很多。3123重复记录处理出现重复记录的原因有:数据源不同,同一种类型可能用不同的形式表示;拼写错误使得同一种类型有多种表示;存储形式不同,全称、代码、缩写都可以表示同一种类型。在这种情况下,计算机无法对同一实体的不同表示进行区分,出现重复记录是常见的,也是很正常的。但是重复记录的存在会造成以下问题:(1)损害信息的一致性:多条相似记录在数据库中以不同的主键来标识,它们的信息可能互为补充,但存在冗余,而且可能相互矛盾。当现实世界中的实体发生状态改变时,操作人员会更新这些相似重复记录中的某个“代表记录,而其余的记录往往得不到同步

3、更新,这样会进一步损害信息的一致性。(2)资源浪费:相似重复记录不仅会造成数据库中的数据冗余,而且浪费存储空间,更坏的情况下容易让人产生混淆。重复记录包括两种:一种是完全重复记录,即任意两条记录,它们在每个属性上的值都是完全相同的,称为完全重复记录:一种是相似重复记录,所谓相似重复记录指同一个现实实体在数据集合中用多条不完全相同的记录来表示,由于山东大学硕士学位论文它们在格式、拼写上的差异导致数据库管理系统不能正确识别,这些记录称作“相似重复记录3Sl。在所有关于数据清洗的研究中,对于重复记录处理的研究是最多的,目前也,已经取得了一定的成果。最可靠的重复记录检测方法是比较数据仓库中每对记录,但

4、该算法时间复杂度太大,需要N(N-1)2次比较,时间复杂度是O(N2),I其中N是数据仓库中记录的总数,当N很大时,该算法的运行时间无法忍受。目前对于重复记录的检测和处理已经有一些基本的算法。排序合并方法是检测数据库中完全重复记录的标准方法,它的思想是先将数据库中的记录排序,然后通过比较邻近记录是否相等来检测完全重复记录。目前已有的检测相似重复记录的方法也大多以此思想为基础,只是排序对象的选取和记录进行比较的方法有所不同。文献【36】自定义一个与应用相关的键作为排序键,通过一组规则定义的相等理论判定记录是否重复。文献例以记录的NGram值作为排序键,通过计算编辑距离进行记录比较,NGram值指

5、的是若第N个字符只与前N-1个字符相关,这N个字符在一起出现的概率称为NGram值,而编辑距离是指从一个字符串变为另外一个字符串需要经过的编辑步骤(替换、插入和删除字符)的数目。上述两种方法处理的对象都是纯西文表示的数据,不能直接用”来处理中文语言数据。文献【38J通过序值文件的方式解决了多语言文本的排序问畸题,并采用以聚类为元素的优先队列和代表记录相结合的策略实现多语言数据的记录比较。在文献【391Monge等人提出优先权队列算法,优先队列策略借用邻近排序算法的思想,具体策略:先抽取一个或多个字段构成关键字,根据关键字,对数据集进行排序,然后在一个长度固定的子集队列中检测匹配记录,采用类似L

6、RU算法(最近最少使用算法)来控制队列的长度。通过匹配操作找出需要合并的子集,计算其传递闭包,然后合并它们,最后得到若干个近似重复记录集。这些算法存在着以下的问题:算法的结果对关键字的选取依赖程度大,关键字选取的是否合适直接影响着算法的效率和精度;队列大小的选取不易确定,太大会增加比较次数,太小可能会漏配,而且不能并行进行比较,影响了算法的时一间复杂度。为了解决这些问题,提出了如下的解决思路:(1)关键字的选取由多个用户向分别指定,关键字的等级和权值采用公式计算相对值。(2)按照一定的规则将所有记录分为不同的组,组的大小可以不同,减少比较次数。(3)不同组的之间可28山东大学硕士学位论文以并行

7、进行比较,相互之间没有制约关系,提高算法效率。按照上述解决思路,采用基于等级分组的相似重复记录检测方法,它的基本思想是:运用分组思想,即把大的数据集分割成很多不相交的小数据集,再在小数据集中分别查找重复记录。为提高检测精度,按照不同的条件,对大数据级进行多次切分,多次查找。算法流程图如下:是图33重复记录检测流程图其中,计算字段相似度按照如下流程进行:匿字段Vyl时-lt英文分别进行ll按照-lr文相似度计I相似度计箅I算方法计算相似度l图34计算字段相似度流程图1、相关定义设数据集合x=X1,)(2,Xn,字段向量F:(F1,F2,Fp),Fk表示数据表中第k个字段,其中1kp,对于任意记录

8、=Xil,Xi2,Xip,Xip表示xi在P字段的值,山东大学硕士学位论文1in,、v=(W1,W2,Wp)表示权重向量,Wk表示数据表中第k个字段的权重,其中1kp。算法中的几个相关定义如下:定义1:若Tik是第i个操作用户为字段Fk所指定的等级,Tk表示第k个字段最终统一等级,则阽胁kj慨-,定义2:Tic表示Fk最终统一的等级,T表示最低等级,如果任意两字段的最终统一等级不相同,那么T=P,采用RC(RankCentroid)删转换方法,字段Fk最终权重可以表示为:Wk(RC):三争!(32)。l。赢t。如果存在两个或两个以上的字段,它们的最终统一等级相同,则公式32应变成:臃:臁(RC

9、)W(33)其中,W=耽(RC)(34)定义3:对任意记录Xi与Xj在第K个字段xik与Xjk上的相似度定义为411:I切删(s陀(口,xjk)厶”“。1o。“8i州1。d(xik硼=生rD其中a是xik中的任一子串,score(a,班)表示子串a与Xjk中所有子串的相似度且oscore(a,班)1,q表示xik中子串的数目,IXikI表示xik的长度。数据记录Xi与Xj的相似度为:SimRecord(x,巧)=SimFieM(xik,班)堆Wk(36)定义4:设xa为实际的重复记录集合,Xb为识别出来的重复记录集合,则查准率定义为:ScanAccracy(x)=IXaIqXbIIXbI(37

10、)查全率定义为:ScanComplete(x)=IXaflXbIXaI(38)山东大学硕士学位论文其中IXaflXbI表示两个集合相交得到的记录数目,Jxal表示集合Xad的记录数目,lxbI表示集合xb中的记录数目。2、具体步骤第一步:由每个用户根据实际经验给每个字段指定等级,系统根据规则计算每个字段的最终统一等级,并把最终的统一等级转化为相应的权值。设有记录集合X有1000条记录,表示为X寻x1,X2xlooo,字段向量F有三个字段,F_口1,F2,F3),则权重向量W=(Wl,W2,W3)。用户集合U包括三个用户U1,U2和U3,他们为三个字段指定的等级按表35表示:表35字段等级定义及

11、计算字段名称U1U2U3最终统一等级F11322F23232F32l1l根据用户为每个字段指定的等级及公式31,为三个字段计算的最终统一等级为;Tl=T2=2,T3=l。由于T2与T3相等,根据公式32,公式33及公式34可计算得到三个字段的最终权值为:W1=W2=15,W3=35。第二步:选择关键字段或关键字段的某些位,把大数据集分割成不相交的小数据集。分割结束的原则有两个,一是找不到其他合适的分割条件,二是每个小数据集已经达到了一个合适的大小。只要满足其中一个条件,则不再分割。具体的分割算法如下:算法3-2数据集分组算法开始:令集合S=X),T为空,M为空Step1若S不为空,则转到Ste

12、p2。Step2判断S中每一个元素Si的大小是不是小于等于阈值a,若是,则将si从S中删除,加入T中。Step3选择一个关键字段或关键字段的某些字串,若能够找到这样的分割条件,则把S中的每一个元素Si分割成不相交的小数据集。若分割得到的小数据集的大小小于等于阈值a,则将小数据集加入T中,否则加入M中;若找不到合适的分割条件,算法结束。Step4若M不为空,则S=M,转到Step3。若M为空,算法结束。设有这样的数据集,集合中包含100条数据记录,分别由50条张姓、40条李姓和10条黄姓老师组成,分布于济南市几个高校中的多个学院,各姓氏中均有一条重复记录,部分集合信息如表36所示:山东大学硕士学

13、位论文表3-6教师集合数据表姓名学院地址贡小阴计算机科学与技术学院济南市山东大学贾晓朋计算机学院济南市山大张晓阴化学院济南市济南大学定义算法中阈值a为数据集合总数的10,即铲lO,第一轮分组先按照姓名中的姓分组,集合被分为三个小集合,黄姓集合中记录的数目已经满足阈值,可不用再分;其他两个集合按照学院属性中的子串分组,若此时所有分成的小集合都满足阂值限制,则分组结束,否则继续按地址或地址属性继续分组,依次类推。第三步:分别在各个小数据集中检测相似重复记录,并进行处理。具体算法如下:算法3-3数据记录相似度计算算法对数据集中的相邻记录循环以下步骤:对两条记录的所有字段循环stepl:Step1将X

14、i的字段Fik的内容分为若干子串,按公式35计算Xik与Xik的相似度。Step2根据公式36计算两条记录的相似度。Step3若两条记录的相似度值大于阈值b,则将他们存入一个相似度集合。Step4计算相似度集合的传递闭包,合并相似度集合。即若记录xl与X2是相似重复记录,X2与X3是相似重复记录,则X1与X3也是相似重复记录。循环结束。分组结束后,对每个小集合中的数据记录进行相似度计算,以表36中前两条记录为例。首先将姓名分为姓和名两个子串,第一条记录的姓名分为“黄”和“小丽”,第二条记录的姓名分为“黄和“晓丽”;然后将第一条记录的“黄”与第二条记录的两个子串分别计算相似度,取得一个最大值s1

15、,再将“小丽”与第二条记录的两个子串分别计算相似度,取得一个最大值s2;最后(sl+s2)P黄小丽”的长度即得到两条记录在属性姓名上的相似度。依次计算其他属性的相似度,最后求各属性的相似度的加权和即得到两条记录的相似度。第四步:选择其他的关键字或关键字的子串,重复第二步和第三步。对于每一个检测得到的相似重复记录集合,保留字段内容完整率最高的一条记录,其他的删除。3、算法分析32山东大学硕士学位论文算法优点:(1)关键字的选取由多个经验用户指定,并最终转化为相应的权重,使得每个字段的等级差异是相对的差异,更加客观,误差减小。(2)大数据集分组之后,不相交的数据集合可以并行进行检测,提高了算法效率

16、。(3)通过多次选择关键字比较,避免漏配情况,提高查全率。不足之处:(1)分组时,作为停止分组的条件之一的集合大小的阈值a难以确定,原始集合大小不同,a的值也不同,目前a的值定为原始集合的10,但随着数据集的大小变化,10的比例有时也不合适。(2)计算相似度时的阈值b不好确定,需要根据多次实际实验和经验才能确定一个相对合适的值。313数据质量数据质量的好坏直接影响着数据分析的结果,从源数据到最终的结果展现要经过很多的数据处理、转化、清洗等过程,数据质量的保证面临着很大的考验。其中在数据采集过程中对数据的准确性产生影响的因素有:1模型描述错误。开发者对数据源系统理解的不充分,对数据采集的过程或流程不明确,导致模型建立错误。另一方面,如何无二义性地描述模型也是一个重要课题。2开发错误。即使模型设计的很明确,数据采集的过程中也会发生一些错误,例如逻辑错误、书

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号