- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于重复词句提取的两种算法分析
关于重复词句提取的两种算法分析 (桂林电子科技大学计算机学院,广西桂林541004) 摘要:文章介绍了两种用来发现重复词句的算法——基于后缀树的方法和基于倒排索引的方法。 关键词:重复词句;重复序列;后缀树;算法;比较 中图分类号:TP391.1文献标识码:A文章编号:1007—6921(XX)01—0073—05 重复词句,有时指字段、短语、搭配等的重复或同现,有时是指重复序列、重复语句、同现的字句、或重复排列等,它是在一篇文本或文集中出现超过两次的字序列。文本中所有的字都考虑或者通过stoplist忽略文中某些词,都是随着具体实现而定。一般而言,我们可把某些词看作特定符号来标记。这样,重复字句的符号标记就和原始文本中的样式一样。重复及相似内容的识别在信息处理领域中,在利用计算机处理文本信息时,都是个比较重要的研究课题,它还广泛应用于防抄袭识别、新闻网页去重、自动分类、搜索引擎等系统中。就一般意义而言,重复字段的抽取和实现是涉及和涵盖了计算语言学和文本挖掘的范围。它们对聚类、分类、主题发现和其他机器学习和人工智能技术等都有着重要意义。近年来更广泛的应用于字符串处理,DNA序列比对,文本聚类,XML结构索引等领域中。1后缀树 后缀树是一个数据结构,把文档看作是一个由若干短语组成的字符串,而不是看作一组词集〔1〕。一般算法中用来找出重复语句的传统ST结构都类似于Zamir〔4〕中阐述的结构。在最简单的版本中,后缀树算法创建了一个树型结构,每个后缀树的节点,表示一个词并且根节点为空。这样每个从根节点出发的路径表示了一个语句,这个语句中的字词是由路径遍历的相应的代表各个字词的结点来标识。后缀树是一个有根树,也是一个有向树。例如,用下列语句来生成一个后缀树结构。 “candrivetruckssafely.Mendrivecarssafely.Mencandrivetrucks.” 确定树的最大深度m=3。下图1中所示的就是这种方法生成的后缀树结构。 740)this.width=740border=undefined 当生成了树形结构后,获得一个单一重复语句的最简单方法是用递归方法从根节点遍历到叶节点。如果使用非递归执行来获得语句,那将是一个相对复杂的过程并且在相同复杂度的情况下它不能保证我们能得到更好的效率,因为它取决于目前的编译执行器的执行效率。 一般的,在后缀树最外层描述一个句子的最后一个词的节点中常给出一个句子出现的频率。在一个代表特定语句的节点集合中,这个节点常常位于一个后缀树结构的底层,这里我们常把根节点作为一棵树的顶层。1.1ST算法执行中的一个细节描述 ST算法执行的伪代码如下列图2所示。我们同时指出了每一步的时间复杂度。 首先,一个输入文集被存储在分表中,以一种方式使得特定的词被连续存储,并且句子或由标点分开的连续句子在空间上也被划界。 接下来生成一个根节点。这个根节点的特殊性在于它不能指向任何一个字词。然后分表的第一个位置的词被读出,并被添加到有关键码值的哈希表中,使用哈希表是用来加快存储字句的存取。 CreatearootnodeofST-structure;O(1) While(inputisnotempty){ Clearparentlist;O(N) While(getnextinputword!=sentencedelimiter){ Addwordtohashtable;O(N) Addwordtonodetorootnode;O(N) Addreferencetoparentlist;O(N) Foreachnodefromparentlist(exceptthelastoneadded){ Addwordnodetocurrentnode;O(N*m) Addreferencetoparentlist;O(N*m) Removecurrentlyprocessednodefromparentlist;O(N*m)}}}{ TraversecreatedST-structurerecursivelytoobtainST-phrasesO(N)} 740)this.width=740border=undefined 每个后缀树节点表示输入文集的一个字词,并且它们平行生成一个对应哈希表的接口。这样如果在一个后缀树中更深层的节点是重复的话,我们能减少总的存储空间。节点同样包含了信息,比如这个语句在输入文集中出现的次数,并且它提供了一个关于子节点的列表。 如果一个字词,在分表中被读出并写入到哈希表中,根节点应检测:当它是一个父节点时它是否包含一个节点表示当前的字词。如果它是这样一个
您可能关注的文档
最近下载
- 型钢悬挑卸料平台监理实施细则.doc VIP
- 2025版最新建设工程强制性条文汇编.pdf VIP
- (高清版)DG∕TJ 08-2105-2022 行道树栽植与养护技术标准.pdf VIP
- 无人机组装与调试:多旋翼无人机飞控系统组装调试PPT教学课件.pptx VIP
- 检验检测机构资质认定质量手册和程序文件(质量记录表格汇编).doc VIP
- 建筑机电安装培训.pptx VIP
- 初三物理课件第十六章 3节 电阻课件初三物理课件第十六章 第3节 电阻课件.ppt VIP
- 低空经济产业园招商引资与项目管理.docx VIP
- 燃气经营安全重大隐患判定标准课件.pptx VIP
- 2025年学校基孔肯雅热防控工作预案(精选模板).docx
文档评论(0)