掌桥专利:专业的专利平台
掌桥专利
首页

一种分词工具处理方法及其相关设备

文献发布时间:2023-06-19 16:04:54



技术领域

本申请属于互联网领域,尤其涉及一种分词工具处理方法及其相关设备。

背景技术

分词又叫做词条化(tokenlize),指的是将原始的字符流转换成一个一个词条(token)的过程。词条化属于自然语言处理中预处理的一个步骤,它是分析语义的基础。下面是一个词条化的例子。

文本1:hello world

文本2:hello tom

那么分词工具会将这两个文本分词。

文本1:hello和world

文本2:hello和tom

这时候用户搜索“hello jerry”,经过分词后为:hello和jerry

其中hello能匹配到文本1和文本2的分词hello,那么就认为文本1和文本2是和搜索相关的。如果用户搜索“tom and jerry”,经过分词后为:tom、 and、jerry其中tom能匹配到文本2,而没有一个分词能匹配到文本1的分词,那么lucene认为只有文本2和搜索相关。

以上是英文分词并进行搜索的过程,实际上中文分词相较之下要复杂得多,比如文本“今天天气真不错”,我们可以辨别出其中“今天”、“天气”、“真不错”是三个分词。然而这对机器来说却是很困难的,机器难以辨别哪些字是一个词。为此需要引入分词工具,比如IK分词工具,它自带一个词库,里面包含了大部分常用中文词,比如上面所提到的“今天”、“天气”等。经过IK 分词工具后,文本会被分词为词库中的词,具体分词逻辑可参照现有技术,了解IK分词工具能将一段文本中在词库里的词提取出来即可。

然而很明显这一方案有局限性,IK的分词词库不可能做到包含中文所有的词,中文在不断发展,总会有新的词语产生,进而容易导致某些词无法被识别出来,造成分词工具的使用不便。

发明内容

本申请实施例第一方面提供了一种分词工具处理方法,包括:

获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;

使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;

确定所述处理结果中所包括的连续单字词;

依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。

基于本申请实施例第一方面所提供的分词工具处理方法,可选的,所述目标分词工具为IK分词工具。

基于本申请实施例第一方面所提供的分词工具处理方法,可选的,依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库,包括:

判断所述连续单字词的出现数量是否超出预设值;

若所述连续单字词的出现数量超出预设值,则将所述连续单字词合并得到所述多字词;

若所述连续单字词的出现数量未超出预设值,则结束流程;

添加所述多字词至所述目标分词工具的预设词库。

基于本申请实施例第一方面所提供的分词工具处理方法,可选的,所述添加所述多字词至所述目标分词工具的预设词库,包括:

添加所述多字词至疑似词库;

对所述疑似词库内的所述多字词进行确认,得到目标多字词;

添加所述目标多字词至所述目标分词工具的预设词库。

本申请实施例第二方面提供了一种分词工具处理设备,包括:

获取单元,用于获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;

处理单元,用于使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;

确定单元,用于确定所述处理结果中所包括的连续单字词;

添加单元,用于依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。

基于本申请实施例的第二方面所提供的分词工具处理设备,可选的,所述目标分词工具为IK分词工具。

基于本申请实施例的第二方面所提供的分词工具处理设备,可选的,所述添加单元具体用于:

判断所述连续单字词的出现数量是否超出预设值;

若所述连续单字词的出现数量超出预设值,则将所述连续单字词合并得到所述多字词;

若所述连续单字词的出现数量未超出预设值,则结束流程;

添加所述多字词至所述目标分词工具的预设词库。

本申请实施例第三方面提供了一种分词工具处理设备,包括:

中央处理器,存储器,输入输出接口,有线或无线网络接口以及电源;

所述存储器为短暂存储存储器或持久存储存储器;

所述中央处理器配置为与所述存储器通信,在所述设备上执行所述存储器中的指令操作以执行本申请实施例第一方面中任意一项所述的方法。

本申请实施例第四方面提供了一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如本申请实施例第一方面中任意一项所述的方法。

本申请实施例第五方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如本申请实施例第一方面中任意一项所述的方法。

从以上技术方案可以看出,本申请实施例具有以下优点:本申请提供了一种词工具处理方法,包括:获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;确定所述处理结果中所包括的连续单字词;依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。通过上述方式使得分词提取工具可以基于目标文本库提取出其特有的专业名词,从而使得分词工具更加符合目标文本库的适用环境,可以适应特定行业的使用需求,进而使得分词工具的适用性更广,表现更好。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。可以理解的是,本部分所提供的附图仅用于更好地理解本方案,不构成对本申请的限定。

图1为本申请所提供的分词工具处理方法实施例的一个流程示意图。

图2为本申请所提供的分词工具处理方法实施例的另一个流程示意图。

图3为本申请所提供的分词工具处理设备实施例的一个结构示意图。

