收藏 分享(赏)

半结构化、层次数据的模式发现.doc

上传人:cjc2202537 文档编号:191012 上传时间:2018-03-23 格式:DOC 页数:14 大小:107.50KB
下载 相关 举报
半结构化、层次数据的模式发现.doc_第1页
第1页 / 共14页
半结构化、层次数据的模式发现.doc_第2页
第2页 / 共14页
半结构化、层次数据的模式发现.doc_第3页
第3页 / 共14页
半结构化、层次数据的模式发现.doc_第4页
第4页 / 共14页
半结构化、层次数据的模式发现.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、半结构化、层次数据的模式发现第 22 卷第 1 期2(101 年 1 月小型傲型计算机系统MINIMICROSYmM文章编号;1000-1220(2001)01-008405半结构化,层次数据的模式发现刘芳胡和平路松峰(华中科技大学计算帆科学与技术学碗武汉 430074)V0【22No1Jan.2001摘要:Web 数据资潭及数据桌成引发丁半结构化数据问题.半蛄构化数据指其蛄构臆舍或不规整的白描逑数据.由于姨乏独立于数据的模式,有盘地主询或洲览谊类数据比较目难.半蛄构+匕数据的模式发现成为辫决蕾韪的基础步骤.皋丈提出的鼻击能醇快速有鼓地发现半结构化屡次教据中的规整蛄构.它采用白项向下的生成方法

2、,黠鲁有鼓舌白剪枝策略从 OEM 模型袁选的半蛄构化屡次数据中构遣模式树 .关麓词:半结构化数据模式发现 IOEM分类号:TP3l1 文献标识码:AWeb 数据的不断增长和异构数据集成的应用 ,导致了大量半结构化数据的产生,这些数据的特点是其结构隐台,不规则或不完整“.如一个有关商品信息的 web 页面集合,虽然每个页面描述的商品不同,但是它们都包含相似的信息(货号,单价,萌色,外型,规格,单位,产地,性能)-这一信息框架隐古在数据中,需要经过分析工具(如文本分类嚣等)得到,由于没有严格的结构限制.有的页面会缺少某些信息.而其它一些页面可能多出几条,而且每条信息的表达方式也可能不尽相同.如产品

3、性能:有的用表格形式表达,而有的剜用一殷文字描述.从传统的关系数据库看,数据结构不规整的原因是缺步砸定义的,固定的,独立于数据的模式框架.半结构化数据是自描述数据-数据中存在模式,但是模式与数据问的界限模糊,新数据的加人没有预先定义的模式约柬,所以这种由数据描述的模黄岳随着数据的不断增多而扩展.在 www 环境中,大多散 web 查询使用情报检索技术.计算文挡内容与查询关键宇的相似度,并返回相似度较大的文档集合这种方涪得到的结果数量过多,其中真正为用户所需的信息却很少,因此人们期望 web 数据与数据库数据一样.能够利用数据结构进行有效的检索.对于某些由数据库的数据集成而形成的半结构化数据,可

4、以采用强制施加模式的办法使其具有结构,因为这些数据本身就具有一定的规则结构.但是对于结构松散的.web 数据,这样的方法会产生大量空值而降低查询效率.同时还会丢失大量信息.文献 0用最小 FRO(MinimalFullRepresentativeObjects)来表达半结构化层次数据中的模式,该文采用的方法是将 OEM(ObjectExchangeMode1)图转换为非确定有穷自动机 NFANondeterministicfiniteautomaton)的状态转移圈,然后将之确定化及最小化得到最小 FRO;为避免因数据量过多而引起计算复杂性问题.该文提出了一个 FRO 的近似值 k-RO,由它

5、生成的模式是最小 FRO 的超集.最小 FRO 或 k-RO 生成的模式有效地表达了数据对象阃的关系,但是.只要在 OEM 图中出现过的结构(不昔其出现的频度有多低)均被包含在目的模式中.因而,由它得出的模式规模过大,而且当数据量程大时,其计算时间是无甚容忍的.我们知道,过大的模式会影响数据查询效率,忽略某些不常发生的结构信息为代价以提高效率是必要的.显然,在数据集合中散据发生的频率越高,就越应该受到重视.应该作为目的模式的一部分-相反,则应该忽略鄢些发生频率较低的数据,与文献3)一样.本文的目的是从OEM 模型表达的半结构化层嵌数据中发现内在模式 .我们采取直接从 OEM 圈生成模式村的方法

