欢迎来到天天文库
浏览记录
ID:31363444
大小:117.50 KB
页数:11页
时间:2019-01-09
《一种基于mapreduce的改进文本输入方式的并行分词方法研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、一种基于MapReduce的改进文本输入方式的并行分词方法研究 摘要:中文分词方法都属于串行分词方法,不能处理海量数据。提出一种基于MapReduce的并行分词方法。Mapreduce编程模型默认使用TextInputFormat文本输入方式,该方式不适合处理大量文本文件。首先基于CombineFileInputFormat父类,自定义文本输入方式MyInputFormat,并在实现createRecordReader方法过程中返回RecordReader对象。其次自定义MyRecordReader类来说明读取文本键值对的具体逻辑。最后自定义MapReduce函数实
2、现不同类别文本的分词结果。实验证明,基于改进后的MyInputFormat文本输入方式比默认的TextInputFormat输入方式,更能处理大量文本文件。 关键词:MapReduc;分片;TextInputFormat;CombineFileInputFormat 中图分类号:TP311文献标识码:A文章编号:1009-3044(2016)22-0171-05 Abstract:Methodofwordsegmentationisaserialprocessanditfailstodealwithbigdata.Weputforwardaparallelwor
3、dsegmentationbasedonMapReduce.TextInputFormatisthedefaultinputclasswhenpreprocessingintheprogrammingmodelofMapreduce,whileitfailstoprocessdatasetswhichismadeupofmanysmall11files.Firstly,wedefineanewclassnamedMyInputFormatbasedontheclassofCombineFileInputFormat,andreturnanobjectofRecordR
4、eaderclass.Secondly,wedeclareMyRecordReaderclass,bywhichcanwewriteanewlogicmethodtoreadandsplittheoriginaldatatopairswhenimplementingthecreateRecordReadermethod.Last,wedefineourownmapreducefunction,bywhichcanwegetthefinalsegmentationresultsofdifferentcategories.Theexperimentalresultsind
5、icatethat,comparedwiththedefaultTextInputFormat,MyInputFormatsavesmuchtimetosegmentthetext. Keywords:MapReduce;split;TextInputFormat;CombineFileInputFormat 中文分词是中文文本处理的基础,具有十分重要的理论和应用意义[1]。目前中文分词算法主要有3类:基于词典的分词方法,基于概率的分词方法和基于人工智能的分词方法。国内一些大的科研机构都对中文分词做了研究工作,比如,北京航空航天大学计算机系于设计实现CDWS中文分
6、词系统[2],中国科学院组织开发了基于多层隐马尔科夫模型ICTCLAS分词系统[2]。国外成熟的中文分词工具包是IKAnalyzer,它是一个开源基于JAVA语言的轻量级的中文分词第三方工具包[3],采用了特有的“正向迭代最细粒度切分算法”11,支持细粒度和智能分词两种切分模式。IKAnalyzer是以开源项目Lucene[4]为应用主体的,结合词典分词和文法分析算法的中文分词组件。Lucene是Apache基金会下的一个非常优秀的全文检索工具软件包,它可以嵌入在Java系统中,通过建立倒排链表结构,建立索引实现信息检索,具有高性能、可扩展的特点。 但是这些分词方法
7、都是传统的串行分词方法,不足以处理海量数据,例如微博数据[5],它是一种社会化媒体,包含了丰富的特征信息,具有规模大、实时性强、内容口语化、特征属性多和噪声大等特征[6]。 由Google实验室提出的Mapreduce并行分布式计算模型主要针对海量数据的处理,它能组织集群来处理大规模数据集,成为云计算平台主流的并行数据处理模型[7-8]。本文基于Mapreduce框架,通过结合使用IKAnalyzer和Lucene实现并行分词。 Mapreduce框架中默认使用TextInputFormat文本输入方式[8],该方式的对行文本的切分方法不适合处理
此文档下载收益归作者所有