图4为本申请所提供的分词工具处理设备实施例的另一个结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。同时,为了描述清楚和简明,以下的描述中省略了对公知的功能和结构的描述。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

分词又叫做词条化(tokenlize),指的是将原始的字符流转换成一个一个词条(token)的过程。词条化属于自然语言处理中预处理的一个步骤,它是分析语义的基础。下面是一个词条化的例子。

文本1:hello world

文本2:hello tom

那么分词工具会将这两个文本分词。

文本1:hello和world

文本2:hello和tom

这时候用户搜索“hello jerry”,经过分词后为:hello和jerry

其中hello能匹配到文本1和文本2的分词hello,那么就认为文本1和文本2是和搜索相关的。如果用户搜索“tom and jerry”,经过分词后为:tom、and、jerry其中tom能匹配到文本2,而没有一个分词能匹配到文本1的分词,那么lucene认为只有文本2和搜索相关。

以上是英文分词并进行搜索的过程,实际上中文分词相较之下要复杂得多,比如文本“今天天气真不错”,我们可以辨别出其中“今天”、“天气”、“真不错”是三个分词。然而这对机器来说却是很困难的,机器难以辨别哪些字是一个词。为此需要引入分词工具,比如IK分词工具,它自带一个词库,里面包含了大部分常用中文词,比如上面所提到的“今天”、“天气”等。经过IK 分词工具后,文本会被分词为词库中的词,具体分词逻辑可参照现有技术,了解IK分词工具能将一段文本中在词库里的词提取出来即可。

然而很明显这一方案有局限性,IK的分词词库不可能做到包含中文所有的词,中文在不断发展,总会有新的词语产生,进而容易导致某些词无法被识别出来,造成分词工具的使用不便。为解决上述问题,本申请提供了一种分词工具处理方法,请参阅图1,本申请分词工具处理方法的一个实施例包括:步骤 101-步骤104。

101、获取目标文本库。

具体的,获取目标文本库,其中所述目标文本库内具有多个目标文本,所述目标文本为中文文本。目标文本库所包括的目标文本内容可依据实际情况而定,如对于有些文章阅览网站,则可将存有所有网站内文章的数据库作为目标文本库,以便进行识别,进而便于用户在文章阅览系统内进行搜索,得到相应的更加准确的搜索结果。

102、使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果。

具体的,使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果。具体的,目标分词工具的类别可为IK分词工具或其他类型的分词工具,具体此处不做限定。通过目标分词工具对多个目标文本进行处理得到多个现有的词汇处理结果,其中目标分词工具依据已有词库所包括的词汇进行处理,如对于文本“今天天气真不错”,我们可以辨别出其中“今天”、“天气”、“真不错”是三个分词。IK分词工具自带一个词库,里面包含了大部分常用中文词,比如上面所提到的“今天”、“天气”等。经过IK分词工具后,文本会被分词为词库中的词,具体分词逻辑可参照现有技术,了解IK分词工具能将一段文本中在词库里的词提取出来即可。值得注意的是,在进行分词过程中对于某些较为特殊的词汇,如:公司名,人名等特殊词汇,分词工具往往无法正确识别,对于这类词汇分词工具往往会将其分解为多个单字词,举例而言,分词结果可参照如表一所示的结果:

表1

可以看出对于表1中语句多次出现了“彬、效”不难理解这是一个公司的名称,可能是当前领域较为著名的公司,然而分词工具所使用的常用词词库未出现,因此为保证分词工具的分词效果需要将该词添加进分词工具的词库中

103、确定所述处理结果中所包括的连续单字词。

具体的,确定所述处理结果中所包括的连续单字词。其中连续单字词需满足连续且单字两个条件即每个结果由单个汉字组成,且最少有两个顺序相邻的单字词,如上述步骤102中“彬、效”符合连续且单字的条件,可以认为是一个连续单字词。确定处理结果中所包括的所有连续单字词。

104、依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。

具体的,依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。如若某一连续单字词的出现数量超出预设值,则确定该词为未被收录进预设词库的常用词,此时将该连续单字词进行合并,如对于上述“彬、效”则合并为“彬效”一词,添加入目标分词工具的预设词库,以便在后续的处理过程分词工具可以将该词汇识别出来。

从以上技术方案可以看出,本申请实施例具有以下优点:本申请提供了一种词工具处理方法,包括:获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;确定所述处理结果中所包括的连续单字词;依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。通过上述方式使得分词提取工具可以基于目标文本库提取出其特有的专业名词,从而使得分词工具更加符合目标文本库的适用环境,可以适应特定行业的使用需求,进而使得分词工具的适用性更广,表现更好。

为便于在实际过程中使用本方法,本申请还提供了一种可选择实施的更为详细的实施例,请参阅图2,本申请的一个实施例包括:步骤201-步骤208。