6、,利用结构在数据集合中出现的频率为消息.通过修改支持度参数,剪掉不常见的结构.使得半结构化景次敦据的模式更为严谨;实验表明 ,由于采用了基于层次数据特征的剪枝策略,本文算法效率较高.本文第 1 节介绍了 OEM 模型及有关概念;第 2 节提出半结构化层次数据模式发现的算法第 3 节给出实验结果和与其它算法的比较 I 第 4 节总结并指出进一步工作.1 基本蕺念OEM 是自描述对象模型,专为表达半结构化数据而设计.它最初的目的是为异构数据源阃的数据交抉提供高度灵活的转换工具.不同应用中的 OEM 模型大多在原模型的基础上作了一些小的改动.车文采用的模型与文献 C23,3:相同.将 OEM 看作圈

7、,数据对象用节点表示,对象问的层欢关系则由边上的标签(1abe1)体现.每一个对象包含对象标识 (-dentffier)和对象值(vatue),identifier 是对象的唯一标识.vallie 则有两种表示形式:如果以对象.为顶点的出度 OD(O)一 0,即对象 0 投有子对象,则 O 为原子对象,value(O)为原子值,其值的类型为字符串或整型等原子类型,如果 OD(O)=n0,剧 value(O)一lj-idt, .lDI1 也), 其中【.(1in) 是从顶点 O 弓 I 出的第 i 条边上的 label,id,是第牧藕日期:】9991213 基金】蔓目:国防预研基盘(94J3.4

8、.2.J9w05) 资助作者倚舟;刘舞,博士生.主要研究领域为 KDD 及应甩胡和平教授,主要研究领域为 KDD,CASE 路橙峰,讲师,主要研究领域为 KDDEmail:刘芳等;半结构化,层次数据的模式发现条边连接对象的 idntiffer.该对象是 0 的子对象.嚣们借用环 ,因为奉文提出的算法授有考虑循环问题文献3J 中的图来举倒说明本节的概念,图 1 忽略了原圈中的JL1】d1_c】1Hl1_,cILL/lleriltotla/And,.ColepcmIef1pNce.alh;mbbieKithSlJamesFnwhpurk圈 1OEM 圈:thepremiershipobject例

9、l 对象,OD():2lidel1tifier(2)=2valUE()一officisd,3.mekname,4)对象3,OD(3)=o;identifier(帅) 一 0value()=ManchesterUnited简单路径表达式 PC(simplepathexpression)是以点为问隔的 iaSel 序勋,记作 pe1.1z.k.n 为 pe 曲长度在奉文中,l 和】.为不同层的 label(i,j:l,2,n 且 ij). 如果有il-.】,则一定有对象 O 为 1.所在边的终端点并且同时为I.所在边的起始点.pe=1J.12. 1,pe一 1.k+l_1,k 为pe的长度,如果

10、il 并且 i+kn,我们称 pe 是 pe 的有序子集.pe 有序包吉 pe.给出简单路径表达式集音 (pe,pe.,p,对于某十 pe-,在集合中不存在任何 pei(i,j=1,2,n 且 ij)有序包吉 pe,称呻是谖集台中的最长 pe,记作 rope.例 2peclub.player.naIe 为一条长度为 3 的简单路径表达 Fpe】club.nanl.official,pe:=club.flnle);则peI 为该集音中的 rope.数据路径 dp(datapath)是以逗号为问隔的以 label,iden-tiller 交替出现的列 ,它是简单路径表达式的实例 .记作-_OI,O

