论文部分内容阅读
随着互联网行业的迅速发展,数据呈现指数幂级增长。虽然数据量庞大,但是数据杂乱无章,海量数据不能很好的被分类造成潜在的信息不能被挖掘从而使我们面对海量数据有种信息发达知识匮乏的感觉。文本分类作为数据挖掘和信息检索领域的基础,能够对杂乱无章的数据进行合理的分类。文本分类面对较小的数据集分类性能良好,但是面对海量的数据集,传统的用串行方式处理文本分类显得力不从心,传统的并行计算框架运用又太复杂并且得了解底层细节。近几年,开源的分布式平台Hadoop发展迅速,提供了简单的并行编程框架MapReduce和分布式存储系统HDFS,使得海量数据的存储和处理效率越来越高。所以面对海量数据的分类问题,Hadoop的出现为科研工作者带来了新的解决方法,即基于Hadoop研究文本分类的并行化。单机环境下进行文本分类的过程中发现文本分类的各个阶段所使用的方法对最后的文本分类性能有着决定性的影响。尤其是特征选择阶段对文本分类性能影响很大,通常情况下是使用一个评估函数对特征项进行统计评估值排序后选择较大评估值的特征项。通过对常用的几种特征选择评估函数分析,综合考虑类内、类间的关系以及各种影响特征值的因素后,提出了一种新颖的特征选择算法类别相关度(Category Correlation Degree, CCD)。为了检验该方法的性能,实验中使用了两个不同大小的数据集,分别用本文提出的特征选择算法与常用的特征选择算法对数据集进行了特征提取,分类结果显示无论在小的数据集还是大的数据集下本文提出的特征选择算法相较于实验中的几种特征选择算法在文本分类性能方面具有一定的优势。虽然本文提出的CCD方法在文本分类性能方面具有一定的优势,但是,面对大的数据集,该方法还是无法解决时间消耗和空间消耗大这个问题。面对大的数据集,不仅特征选择阶段存在上面遇到的两个问题,文本分类过程中分词、特征权重计算这些阶段同样面对计算量庞大,时间复杂度和空间复杂度高的问题。对于这些问题,本文结合了Hadoop在海量数据存储和处理方面的优势,利用MapReduce的并行编程框架和HDFS分布式存储系统对文本分类的各个阶段实现了并行化编程。最后在并行环境下对同样的数据集进行测试,结果显示相同的数据集在并行环境下不影响分类精度的情况下运行时间远远的小于单机环境。