一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于多工具的自然语言处理方法、设备及介质与流程

2022-06-05 06:38:26 来源:中国专利 TAG:


1.本技术涉及自然语言处理领域,具体涉及一种基于多工具的自然语言处理方法、设备及介质。


背景技术:

2.在现如今的软件开发的领域中,越来越多的会提及到人工智能(artificial intelligence,ai)这个词语,机器学习随即成为了当今社会越来越重要的发展方向。而在众多机器学习方向中,对自然语言的分析也成为了一个世界性的课题。自然语言分析,意为让机器可以对人类的语言进行分析处理。
3.但在大部分科研成果,在运用到实践中时,往往事与愿违,实际效果与期望值相差甚远。比如,现在对自然语言分析采用的底层框架直接运用到实际生产开发中时,只对部分语言的处理结果较友好,而难以适应其他语言。


技术实现要素:

4.为了解决上述问题,本技术提出了一种基于多工具的自然语言处理方法,包括:
5.获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理;
6.根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度;
7.确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现;
8.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果;
9.针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训练得到该维度对应的nlp维度模型;
10.根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
11.在一个示例中,所述特定语言为汉语,所述维度包括语言词性维度;
12.所述针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果,具体包括:
13.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在所述语言词性维度下进行分析,得到所述语言词性维度对应的第一分析结果;
14.将所述第一分析结果作为影响因子,将所述训练样本在其他维度下进行分析,得到所述其他维度对应的第二分析结果,以便通过所述第一分析结果和所述第二分析结果训练得到不同维度对应的nlp维度模型。
15.在一个示例中,所述将所述第一分析结果作为影响因子,将所述训练样本在其他
维度下进行分析,得到所述其他维度对应的第二分析结果,具体包括:
16.根据所述第一分析结果,确定所述训练样本中,所述语言词性维度为停用词的指定词语;
17.将所述指定词语替换为分隔符,以对通过所述分隔符分隔得到的其他词语,在其他维度下进行分析,得到所述其他维度对应的第二分析结果。
18.在一个示例中,所述通过所述分隔符分隔得到的其他词语,在其他维度下进行分析,得到所述其他维度对应的第二分析结果,具体包括:
19.确定通过所述分隔符分隔得到的其他词语;
20.针对所述其他词语中的至少部分词语,在实体类型维度,和/或,情感分析维度,进行分析,得到所述实体类型维度,和/或,所述情感分析维度分别对应的第二分析结果。
21.在一个示例中,所述根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理,具体包括:
22.根据用户需求,在多个所述nlp维度模型中选择所需的nlp维度模型,并通过所述所需的nlp维度模型,实现对所述特定语言的自然语言处理。
23.在一个示例中,所述训练得到该维度对应的nlp维度模型,具体包括:
24.确定该维度与各所述开源nlp工具之间的关联等级;
25.根据所述关联等级,确定各所述开源nlp工具在该维度中所占的占权重,所述关联等级和所述权重呈正相关;
26.根据所述权重,在该维度中各所述开源nlp工具对应的分析结果选取部分分析结果,用于训练得到该维度对应的nlp维度模型。
27.在一个示例中,所述得到所述多个维度分别对应的分析结果之后,所述方法还包括:
28.将所述分析结果存储至基于指定搜索库的分布式搜索服务器存储中,所述指定搜索库为全文检索引擎的架构。
29.在一个示例中,所述开源自然语言处理工具包括stanfordnlp模型、fudannlp模型、hanlp模型中的至少一种。
30.另一方面,本技术还提出了一种基于多工具的自然语言处理设备,包括:
31.至少一个处理器;以及,
32.与所述至少一个处理器通信连接的存储器;其中,
33.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如:
34.获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理;
35.根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度;
36.确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现;
37.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果;
38.针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训
练得到该维度对应的nlp维度模型;
39.根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
40.另一方面,本技术还提出了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
41.获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理;
42.根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度;
43.确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现;
44.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果;
45.针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训练得到该维度对应的nlp维度模型;
46.根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
47.通过本技术提出基于多工具的自然语言处理方法能够带来如下有益效果:
48.通过多个开源nlp工具进行自然语言处理,得到特定语言在多个维度下的分析结果,解决使用单一基础nlp工具分析准确性较低的问题,提升了可用性。并且,在多个维度下进一步训练得到nlp维度模型,能够针对不同的维度进行独立部署,提高使用时的便利性,且能够根据用户的需求进行快速扩展,提高其可扩展性。
附图说明
49.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
50.图1为本技术实施例中基于多工具的自然语言处理方法的流程示意图;
51.图2为本技术实施例中基于多工具的自然语言处理设备的示意图。
具体实施方式
52.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.以下结合附图,详细说明本技术各实施例提供的技术方案。
54.如图1所示,本技术实施例提供基于多工具的自然语言处理方法,包括:
55.s101:获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理。
56.自然语言处理(natural language processing,nlp),在本文中为进行解释说明,主要以特定语言为汉语进行解释说明。此时,开源nlp工具可以包括stanfordnlp、hanlp、fudannlp等,其中,stanfordnlp提供了一系列用于自然语言的技术工具,它可以给出不管是公司名还是人名亦或标准化日期、时间和数量等单词的基本形式,词性等。hanlp中文自然语言是dkhadoop大数据一体化开发框架中的重要组成部分,其处理分词方法有标准分
词、nlp分词、索引分词、n-最短路径分词、crf分词以及极速词典分词等。fudannlp主要是为中文自然语言处理而开发的工具包,也包含为实现这些任务的机器学习算法和数据集。stanfordnlp、hanlp、fudannlp均支持对汉语的处理。
57.s102:根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度。
58.仍以汉语为例,可以将其划分为语言词性、实体类型维情感分析和日常用语等多个维度。
59.s103:确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现。
60.训练样本可以从特定的数据库中采集,也可以从网络中获取,然而其中至少部分结构(比如,90%上的部分)为汉语。
61.s104:针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果。
62.使用开源nlp工具对训练样本进行自然语言处理分析,将训练样本作为输入,然后将训练样本在这多个维度下,每个维度都可以得到对应的分析结果。将所有开源nlp工具得到的分析结果都进行归纳整理,比如,将分析结果存储至基于指定搜索库的分布式搜索服务器存储中,其中,指定搜索库为全文检索引擎的架构,分布式搜索服务器可以为elasticsearch。
63.s105:针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训练得到该维度对应的nlp维度模型。
64.考虑模型训练对训练机器的配置要求较高,有可能会引入gpu借助gpu的计算能力来辅助进行模型训练。
65.每个开源nlp工具,对每个训练样本,都可以得到多个维度的分析结果,此时,针对每个维度,获取所有开源nlp工具在该维度下的所有分析结果,此时的分析结果只包含该维度对应的信息,然后通过其进行训练,将分析结果作为输入,即可得到该维度下对应的nlp维度模型。此时,可以得到多个维度分别对应的多个nlp维度模型。
66.s106:根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
67.若有新的汉语的词语、句子需要进行分析时,即可根据用户的需求,在多个nlp维度模型中选取自身所需的nlp维度模型,来实现对汉语的自然语言处理。
68.通过多个开源nlp工具进行自然语言处理,得到特定语言在多个维度下的分析结果,解决使用单一基础nlp工具分析准确性较低的问题,提升了可用性。并且,在多个维度下进一步训练得到nlp维度模型,能够针对不同的维度进行独立部署,提高使用时的便利性,且能够根据用户的需求进行快速扩展,提高其可扩展性。
69.在一个实施例中,在使用开源nlp工具进行自然语言处理分析时,首先针对维度中的语言词性维度进行分析,得到其对应的第一分析结果。其中,语言词性的划分可以包括:实词和虚词两个大类,实词指能够独立充当语法成分并且有实际意义的词,在实词中包括名词、动词、形容词、数词、量词、代词等小类,虚词指的是不能独立充当语法成分的词,在虚词中包括副词、介词、连词、助词、语气词、拟声词、感叹词等6类,当然,也可以根据其他类别
进行划分。
70.语言词性维度是其他维度的基础概念,故而将其作为影响因子,在考虑到词语本身的语言词性的基础上,进一步在其他维度中进行分析,得到对应的第二分析结果。此时,通过汇总第一分析结果和第二分析结果,来训练得到不同维度对应的nlp维度模型。
71.进一步地,在语言词性维度中,可以划分停用词这个维度。停用词可以用于特征提取、无关信息等方面,比如,基于词表的停用词(需要人工定义出大量的停用词,如“是”、“这”之类的词语)和基于词性的停用词(根据词性本身的特性,比如连词、助词、介词等词性)。在实际的操作中,若指定词语为停用词,则将其替换为分隔符,然后对分隔得到的其他词语在其他维度上进行分析,得到第二分析结果。
72.例如,首先确定通过分隔符分隔得到的其他词语,然后针对其他词语中的至少部分词语(针对哪部分词语,可以基于用户的需要进行设置),然后在实体类型维度和/或情感分析维度进行分析,得到实体类型维度和/或情感分析维度分别对应的第二分析结果。
73.在一个实施例中,在得到多个nlp维度模型后,可以根据用户的实际需求,在多个所述nlp维度模型中选择所需的nlp维度模型,来通过所需的nlp维度模型,实现对特定语言的自然语言处理。比如,只选择情感分析维度的nlp维度模型,对情感进行分析。
74.在一个实施例中,训练得到nlp维度模型时,可以首先确定该维度与各开源nlp工具之间的关联等级。其中,不同的开源nlp工具通常具有不同的特性,其侧重面是不同的,故而其与不同维度之间的关联等级也是不同的,通常来说,开源nlp工具在该维度上的分析准确度越高,关联等级也越高。然后根据关联等级,确定各开源nlp工具在该维度中所占的占权重,关联等级和权重呈正相关。最后在训练该维度的nlp维度模型时,即可根据权重,在各开源nlp工具对应的分析结果选取部分分析结果来进行训练,权重越高,在该nlp工具的分析结果中选取的分析结果的比例也越高。
75.如图2所示,本技术实施例还提供了一种基于多工具的自然语言处理设备,包括:
76.至少一个处理器;以及,
77.与所述至少一个处理器通信连接的存储器;其中,
78.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如:
79.获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理;
80.根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度;
81.确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现;
82.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果;
83.针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训练得到该维度对应的nlp维度模型;
84.根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
85.本技术实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
86.获取多个开源nlp工具,所述开源nlp工具支持对特定语言进行处理;
87.根据所述特定语言的属性,将所述特定语言划分成与所述特定语言适配的多个维度;
88.确定预先获取的训练样本,所述训练样本中,至少部分结构以所述特定语言的形式体现;
89.针对每个所述开源nlp工具,使用其对所述训练样本进行自然语言处理分析,以将所述训练样本在每个所述维度下进行分析,得到所述多个维度分别对应的分析结果;
90.针对每个所述维度,获取所述多个开源nlp工具在该维度下的所述分析结果,以训练得到该维度对应的nlp维度模型;
91.根据多个所述nlp维度模型,实现对所述特定语言的自然语言处理。
92.本技术中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
93.本技术实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。
94.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
95.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
96.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
97.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
98.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
99.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或
非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
100.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
101.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
102.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献