11、I,12,?-.1O,il,n,1.,O.value(Oi).n 为数据路径 dp 的长度.图 1 中有多条数据路径是倒2 的实例,见例 3;例 3dp】0,club?1,player,5,lial2ie,6Idp2=oclub,l.player?l,name,15dp3:O,club.20,player.22,13met23:dp.一 0club,24,player,28.name,292 模式发现为方便描述,我们先提出颤繁 pe 的定义.的支持度定义为 pe 出现在 OEM 田中的十数,记作 sup(PC),在图 1 中sup(elub.n 日 l):3当 sup(pc)MINSUP(mn

12、imum蛐 pport 最小支持度,由用户定义)时,pe 为频繁 pe,否则为非频繁口 e.模式发现是为了找到数据中的结构,发现数据对象问的美系,鼠此我们对 OEM 中连接对象与子对象的abe比对象本身更感必趣,一条简单路径表达式可以描述数据问的部分联系,鄂,五为发现公用的,完整曲结构,模式发现需要找出OEM 圆中所有颧繁的最长茼单路径表达式 rape 保证了模式中没有重复结构.如果 club.player 和 clubplayer.name 为频繁 pe,在模式中就没有必要单独表达前者,因为后者已经包含了逮一结构而“ 频繁的 “剜限定了模式中的 rope 必须代袁公用结构.将频繁的 mpc

13、记作 fmpe,则 OEM 图中的模式可以定义为 OEM 图中所有 fmpe 的集合.由模式发现的定义 .该问题可以自然地与发现交易数据库中的最大频繁项目集联舢一小型微型计算机系统系起来.将 OEM 看作交易数据库 D,fmpe 与最大频繁项目对应,则由 OEM 构造所有 label 的集合 T(与交易项目集合 T对应),然后采用自顶向下的生成方法,以 T 为顶点,逐层生成候选集 fmpecs,通过剪枝快速生成 fmpe.在描述模式发现算去之前 ,需要先构造 OEM 中的 D,T.2.1 构造 OEM 集古 D在如何表达集合 D 的问题上有两种选择:简单路径表达式和数据路径.最初我们倾向于使用

14、 pe,因为数据对于模式发现问题并不重要 f 但是,考虑以下情况 OEM 图中有两条数据路径 dp.=0,club,L,name,2,official,3),dp2 一O,club.1,name,2,nickname,4),郭,厶 D=c【uh.柚 me.oi-ca1.club.nRme.nickname),sup(club.name)一 2,而诙 pe 实际的支持度应为 L,从数据路径发现,这一错误是由于路径分支造成的,2 的子对象越多,则支持度越大.单纯分析 D 中的两条 pe,无 去区分它们的实倒是两条独立的路径还是一条路径的分支,所以最终我们还是选择 dp 构造集合 D,同对提供了函数

15、 pe(dp)将一条数据路径转换成简单路径表达式.另外,考虑半结构化数据中同一个对象有可能以不同鳍构表示(如图 1 中俱乐部的名称可以是字符串型的原子对象,也可以用元组(officiaL,nickname)表达), 我们引入符号“ 上保证模式中保留这些不同结构(当然是在这些结构都是频繁的前提下),符号 “上“代表空 E 如 pe】一 club.啮 me.officiaL,pe2 一cLubutsme,pe1 有序包古 pe:,所以 pez 不可能是 mpe,不被包含在模式集合中,如果引入符号上“,则 pe 一 club.name.offtcia1.J-,pe 一 club.name.J-,pe

16、2 不再是 peL 的有序子集,有可能成为 fmper 是 D 中所有 label 的集台,为提高模式发现的效率,将_r 按照层次排序,T 一 111“III;E1L,n 表示 oEM 图有 n 层,1 表示第层的第 j 个 labe1.例 4 根据图 L,D 一(O,club,1,啮 me,2,official,3,j,(O,dub.1,nawle.2,nickname,4,上),),TcltlblL;ntme2.,eaptaiaztplayer,stadium“officialsl,nickname?,.上 ltirst,Last2,nickname.3,L“IenglishJ,frenc

17、hjz,J-5a;上 m)I集合 D 确定后,支持度算法也随之确定.算法依据:由分支生成的多条路径,在未发生分支的一段数据路径是相同的.算珐如下,其中函数 dp(pe,D,j)返回 pe 在 Dd中的实例+lat(dp)返回数据路径的最后一个数据对象.sup(pe,D)Ofori:Lto!Dldope 是 pe(D)的有序子集 then0:last(dp(pe,Dd)L0 在 0then0=0U0)return10JJ2.2 挺式发现算法与文献4类似 ,我们以 T 作为集合枚举树的厦点 .逐屡构造 T 的子集 fmpes,即 fmpe 的候选集;首先对候选集 npets 中的每条 pe 剪枝,

