论文部分内容阅读
目前科技部查重工作需要进行比对的文件规模巨大,经统计每年的各类申报材料达近十万篇,字数可达几千万字且数据规模逐年增加,因此传统的单机处理系统无法满足条件。本系统采用了云计算的分布式存储的优势将大量的文本数据存储到云平台上,再借助云平台并行计算的高效性将海量文本查重工作得以快速实现。在文本上进行精确的子串查询是工业界和学术界中的一个常见应用,同时也是子串近似匹配的一个基础操作。这种方式虽然简便且直观,但是得出的结果有一定局限性。例如,通常两段看似重复的文字,用上述字符匹配的方式并不一定能查出,因为大多是加上一些无意义的“停止词”(Stopwords)或者将主谓宾顺序颠倒等方式来规避这些查重系统的检测,所以传统方法在查全率方面受到了极大挑战。通过分词方法去掉一些停止词或虚词是目前逐渐被采用的主流方法。在这种方法下,如何合理的分段和分词成为提高查全率和查准率需要解决的关键问题。目前用的比较多的是按句分词比对的方式,由于句子长短不一,大部分比较出来的结果在实际中作用不大,却会对整体相似比有较大影响。本文在利用分词手段的基础上,提出了 一种构造矩阵模型的比对算法和矩阵扫描的策略,使得传统的对文本的比对操作转换成对矩阵的扫描分析工作。利用MapReduce实现了对算法的整合,并利用其高效并行计算的特点进行对算法处理能力的优化和提高,并探讨了与快速精确字符串匹配算法的优势之处。在此基础上,设计并实现了 一套基于Hadoop的分布式文本查重系统,该系统已在科技项目文本查重中得到了应用,本课题采用的矩阵模型分析文本片段的研究方式和分布式系统的流程设计与实现对此类问题的研究和发展有一定的启发和实用价值。