论文部分内容阅读
相似重复记录的有效检测是保证数据质量的关键,也是获取可靠决策知识的重要保障。随着智能化应用系统的广泛普及,数据规模呈指数级增长,并且在这快速增长的大规模数据中,大部分相似重复数据以文本形式存在。因此,大数据环境下文本数据相似重复记录的有效检测对提高数据质量具有重要意义。本文将文本数据相似重复记录的检测转换为对其二进制串相似重复性的检测,传统Simhash算法可实现该功能,但存在文本数据记录与Simhash指纹(二进制串)的转换精度低以及Simhash指纹相似度匹配效率不高的问题。因此,本文首先引入基于内维尔插值算法的缺失数据填补方法对原数据中的缺失数据进行填补,接着利用汉语词法分析系统对已填补的数据记录进行关键词提取,并采用词频-逆文档频率算法计算关键词的权重,从而提高文本数据记录与Simhash指纹的转换精度。其次,设计基于图聚类分析的指纹分类策略,并引入海明距离,解决指纹相似度匹配效率不高的问题。最后,基于对Simhash的改进提出相似重复记录检测算法(SRDA,Similar Repeat Detection Algorithm),实现文本数据记录与Simhash指纹的转换以及文本数据相似重复记录的检测。大数据环境下的文本数据规模庞大,单机计算资源难以满足其处理要求。因此,针对大规模文本数据相似重复记录检测问题,提出基于MapReduce模型的文本数据相似重复记录检测方法。首先,设计基于狄利克雷抽屉原理的Simhash指纹倒排索引算法。其次,利用该算法对文本数据相似重复记录检测算法SRDA进行优化,避免在相似重复记录检测中对Simhash指纹每“比特位”的依次比较。最后,基于MapReduce模型对优化后的算法进行并行化设计,实现大规模文本数据相似重复记录的并行检测。大数据环境下的文本数据产生速度快,需要响应性高的处理技术,而MapReduce相对Spark虽具有高吞吐量的优势,但其运行速度相对缓慢。为此,针对文本数据相似重复记录的快速检测问题,提出基于Spark的文本数据相似重复记录检测方法。首先,鉴于Spark内存计算的优势,设计基于图论的Simhash指纹搜索策略。然后,结合SRDA设计相似重复记录检测算法,并在Spark上设计实现该算法,完成文本数据相似重复记录的快速检测。利用本文提出的方法对来自UCI的数据进行实验对比分析,实验结果表明,本文所提出的方法能够准确、客观的实现大数据环境下文本数据相似重复记录的检测,并具有较高的检测精度、召回率和执行效率,能为数据清洗的研究工作提供一定的参考。