18、剪枝的目的是尽早删除 pe 中的非频繁 Pe,减少支持度的计算;接着从剪枝后的 fmpecs 中寻找频繁 pe,如果有 ,则删除 fmpecs 中该频繁 pe 的子集,且该频繁pe 一定是 frcpe,因为采用自顶向下的方法最先生成 rope.模式发现的算法如下,我们利用层趺数据的特点使得 fmpees 的生成收敛得相当快 E 算法中 deLete(fmpecs,fmpecs1)表示从 fmpecs 中删除元素 fmpees0,pruneO 和 genmmpecs(j分别为剪枝函数和生成 fmpecs 函数.schema-discoveryfT.D.M1NSUP)k 一 0,fmpecs:T)

19、;fmpe 一“whilefmpecsdoprune(reffmpecs,k,MINSUP,D);for 一 1tofmpeesdoif(IfmpecsjIk)thenfmpe=fmpeUfmpecsOdelete(fmpecs,fmpecs1)1elseIf(sup(fmpeesi,D)MINSUP)thenfmpe=fmpeUfmpecsidelete(fmpecs,frnpecEi3)-;fmpecsgenfmpec(fmpecs,k);kk+L:)删除 fmpe 中的非 napeIreturnfmpeI)fmpecs 生成算法第 k+1 次的 fmpecs 由第 k 次的 fmpecs

20、 所生成.对任意pempecs,pe 具有如下形式:pePLUP?UUP.其中 p1为 pe 第 i 层所有元素组成的集合,n 为 pe 潜在的最大层数,当算法在进行第 k+1 次搜索时,则表明 pe 柏前 k 层已经被搜索过,此时,对任意 ik+1 都有 1P.i=】_由于层次关系,两层的 label 不会出现在一条简单路径中.所以在生皮下一状的候选集 fmpecs 时,我们从 pe 的第 k+1 层中取出一个元素来生成,因而对任意一个 pefmpecs 生成 k+1 改 pe.的方馥如下:pe 一 PUP2UUmUa)UPLUUP,+,如果元素 a 为上“, 衷示其后不可能跟有路径.所过时

21、应该腊除 k+1 后的所有元素,即 pe 一 PUpUUPU(a).对所有的 pefmpecs 进行上述操作,生成下一次的pees,算法描述如下;genfmpecs(fmpees.k)cs 一fori 一 1toIfmpecsI1 期刘芳等:半结构化,层次数据的模式发现riak=left(fmpecsEl3,k)/取集合 fmpees的前 k 十元素if(Jmk+II 一 0)thenfmpecsi一 kelseif(I+LI 一 1andmkl1mpecs1)一 mkUm+1(1)I1=afa frapecsEi3,level(a)=k+1)/将 fmpecsEi)P 第 k+1 层的元素

22、)放皿+ 图 2 和圈 3 分别为 MINSUP 一 1 和 2 时?根据母 i 由模m:fmpecsi一皿一 +1 式发现算法得出的模式.t4,支持度等于 1 时,得到的模式包fo,11t0I一 f 古了愿图的所有结构 .包含“j- 的对象表示谚对象有一十原Ifmj一 j_“then 子值.cSelse(mmkUmk10UmhCSUm)剪枝算法对于简单路径表达式有如下性质:性质 1:如果 pe 是非频繁的耶么任何包含 pe 的简单路径表达式都是非顿繁的.例如在 OEM 圈中.如果不存在 peclub.player.stadium,则显然 ctuh.player.stadium./1a.ne 也一定不存在.剪枝算法主要基于性质 1 和要发现的模式具有分层的特点对任意 pe fmpecs,pepUP2UUP.?其中 pl 为 pe第-层所有元素组成的集合,n 为 pe 潜在的最大层数 ,由于模式具有分层的特点,因而.在第 k 敬控索过程中我们只需要计算 I】 e 中前 k+1 层元素所组成的路径表达式:pePtUPUUPUa1 的支持度,aP1.如果 sup(plUPUUmUa)MINSUP.则把 a 从 pl 一 1 中删除,如果 I+1l=1而且其唯一的元素为 j-“,则表明 pe 已到了最底端.其后不可能再有路径.此对要把 pe 中一-后的所有元素删除 .算法描述如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报