APP下载

云计算平台上两种中文分词算法的实现对比研究

2021-04-25周寅龙广富

电脑知识与技术 2021年9期
关键词:比较云计算

周寅 龙广富

摘要:现如今,常用的中文分词算法为IKAnalyzer(简称为:IK)和ICTCLAS(简称为:IC)两种,这两种算法也可以说是如今的主流中文分词算法,为了能够更好的研究两种算法的性能,本文首先利用理论对两种算法在单机环境下的性能进行分析,而后通过Hadoop分布式文件管理系统(简称为:HDFS)、Hadoop集群和并行处理大数据集的MapReduce所共同组成的系统框架,并将算法优化后,通过开展大量的实践性实验对两种不同算法在分布式环境下对大数据集进行处理后的表现进行比较,而后得出具体的分析结果,希望能够为相关人士带来帮助。

关键词:云计算;IKAnalyzer;ICTCLAS;Hadoop;比较

中图分类号:TP3        文献标识码:A

文章编号:1009-3044(2021)09-0191-02

开放科学(资源服务)标识码(OSID):

对于中文分词法来说,该方法最初被北京航空航天大学的梁南元教授所提出,属于一种在查字典分析方法基础上的分词方法,近些年来,由于我国经济水平和社会发展的速度越来越快,中文在整个世界舞台中所占据的地位也越来越重要,并且吸引了更多学者加入中文分词法的研究中,现如今已经实现了基于多种词典和概率统计的中文分词算法,而在面对这些大量的中文信息时,必须要确保文本分词结果,在满足本身词义的基础上,尽可能延长词组长度,而现如今的中文分词算法种类非常多,但是可以将其大致分为三种,分别为基于字符串匹配的分词、基于理解的分词以及基于统计的分词,在这种情况下也出现了多种分词算法产品,比如SCWS、HTTPCWS. IKAnalyzer 2012、FudanNLP、ICTCLAS等,而这些分词算法均不能算作为开源,而考虑到虽然IKAnalyzer 2012、ICTCLAS等算法属于开源,但是这些算法却大多应用在单机环境下,考虑这一前提条件,可以将这两种算法引入到云计算平台上,进而使其能够与更多应用进行结合。

1背景

近些年来,随着科学技术水平的提升,互联网技术也得到了大范围的推广与普及,今天,人们已经步入了Web2. 0时代。由于互联网规模的扩大,互联网技术在各大平台、领域和行业中均得到了非常广泛的应用,并成为人们获取信息、交流思想的主要平台之一,同时也形成了新的“共享”互联网理念,但是,这种理念也有一定的弊端,每一个使用互联网的用户都可以利用互联网随意发布信息、传播信息,而这些信息有一部分信息是无序的、结构不完善的,从而被随意散发在互联网的每一个角落中,这些信息不仅无作用和意义,而且也非常混乱。

在如今的Internet中,大多数信息都是以文本的形式存在,这种情况下,为了可以进一步提高互联网的应用价值,则必须要在杂乱无章的文本信息中快速提取人们所需的资源。为此,本文特对如何解决这一问题进行深入研究。与此同时,大量的网络信息的井喷现象也提高了对信息处理的要求,因为传统信息处理方法无法大量处理数据,而且大多数情况下均是在单机中进行处理,所以,非常容易受到存储介质、处理器等多种客观因素的制约,在进行处理时,可能会出现信息贫乏、数据丰富这一困窘的局面。

本次研究的重点目的就是在云计算的平台下,充分分析中文分词法的利与弊,从而根据二者的优势进行权衡选择。

2分词技术的相关综述

2.1 全文搜索技术

全文检索具体指的就是利用计算机索引程序对文章内的词语进行搜索,根据不同的词语,建立对应的索引,而后直接找到该词语在文章中出现的具体次数与位置,在用户进行查询时,可以直接使用事先建立好的检索程序进行查找,完成查找后,直接将结果反馈给用户。在中文文档中,索引既可以文字,也可以是词语或词组。

分别对二者进行分析,以字为基础的传闻所言具体指的就是针对文章中的每一个字进行搜索,而后所建立的一种索引,在检索时,可以直接将词分解成为字。每一种不同的语言,字的含义也不同,比如在英文中字与词是统一的,而在中文中字和词则有很大的区别,虽然采用此方法查卷率比较高,但是准确率却无法得到保障。对于以此为基础的全文索引,具体指的就是对文章中含有的词语进行搜索,也就是以语义单位建立的一种索引,在进行检索时,需要按照词语进行检索,而且也能够直接对同一项进行处理。 然而西方文字等是按照空白签分支,所以在进行索引时,与暗字处理相似。

2.2 中文分词技术

对于中文和英文的分词方法来说,二者之间有很大的差异,在英文分词法中,一个单词指的是一个词儿,中文分词法则是以汉字作为书写单位,词语之间也没有明确的区分标记,需要采用人工方法对其进行切分。现如今,国内外有关于中文分词法的研究。主要分为以下几种,分別为正向最大匹配法、反向最大匹配方法、分词与词性标注一体化方法等。

查阅多种文献后,可以发现在如今的中文分词法中,依然存在着两个需要迫切解决的问题,第一是奇异问题,在汉语中依然存在着非常多的奇异现象,具体指的就是对几个字分词,会出现多种不同的结果。第二则是未登录词识别问题,系统应该可以对尚未登录的词语进行识别与记录,在而后再经过不断的整理后,进一步加强对未登录词语的识别能力。

3两种中文分词算法的相关概述