201、获取目标文本库。

202、使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果。

203、确定所述处理结果中所包括的连续单字词。

具体的,上述步骤201至步骤203与前述图1对应实施例中步骤101至步骤103类似,具体此处不做赘述。

204、判断所述连续单字词的出现数量是否超出预设值。

具体的,判断所述连续单字词的出现数量是否超出预设值,其中预设值的数值大小可依据实际情况而定,如5、10。若连续单字词的出现数量超出预设值,则执行步骤206、将所述连续单字词合并得到所述多字词,若连续单字词的出现数量未超出预设值,则执行步骤205、结束流程。

205、结束流程。

具体的,若连续单字词的出现数量未超出预设值,则说明所出现的连续单字词为某一特定用法或巧合,再次出现的可能性较小,无需特殊处理,结束流程即可。

206、将所述连续单字词合并得到所述多字词。

具体的,将所述连续单字词合并得到所述多字词,并将所述多字词添加至疑似词库,疑似词库用于存储可能是有意义的多字词的词语,在实际处理过程中连续单字词的合并可能会出现某些不具备实际意义的词汇,如:

彬和效科技公司天下第一,对于该语句会分成:彬、和、效、科技、公司、天下、第一。

合成词汇时,对于“彬、效、和、”会合成:“彬和、和效、彬和效”三个词,实际有意义的词汇为彬和效,对于机器执行这一过程较为困难,因此可将所合成的所有连续单字词均添加至疑似词库,以便进行进一步处理。

207、对所述疑似词库内的所述多字词进行确认,得到目标多字词。

具体的,对所述疑似词库内的所述多字词进行确认,得到目标多字词。本步骤可由人工进行确认,也可基于一定规则设置进行确认,如选择则出现次数最多的词汇为目标多字词,具体可依据实际情况而定,此处不做限定。

208、添加所述目标多字词至所述目标分词工具的预设词库。

具体的,添加所述目标多字词至所述目标分词工具的预设词库,添加入目标分词工具的预设词库,以便在后续的处理过程分词工具可以将该词汇识别出来。

从以上技术方案可以看出,本申请实施例具有以下优点:本申请提供了一种词工具处理方法,包括:获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;确定所述处理结果中所包括的连续单字词;依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。通过上述方式使得分词提取工具可以基于目标文本库提取出其特有的专业名词,从而使得分词工具更加符合目标文本库的适用环境,可以适应特定行业的使用需求,进而使得分词工具的适用性更广,表现更好。

上述内容对本申请所提供的分词工具处理方法进行了描述,为支持上述实施例的实施,本申请还提供了一种分词工具处理设备,请参阅图3,本申请的一个实施例包括:

获取单元301,用于获取目标文本库,所述目标文本库内具有多个目标文本,所述目标文本为中文文本;

处理单元302,用于使用目标分词工具对所述目标文本库内的所述多个目标文本进行处理,得到处理结果;

确定单元303,用于确定所述处理结果中所包括的连续单字词;

添加单元304,用于依据所述连续单字词的出现数量将所述连续单字词作为多字词添加至所述目标分词工具的预设词库。

可选的,所述目标分词工具为IK分词工具。

可选的,所述添加单元具体用于:

判断所述连续单字词的出现数量是否超出预设值;

若所述连续单字词的出现数量超出预设值,则将所述连续单字词合并得到所述多字词;

若所述连续单字词的出现数量未超出预设值,则结束流程;

添加所述多字词至所述目标分词工具的预设词库。

本实施例中,分词工具处理设备中各单元所执行的流程与前述图1所对应的实施例中描述的方法流程类似,此处不再赘述。

图4示出了可以用来实施本申请的实施例的示例电子设备400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。

如图4所示,设备400包括计算单元401,其可以根据存储在只读存储器 (ROM)402中的计算机程序或者从存储单元408加载到随机访问存储器(RAM) 403中的计算机程序,来执行各种适当的动作和处理。在RAM 403中,还可存储设备400操作所需的各种程序和数据。计算单元401、ROM 402以及RAM 403 通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。

设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(CPU)、图形处理单元 (GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如分词工具处理方法。例如,在一些实施例中,可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 403并由计算单元401执行时,可以执行上文描述的分词工具处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元401 可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行分词工具处理方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者 LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端- 服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS") 中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

本申请实施例还提供了一种计算机存储介质,该计算机存储介质用于储存为上述分词工具处理方法所用的计算机软件指令,其包括用于执行为所设计的程序。

该分词工具处理方法可以如前述图1中所描述的分词工具处理方法。

本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机软件指令,该计算机软件指令可通过处理器进行加载来实现上述图1图2中任意一项的分词工具处理方法的流程。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,电路的等效变换,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换或改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种分词工具处理方法及其相关设备
  • 一种分词处理方法及设备
技术分类

06120114697819