第36卷第3期合月巴工业大学学报(自然科学版)Vol. 36 2013年3月]OURNAL OF HEFEI UNlVERSITY OF TECHNOLOGY Mar. 2013 Doi:lO. 3969/j. issn. 1003-5060. 2013. 03. 012 面向领域的Web文本结构化分析杨春磊,刘念唐,林雨,邵莹(合肥工业大学计算机与信息学院,安徽合肥230009) 摘要:为了充分利用领域特征进行Web文本的结构化分析,文章提出了一种面向领域的Web文本结掏化分析方法。该方法以领域特征为基础,依据半结构化文本的结构特征和Html文本的层次特性构造Html树;利用本体论的相关思想和方法构建领域本体,从Html树中提取有价值的信息;并结合通用词库和领域词库进行结构化分析。实验结果表明,该方法能够很好地实现Web文本的结构化分析。关键词:领域特征;Web文本;结构化分析;半结构化文本;领域本体中图分类号:TP311 文献标志码:A文章编号:l003-5060(Z013}03-0309-06Domain-oriented structured analysis of Web texts YANG Chun-lei, LIU Nian-tang, LIN Yu, SHAO Kun CSchool of Computer and Information, Hefei University of Technology, Hefei 230009, China) Abstract: In order to take ful1 use of the domain feature during the structured analysis of Web texts, a domain-oriented structured analysis method of Web texts is proposed. Based on the domain feature, this method first accords to the structural characteristic of the semi-structured text and the level char›acteristic of Html text to construct the Html tree. And then this method uses the related methods and thoughts of ontology to build the domain ontology, and extracts valuable information from the Html tree. Final1y it combines with the general dictionary and the domain dictionary to accomplish the structured analysis. The experimental results show that this method is able to achieve the structured analysis of Web texts. Key WOI由:domain feature; Web text; structured analysis; semi-structured text; domain ontology 格式没有具体的限制,书写比较随意,因而对这些o ~I 领域内的文本进行处理(如自动文摘、文本分块、随着计算机的普及和Internet的迅速发展,结构化分析及文本特征提取等)是十分困难的。Web已经成为十分重要的信息存储介质和资源相对来说,在另外一些领域(如招聘信息、招投标库,从Web上获取有价值的信息[1-6J已成为近年公告、通知产品说明书等)内,文本结构和格式有来学者们研究的重点。一定的要求和限制,书写相对比较规范,从而便于目前进行的信息抽取一般是从自然语言文本j进行文本结构化分析、关键信息提取等操作,本文CNatural Language Text,简称NLT)[7-9J中或者研究的立足点是这些领域内的NLT所对应的从Web文档[10-11J中提取用户感兴趣的信息。在Web文本。一些领域(如新闻报刊、博客、论坛及文学传记等)在自动化或半自动化Web数据抽取方面,国内,自然语言文本没有一个相对统一的结构,文档内外研究学者做了很多研究,也取得了比较大的收稿日期:2012-08-22;修回日期:2012-11-23基金项目:国家自然科学基金资助项目C60975033;60575035;60275022)作者简介:杨春磊(1988一),男,安徽蒙城人,合肥工业大学硕士生;邵垄(1967→),男,安徽寿县人,博士,合肥工业大学副教授,硕士生导师.
310 合肥工业大学学报(自然科学版)第36卷成绩。现有的方法和模型在不同的侧重点上解决陷导致应用程序无法直接解析并利用Html文了Web信息抽取中所遇到的问题,推动了Web档。在实际应用中,一般将Html文档转换成树形结构[以充分利用Html文档的结构特性,信息抽取技术的发展。按照人工参与程度的不同,传统Web信息抽取方法可以分为半自动(交常见的树形结构有Html树、XML树和DOM互)生成抽取规则的方法白.12J和自动生成抽取规树。其中构造XML树和OOM树的前提是Html语言必须符合W3C标准[lJ由于W3C标准则的方法川.1OJ交互生成抽取规则的方法能够只是推荐标准而非强制标准,事实上,受网站开发在人工参与的情况下准确提取需要的信息,但这者主观因素的影响,严格符合标准的Html文档种方法过度依赖于网页结构,通用性有限,一旦网是很少的。而采用Html树的方法则比较灵活,页结构发生变化或应用到别的网站就需要人工的不局限于严格的标准,因而本文针对Html文档再次参与。自动的方法虽然通用性较好,不局限构建Html树,以结合Html文档和SST的结构于具体的网页,但稳定性和准确度不高。特性进行结构化分析。总的来说,现有的方法和模型主要存在如下 清洗问题:①过多依赖网站的具体架构,通用性不强;Html文档的主要信息、包含在Html标签中,②没有充分利用Html语言的结构特'性;③很少Html标签包含的内容既有有价值的信息,也有利用到NLT所具有的领域特征和结构化特征;"冗余信息"。常见"冗余信息"主要有以下几类标④进行信息抽取的过程中,很少涉及对文本进行签:①内容为空的标签;②多媒体资源标签;结构化分析。③注释、脚本语言、命名空间、辅助标签、格式标针对以上问题,本文提出一种面向领域的签、&.nbsp、(br/)等标签z④用户交互标签;⑤类Web文本结构化分析方法,该方法结合了Html型为hidden的标签;⑤超链标签。语言和NLT所具有的结构化特征及NLT所具定义1可删除标签元素集合DELELEM有的领域特征,利用本体论的相关概念构造出为:DELELEM = {elem I elem matches the types Web文本结构化分析模型,本文方法的主要工作(1 ~ 5) defined above. }。流程如图1所示。本文方法提供了一种网页结构这些"冗余信息"的存在使得依据Html文档无关性及用户友好型的Web文本结构化分析构建的Html树非常雕肿,并且这些"冗余信息"模型。对Web文本的结构化工作会产生很大的干扰。因此,在构建Html树时,必须将这些"冗余信息"剔除掉,以达到简化Html树,提高Web文本结构化精度的目的。对Html文档的清洗方法为:困1工作流程//清洗Html文本中的冗余标签节点CLEANHtmlCHtmlElement elem)/ /从html标签开始调用for each SubElem curElem in elem’s SubElem list 1 Web文本清洗及Html树构造do if curElem in DELELEM then deleteAllCcurElem) 半结构化文本(Semi-StructuredText,简称else ifCcurElem is leafElem) SST)指一类特殊的自然语言文本,这类文本的结then if curElem’s content is null then deleteC curElem) 构和表达形式较为规范,常见的有招聘广告、简历else if all of curElem’s SubElem is superlinkElem 信,由、招投标信息、产品信息及技术文档等。SSTthen deleteAll(curElem) 格或单一、结构性强、内容覆盖面集中、语句简短else for each SubElem subElem in urElem 自由。本文提出的Web文本结构化分析方法正do CLEANHtml CsubElem) 是针对这种SST所对应的Web文本。CLEANELEM CcurElem) Web上的数据大部分以Html页面的形式呈//对递归返回的标签节点进行剪枝处理现给用户。Html语言存在如下缺陷[叫:①HtCLEANELEM(HtmlElement elem) ml的标签只是便于浏览器加载,缺乏对数据的描if ISNEEOCLEAN Celem) 述;②Html标签不含清晰的语义信息。这些缺then delete (elem’s SubElem)
第3期杨春磊,等:面向领域的Web文本结构化分析311 else if elem is leafElem and elem’c ontent is null 中,被Html标签分割的NLT各个部分之间的结then deleteC elem) 构特征、相对位置和内容并没有改变,很好地保护了SST的原有特性和Html文档的层次特征。//判断该标签是否需要剪枝同时Html树中的叶子节点分布非常集中,不含ISNEEOCLEANCHtmlElement elem) if elem’SubNum is 1 冗余文本信息,便于后续的结构化分析。then HtmlElement subElem=elem’SubElem 2 结构化分析if subElem’s SubNum is 1 then return true 根据SST的结构化特性,本文采用本体论的retum false 相关理论对Web文本进行结构化分析。其中,SubElem为当前标签节点的子标签节点;定义2领域本体用三元关系组<D,C,R>来SubNum为当前节点的SubElem数目;leafElem 表示,其中,D表示领域;C表示该领域D中的概为叶子标签(即SubElem为空的标签节点);su›念集合;R表示各个概念之间的关联关系,R通过perlinkElem为超链标签;delete (e1em)删除elem三元组队,Cz,r>来表示,其中CjεC,CzεC,r表标签节点,并同时将e1em的子标签节点(如果el示Cj和Cz之间的关系名称。em的SubElem不为空的话)提升为elem的父标定义3领域本体内的概念集合C可以用三签节点的子标签,并修改elem父标签节点的元组<C,T[C;] ,F[C;] >来表示,其中T[C;]表示SubNum值;deleteAll (elem)为将elem标签节点该领域内概念G的同义词集合。及其所有子孙标签节点全部删除,并修改e1em父定义4概念C的属性集合表示为F[C;]= 标签的SubNum值。{f} ,F[C;]的每个属性f可以通过二元关系组经过清洗的Html文档结构比较简洁,层次(T[C•刀,a[C fJ)来表示,其中T[C fJ表i ii比较清晰,内容比较集中,所含的冗余信息较少。示概念C的属性f的同义词集合;a[Ci fJ表示 构造Html树概念C的属性是否为原子属性。if为了突出并且强化Html文档的层次性特对于领域本体,可以采用XML方式来描述,征,本文对经过清洗的Html文档采用下述方法XML方式为:构造一棵左右有序的结构树,如图2所示。(Ontology) //构建HtmlTree(Domain) BUILDHtmlTREE(HtmlElement html) (Concept) / /概念信息BUILDTREEChtml, head) (Name) <!Name) / /概念名称BUILDTREE Chtml,body) (T)(/T) //概念同义词( Attribute) //构建子树(Name) <!Name) / /属性名称BUILDTREE CHtmlElement parElem,HtmlElement subElem) (T)<!T) / /属性的同义词insert subElem as parElem’s next child (m)(/m) //是否为原子属性if subElem is not leafElem //是否要对该属性内容进行分词then for each SubElem elem in subElem’s SubElem list (Segmentation) (/Segmentation) do BUILDTREE CsubElem,elem) (SubAttr) (Name) <!Name) / /子属性名称(T)<!T) / /子属性的同义词(Segmentation) (/Segmentation) <!SubAttr) (/A ttribute) <!Concept) G) (/Dornain) 圈2HTM树<!Ontology) 本文在对本体中的领域、概念及属性进行构图2中矩形节点为中间节点,椭圆节点为叶建时,提出以下3条启发式原则:节点。在由Html文本转换到Html树的过程
合肥工业大学学报(自然科学版)第36卷312 (1)进行领域划分时,尽可能地细分领域。词语。(2)向领域本体中添加概念时,尽可能地多为了使这些词在需要时能够被正确切分,在不需要时又不影响其他词语的切分,本文引人领构造概念,以实现对该领域的覆盖。(3)对概念添加属性时,只为有必要的概念域词库,将该领域内领域特征比较明显的词添加到该领域所对应的领域词库中。引人领域词库使添加属性。构造领域本体时,领域专家进行领域划分及得该领域内的词语能够集中到该领域词库中,从概念构造;概念属性由用户在使用时于工添加,这而在文本结构化分析时能够提高分词的精度。样做既可以增加领域本体的灵活性,满足用户的并非所有的词都必须划分到具体的领域词库不同需求,也可以降低构造领域本体的复杂度。中,通用词库也是十分必要的。以下几种情况的 领域识别词应保留在通用词库中:①不具有领域特征或者领域概念集合中的概念都是该领域所特有领域特征比较弱的词,它们无法被限定在某一个的、具有很强领域特征的一些词组或短语。比如或某几个特定的领域内;②领域共性较强的词,招投标领域内的招标公告、中标公告及采购公告表现为该词同时交叉出现于多个领域词库中;等概念,电力领域内的电力公司、发电机组及风电③已被用作常用词或专有名词的词。场等概念。任一领域概念集合中的概念都是只属本文将词库划分为通用词库和领域词库,在于该领域,具有领域唯-性,故而可以根据文本中结构化分析时,根据文本所涉及的领域加载对应出现的概念来确定该文本所涉及惨的领域,也即的领域词库及通用词库对文本进行分析,生成结领域识别。构化的文档。对于某一SST,当涉及惨多个领域时(即出2. 3 结构化分析现了领域交叉的现象),对文本进行领域识别就可对Web文本进行结构化分析就是对该文本以确定该文本涉及的领域,以便正确加载领域词的主概念所对应的属性值进行分析,即对Html库对SST进行分析。领域识别的步骤如下:树的叶子节点中提取的属性值进行分析。由于用(1)主领域识别。用户在有针对性地对某一户有针对性地对某一类Web文本进行结构化分类Web文本进行结构化分析时,就已确定了该类析时就已经确定了该类文本的主概念,用户在进文本的主领域和主概念。如对一批招标网站下的行结构化分析前,向主概念的属性集合中添加需招标公告Web文本进行结构化分析时,主领域为要提取的属性及其同义词,同时设置各属性的招投标领域,主概念为招标公告。Segmentation值为true或false表示是否对该属(2)从领域识别。从领域指文本涉及的主领性进行分词,以确定结构化分析的粒度。对于文域外的其他领域。从概念指除主概念外的其他概本中出现了而用户没添加及用户添加了而文本中念。在SST中,标题→般都是对该文的高度概没出现的属性均不做提取。括,因而结合概念集合对标题进行分析,确定标题在Html树中,文本信息都保存在叶子节点中包含的所有从概念,就可以识别出所有从领域。上。由于Html树每个叶子节点所对应的文本信对文本标题进行领域识别确定该文本涉及的息可能仅包含一个"属性-值"对,也可能包含多个领域后,在进行结构化分析时可通过加载相应的"属性-值"对,甚至有的属性和值分别保存在左右领域词库以提高结构化分析的精度。相邻的叶子节点上,因而要对叶子节点所包含的2. 2 词库划分文本进行结构化分析,必须先提取出主概念所对在使用非统计方法进行文本结构化分析时,应的"属性-值"对,然后对各属性的值结合通用词必然涉及分词及词库的构建,本文将词库划分为库和领域词库进行分析处理,将结果保存为结构通用词库和领域词库(即细胞词库)。某些词语具化数据。有很强的领域特征,在具体的领域内能够组合成对于如图2所示的Html树,采用深度优先词,而一旦脱离该领域就不能组合成词语,如某招搜索方式从body节点进入进行结构化分析的过标公告中包括"聚丙烯波纹管"、"直线井"、"转角程描述为:井"、"三通井"、"调整井"等词语。这些领域特征//对Html树进行结构化分析很明显的词在所属领域内可以被划分为词语,并STRUCTURALANALY SIS(html) 且使用比较频繁,而在其他领域中却可能不是INITSTA CK (Stack)
第3期杨春磊,等:面向领域的Web文本结构化分析313 INITLIST(List) PROINTA TTRIBUTE( Attribute attr) PROELE扣1Cbody)if attr. Segmentation is false then AddList(attr) ((对节点进行分析else AnalysisCattr) PROELEM(HtmlElem elem) 其中,INITSTA CK CS tack)表示初始化节点战if elem is null Stack为空;INITLIST CL ist)表示初始化结果链then retum List 表List为空;push Ce lem)表示将节点elem放入else if elem is leafElem 节点椅Stack;SinAttribute表示单值属性;Muthen PROLEAFELE岛f(elem)else lAttribute表示多值属'性;IntAttribute表示用户push(elem) 感兴趣属性;AddList(attr)表示将属性attr及其for each HtmlElem s in elem’s SubElem 值添加到List链表中;AnalysisCattr)表示对属性do PROELEM(elem) attr的值进行分词,并对分词结果进行语义分析,pop 而后再将该属性名称及其值的分析结果存入if Stack is null List。then return List 最终将List中的信息按需要的表示形式重((对叶子节点进行分析新组织并保存为结构化数据,即为结构化分析PROLEAFELE如f(HtmlElemelem) 结果。elem. content as Attribute attribute if attribute is SinAttribute 3 实验结果分析then if attribute is IntAttribute 本文采用的通用词库和领域词库分别来自搜then PROINTATTRIBUTE(attribute) 狗标准词库和搜狗细胞词库,分词系统采用中国else if attribute is MulAttribute for each Attribute attr in attribute 科学院计算所的ICTCLAS分词系统。do if attr is IntAttribute 本文以招技标网站下网页的Web文本进行then PROINTA TTRIBUTE( attr) 结构化分析实验,采用本文方法对部分网站的页面进行结构化分析的结果见表1所列。((对用户感兴趣属性进行分析表1部分网站页面的结构化分析结果引人领域词库仅采用通用词库选取Web'编号Web站点页面数目AEP(% 页面数SAP(% 页面数SAP(% 1 100 64 36 2 100 83 17 63. 35 3 http:(( 100 61 71. 25 39 4 http://zb. yiyiu. com 100 89. 16 84 16 44. 64 5 http:!( 100 48 73. 67 52 53. 15 6 100 53 87. 13 47 75. 30 7 http:(( lOO 46 54 51. 96 8 100 63 77. 23 37 51. 08 9 http:/( 100 57 43 10 http:/( 100 73 76. 73 27 11 100 41 59 58. 76 12 http:(( 100 93. 70 78 22 用AEPCAttributesExtraction Precision)表SAP = (~Q;/n)X 100% (2) 示属性提取准确率,SAP CS tructural Analysis 其中,n为实验选取的某站点页面数目;Precision)表示结构化分析准确率。AEP和SAP的计算公式分别为:P一实际提取的信息点数目x100% Z一本页应提取的信息点数目/\ÁVV川AEP = (~P;/n)X 100% (1) Q一结构化分析达标信息数目X100% z一本页结构化分析信息数目/,~VV
314 合肥工业大学学报(自然科学版)第36卷上述实验结果中引人领域词库和未引人领域词库的SAP如图3所示,由图3可以看出,领域[参考文献]词库对结构化分析准确率的影响很大。[1J 李效东,顾毓清.基于∞M的Web信息、提取[1].计算机学报.(5): 526-533. l∞ 通用词库和领域词库[2J周明建,高济,李飞.基于本体论的Web信息抽取[ 计算机辅助设计与图形学学报.(4): 535-541. 间=更正1、f飞--,n[3J Alani K,Millard D al. Automatic ontology›需60U古z 刀、、百叭H飞/J:Jbased knowledge extraction from Web documents[J]. IEEE 40 通用词库Intelligent .18(1): 14一21.[4J Kayed K F. A survey of Web informa 20 ti口nextraction systems[J]. IEEE Transactions on Knowl 。edge and Data (10): 1411一 5 7 9 11 13 网站编号<5JGottlob G. Koch C. Monadic datalog and the expressive 图3引入领域词库和未引入领域词库的SAPpower of languages for web information extraction [J]. lournal of the . 51(1): 74一113.从表1可以看出,本文采用构建领域本体的[6J李毅,王浩,杨静.基于语义相似度的Web文档聚类算法[JJ.合肥工业大学学报z自然科学版.(12): 方法能够很好地从Web文本中提取出概念对应1846一1850.的属性信息,即设置较大的结构化粒度时,能够取[7J林鸿飞,战学刚,姚天顺.基于概念的文本结构分析方法得较为准确的结果。若设置较小的结构化的粒[1].计算机研究与发展.(3):324-328. 度,则对提取出的属性结合通用词库和领域词库[8J 王海涛,曹存根,高颖.基于领域本体的半结构化文本知进行结构化分析,从引入领域词库的SAP值可以识自动获取方法的设计和实现[J].计算机学报.(12): 2010-2018. 看出,设置较小的结构化粒度,依然能够取得较为[9J 陈文亮,朱靖波,朱慕华,等.基于领域词典的文本特征表示准确的结果,并且各个网站的AEP值和引人领域口].计算机研究与发展.(12):2155二2160.词库的SAP值均取得较好的表现,具有一定的通口。JChang C H. Hsu C N. Lui S C. Automatic i巾口nationext 用性。实验结果表明采用本文的方法能够较好地raction from semi-structured Web pages by pattern discov 实现对Web文本的结构化分析,并且具有一定的ery[J]. Decision Support (1): 129-147. [l1J Vadrevu S. Gelgi F, Davulcu H. Information extraction 通用性。from Web pages using presentation regularities and domain 4 结束语knowledge[JJ. World Wide Web-Internet and Web Infor›mation .10(2): 157-179. 本文提出了面向领域的Web文本结构化分[12J高军,王腾蚊,杨冬青,等.基于臼ltology的Web内容三析方法,该方法利用SST和Html文本的结构特阶段半自动提取方法口J.计算机学报.2004,27c:n: 310-318. 性,结合领域本体和领域词库,很好地实现对SST对应的Web文本的结构化分析。该方法具(责任编辑同杏丽)有网页结构无关性及领域内的通用性。