在汉语语言的自然处理中,一个词具有一定的原子性,而且词语也是整个汉语语言体系中最能够表达具有实际意义的最小化语素。英语语句的表达中,单词属于一种天然的分界符,与英文相比,中文自身的构词特点具有非常明显的独特性,一般情况下,中文语句的构成以字为基础,字也可以将其称为中文的基本书写单位,在句子与句子之间、段落与段落之间,通常需要采用非常规范的分界符进行分界,但是词语与词语之间却缺少规范化的分界符进行分界[1]。

1)IKAnalyzer

对于IKAnalyzer中文分词算法来说,其是在JAVA语言开源中的轻量级的中文分词第三方工具包,而后采用分析核算法中的源码,充分的说明IKJQuery Parser是对整个算法发挥支撑作用的核心类分词工具。具体而言,该算法可以利用由最大词语到最小词语层层递进的检索方式,对关键词进行搜索,经过相关的实验研究结果表明,该方法的最大验证速度可以达到8w字每秒,但是因为该算法是在JAVA语言编写的基础上而形成的,所以说,该方法也具有非常良好的移植性特点。

2)ICTCLAS

我国科学院计算技术研究所,针对自然语言处理研究的基础上,提出了新的汉语词法分析系统,并将其称作为ICTCLAS[2],在这其中主要包括中文分词、新词识别、词性标注、命名实体识别以及用户词典等多种功能。

4 实验研究

4.1 不同大小文本

早在Map阶段时期,splits决定Maptask的数量。如果利用MapReduce处理大量小型文件的过程中,因为每一个处理的小文件都需要单独占用一个任务模块,所以就会产生比较多的Maptask[3],但是一旦任务启动则会消耗大量的时间,从而导致大量的时间均耗费在任务的启动与释放工作中。总体而言,因为线程管理开销不断上升,所以也导致整个处理作业的时间在不断增加。

总体而言,两种不同的中文分词算法在对小文本数据进行处理时,会由于启动Map任务因素的影响而占用大量的时间,这样一来就会降低一定时间内分词算法的效率,因此,在云计算平台的基础上,不适合将分词算法应用于小文本数据集的处理工作中。

4.2 不同数量的文本

如果总本容量比较固定,比如数值在100M情况下,在不同时间节点下,具体分别为1、10、100、1000各个节点,将此作为前提条件进行对比,从而对比不同数量文本对IKAnalyzer和ICTCLAS在云计算平台下的运行速度,经实验后,可以得到相对应的100M、10M、1M和100K的文本。

对于HDFS来说,该系统属于一种提供高吐量的分布式文件系统,最初,该系统被应用于大文件的访问工作中,但是新闻数据大部分均为大小为KB的小型文件,而这些小型文件但数量过度的文件所产生的元数据会向主节点连续发送读写请求,这样一来就会增加网络中数据传输和请求响应的时间,最终对整个平台的运行速度和性能造成影响。

4.3 不用领域的文本

在不同领域的文本中,应对分词效果进行约定,首先,必须要确保分词能够与词语本身的意义相符合,其次,应尽可能地加长词组(最小切分数),在这种约定下,IKAnalyzer在招聘、军事、IT和体育等领域中应用的正确率明显高于ICTCLAS,但是,这两种中文分词方法在体育领域中应用的正确率却达不到80%,而在教育界的领域中则可以达到95%以上,这也就充分的说明,文本内容会直接对两种不同中文分词法的正确率带来影响。此外,两种不同中文分词法在五大领域中均具有比较高的召回率,但是其中IKAnalyzer中文分词法的召回率高于ICTCLAS中文分词法。在体育领域中,ICTCLAS中文分词法的召回率远低于IKAnalyzer分词法,百分比可达到18%,同时,不同的文本内容,对两种中文分词法的召回率也会产生 一定程度的影响。IKAnalyzer中文分詞法在军事、体育、IT和招聘领域中的F值明显高于ICTCLAS中文分词法,综上,在军事、体育、IT和招聘四个领域中,IKAnalyzer中文分词法的应用优势明显优于ICTCLAS中文分词法,而ICTCLAS中文分词法在教育领域要高于体育领域21%,而在体育领域和教育领域中,IKAnalyzer中文分词法的悬殊达到12%,从而表明,IKAnalyzer中文分词法的鲁棒性更优于ICTCLAS中文分词法,而且文本内容也会对两种不同中文分词算法的综合性能造成影响。

5结束语

综上所述,与传统环境下的中文分词算法相比,在云计算平台基础上的中文分词算法能够有效地提高汉字分割的效率,而且也能够有效解决分词算法速度快而精准度不足等问题,从而进一步提高中文分词效率。经实验研究结果表明,在云计算平台基础上IKAnalyzer中文分词算法和ICTCLAS中文分词算法中,ICTCLAS中文分词算法的速度明显优于IKAnalyzer中文分词算法,而在分词正确率和召回率方面,IKAnalyzer中文分词算法则明显优于ICTCLAS中文分词算法。

参考文献:

[1] 熊健,翟紫姹.基于词性标注与分词消歧的中文分词方法[J].广州大学学报(自然科学版),2019,18(5):27-33.

[2] 朱咸军,洪宇,黄雅琳,等.基于HMM的算法优化在中文分词中的应用[J].金陵科技学院学报,2019,35(3):1-7.

[3] 刘桂梅.应用中文分词技术的网络推广管理系统的设计与实现[J].电子商务,2019(9):56-58.

【通联编辑:代影】

猜你喜欢

比较云计算
同曲异调共流芳
实验云:理论教学与实验教学深度融合的助推器
托福听力指南:如何搞定“比较”和“递进”结构的讲座题