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

一种自然语言处理方法以及装置与流程

2022-03-31 06:33:54 来源:中国专利 TAG:


1.本发明设计人工智能技术领域,特别是涉及一种自然语言处理方法以及装置。


背景技术:

2.随着机器学习(machine learning,ml)技术的广泛运用,自然语言处理(natural language processing,nlp)也得到了较快的发展,而且自然语言处理任务需求呈现日益增长的态势,因此,需要提供自然语言处理开发框架来满足快速开发和部署的要求。近年来机器学习模型日趋复杂,由于自然语言处理开发框架需要自定义的应用程序接口(application programming interface,api),以完成不同类型上游任务的处理需求,往往会造成自然语言处理方法的应用较为单一,对任务类型支持不灵活以及重复开发等问题。


技术实现要素:

3.鉴于以上所述现有技术的缺点,本发明的目的在于提供一种自然语言处理方法以及装置,用于解决现有技术中自然语言处理开发框架应用较为单一的问题。
4.为实现上述目的及其他相关目的,本发明提供一种自然语言处理方法,所述自然语言处理方法包括:
5.对原始数据进行特征提取,获取词向量,其中,所述特征提取的步骤包括:获取所述原始数据的分词路径,根据所述分词路径确定分词片段,将所述分词片段进行编码,获取所述词向量;
6.提供多种算法模型,选择所述算法模型对所述词向量进行特征计算,获取特征向量,所述词向量与选择的所算法模型的输入数据的类型相匹配;
7.从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果。
8.可选的,从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果的步骤包括:
9.从所述特征向量的首个字符开始按照整句概率的最大值进行遍历,获取所述整句概率的最大值所对应的成句路径以及所述成句路径的概率;
10.获取概率最大的成句路径并作为所述解码结果。
11.可选的,所述成句路径的概率的数学表达为:
12.log(p(i)
maxseg
)=log(p(i-1)
maxseg
) log(word_with_biggest_prob(i))
13.其中,p(i)
maxseg
表示从首个字符到第i个字符按整句概率的最大值进行分词的成句路径的概率;
14.p(i-1)
maxseg
表示从首个字符到第i-1个字符按整句概率的最大值进行分词的成句路径的概率;
15.word_with_biggest_prob(i)表示遍历到第i个字符时,第i个字符按整句概率的
最大值进行分词的成句路径的概率。
16.可选的,获取所述原始数据的分词路径的步骤包括:
17.按照所述原始数据的语句概率进行分词,获取分词路径;
18.所述语句概率的数学表达为:
19.p(word1,word2....wordi)=p(wordi)*пp(wordi|word
i-1
...word
i-n
)
20.其中,p(word1,word2....wordi)表示语句概率,p(wordi)表示第i个单词的语句概率,p(wordi|word
i-1
...word
i-n
)表示第一个到第i个单词的语句概率。
21.可选的,所述词向量的数学表达为:
22.x
route_map
:[x1:[x2,x3,x4.....],x2:[x4,x5],.....xn:[0]]
[0023]
其中,x
route_map
表示所述词向量,x1、x2、x3......xn分别表示所述原始数据对应的字符。
[0024]
可选的,获取分词路径的步骤还包括:
[0025]
所述原始数据包括n个字符,对n个字符进行分词,获取个分词路径。
[0026]
可选的,原始数据的数学表达为:
[0027]
[x1,x2,x3......xn]
[0028]
分词片段的数学表达为:
[0029]
[[x1,x2],[x3,x4,x5],......xn]。
[0030]
本发明提供一种自然语言处理装置,所述自然语言处理装置包括:
[0031]
编码器,用于对原始数据进行特征提取,获取词向量,其中,所述特征提取的步骤包括:获取所述原始数据的分词路径,根据所述分词路径确定分词片段,将所述分词片段进行编码,获取所述词向量;
[0032]
计算主体,用于提供多种算法模型,选择所述算法模型对所述词向量进行特征计算,获取特征向量,所述词向量与选择的所算法模型的输入数据的类型相匹配;
[0033]
解码器,用于从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果。
[0034]
本发明提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述自然语言处理的步骤。
[0035]
本发明提供还一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述的自然语言处理的步骤。
[0036]
如上所述,本发明的自然语言处理方法以及装置,具有以下有益效果:
[0037]
可将原始数据进行特征提取,获取词向量,并将词向量进行处理获取承载有语义信息的特征向量,通过对特征向量进行遍历,获取多个成句路径以及概率,提高解码结果的置信度。
附图说明
[0038]
图1显示为本发明实施例的自然语言处理方法的应用环境示意图。
[0039]
图2显示为本发明实施例的自然语言处理方法的流程示意图。
[0040]
图3显示为本发明另一实施例的自然语言处理方法的流程示意图。
[0041]
图4显示为本发明实施例的自然语言处理装置的结构示意图。
[0042]
图5显示为本发明另一实施例的自然语言处理装置的结构示意图。
[0043]
图6显示为本发明实施例中电子设备的结构示意图。
具体实施方式
[0044]
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0045]
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。同时,本说明书中所引用的如“上”、“下”、“左”、“右”、“中间”及“一”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
[0046]
自然语言处理(natural language processing,nlp)是人工智能(artificial intelligence,ai)技术领域中的一个重要方向,能够实现人与计算机之间用自然语言进行有效信息的传输。随着机器学习技术的发展,自然语言处理也得到了长足的进步,为了提高自然语言处理的应用场景适用范围,可针对自然语言处理的一些业务场景需求,提供自然语言处理的开发框架,以降低开发者的开发难度,提高开发效率。随着自然语言处理场景的变化,造成代码量的较大增长以及代码结构的高度复杂化,需要一定功能自定义应用程序接口的自然语言处理开发框架,由于目前的自然语言开发框架应用较为单一,不能较好地满足自定义应用程序接口与协同开发的技术痛点,导致对任务类型支持不灵活以及重复开发的情况发生。为此,本方案的实施例提供一种基于模块化的自然语言处理方法。
[0047]
本方案提供的自然语言处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。例如,可以通过终端102进行自然语言处理,将其处理结果与服务器104进行数据传输。又例如,可以通过服务器104进行自然语言处理,将其处理结果反馈至终端102中。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
[0048]
如图2所示,在一实施例中提供一种自然语言处理方法,所述自然语言处理方法包括:
[0049]
s1:对原始数据进行特征提取,获取词向量,其中,所述特征提取的步骤包括:获取所述原始数据的分词路径,根据所述分词路径确定分词片段,将所述分词片段进行编码,获
取所述词向量;
[0050]
s2:提供多种算法模型,选择所述算法模型对所述词向量进行特征计算,获取特征向量,所述词向量与选择的所算法模型的输入数据的类型相匹配;
[0051]
s3:从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果。可将原始数据进行特征提取,获取词向量,并将词向量进行处理获取承载有语义信息的特征向量,通过对特征向量进行遍历,获取多个成句路径以及概率,提高解码结果的置信度。
[0052]
在步骤s1中,示例性地说明,根据自然语言处理的任务类型,将原始数据作为自然语言处理的输入数据,由于原始文本的离散度高,数据类型不能够在自然语言处理过程中直接被调用和处理,需要对所述原始数据进行特征提取,可先将原始数据转化为字符串或者编码序列,再对字符串或者编码序列进行分词,分词路径的确定过程可采用贪心匹配,例如,尽可能匹配最长的字符串或者编码序列,获取分词路径,还可以采用非贪心匹配,例如,尽可能匹配最短的字符串或者编码序列,找到字符或者编码中所有的连续成词的分词路径,并根据所述分词路径确定分词片段,分词片段以字符集合或者编码集合的形式存在,将所述分词片段进行编码,以使所述分词片段进行向量化,获取分词向量,还可提供用于将原始数据进行向量化的编码器,将编码器作为执行主体,通过编码器完成对原始数据的特征提取,由于在编码过程中产生了多种可能以及字符的排列组合形式,如中国人民可有“中国”、“人民”和“中国人民”多种分词路径,编码器(encoder)可以为模块的执行载体,通过将当前的原始数据进行特征提取,实现原始数据的分词和向量化,获取能够被自然语言处理模型迭代训练或者分析识别的词向量,还可以提供兼容性强的应用程序接口。当上游任务需要执行当前的自然语言处理任务时,可通过编码器对自然语言处理任务的原始数据进行向量化,获取词向量,有利于提供兼容性较高的应用程序端口,帮助开发者降低开发难度以及提高协同开发的效率,降低自然语言处理任务的代码数量。
[0053]
在步骤s2中,示例性地说明,提供多种算法模型,多种所述算法模型可以包括传统机器学习的k最邻近(k-nearestneighbor,knn)分类算法、支持向量机(support vector machine,svm)算法,或者,深度学习的长短期记忆网络(long short-term memory,lstm)等算法,能够根据上游自然语言处理的任务类型,选择合适的算法模型进行匹配,提高自然语言处理所述支持的任务种类,提高适用性,通过被选择的算法模型对词向量进行特征计算,获取特征向量,特征计算的过程包括向量运算、卷积运算或者矩阵运算等过程,可将多种算法模型配置为模块化的执行载体,例如配置为计算主体(body),其作用可接收从原始数据中提取得到的词向量进行再进行处理,还将计算主体作为框架系统的一个单独模块,所述词向量与选择的所算法模型的输入数据的类型相匹配,方便不同算法的对比与集成,可增强模型的扩展性,在编码器处理得到了词向量以后,输入对应的计算主体,能够满足下游任务的多样性的要求,可以根据多种计算主体来进行自由组合,获取理想的框架系统,能够对多任务模型进行灵活的支持,最终获取承载有一定语义信息的特征向量,通过调用不同的计算主体为解决当前的自然语言处理任务提供解决方案,避免自然语言处理开发框架支持任务类型单一的情况发生。
[0054]
在步骤s3中,示例性地说明,从所述特征向量的首个字符开始遍历,获取特征向量的各个可能的成句路径以及对应的整句概率,其整句概率为当前的成句路径条件下整句语
义的概率,并通过所述成句路径以及所述整句概率来获取所述解码结果,实质上获取解码的结果的过程包括对特征向量的分类计算过程,可将该过程配置为解码器(decoder),通过解码器的分类运算达到处理特征向量承载的语义信息的目的,例如,可在解码器的输出层中配置softmax或者sigmod函数来实现分类处理,还可根据自然语言处理的任务类型不同,选择与之匹配的解码器完成特征向量的解码,在本方案提供的自然语言处理方法中,首先通过对原始数据的向量化,得到支持多种类型的应用程序接口的词向量,并提供多种用于特征计算的模型算法获取特征向量,通过对特征向量进行分类处理获取相应的解码结果,特征计算以及分类处理的过程可根据自然语言处理的任务类型进行自由选择和适配,增加了自然语言处理支持的任务类型的种类,解决自然语言处理任务单一的技术问题。
[0055]
为了提高解码结果的置信度,如图3所示,在一些实施例中,从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果的步骤包括:
[0056]
s31:从所述特征向量的首个字符开始按照整句概率的最大值进行遍历,获取所述整句概率的最大值所对应的成句路径以及所述成句路径的概率;
[0057]
s32:获取概率最大的成句路径并作为所述解码结果。
[0058]
在步骤s31中,示例性地说明,获取所述特征向量中各个成句路径的整句概率,为了提高解码结果的置信度,可按照整句概率的最大值,将所述特征向量从首个字符开始进行遍历,获取所述整句概率的最大值以及对应的成句路径,相应地,该成句路径的语义信息置信度最高;
[0059]
在步骤s32中,示例性地说明,概率最大的成句路径能够体现原始数据的语义的可能性最高,可将获取的概率最大的成句路径作为解码结果进行输出,完成对当前原始数据的自然语言处理。在自然语言处理过程中,由于原始数据中字符的同义或者近意导致自然语言处理的解码结果置信度低,同时由于成句路径不同导致自然语言处理的解码结果产生歧义,为了改善分词路径以及字符近意导致解码结果置信度的问题,根据整句概率的最大值,对特征向量进行遍历获取各种分词路径以及分词路径的概率,并将概率最大的成句路径并作为所述解码结果,提高解码结果的置信度。
[0060]
在一些实施过程中,所述成句路径的概率的数学表达为:
[0061]
log(p(i)
maxseg
)=log(p(i-1)
maxseg
) log(word_with_biggest_prob(i))
[0062]
其中,p(i)
maxseg
表示从首个字符到第i个字符按整句概率的最大值进行分词的成句路径的概率;
[0063]
p(i-1)
maxseg
表示从首个字符到第i-1个字符按整句概率的最大值进行分词的成句路径的概率;
[0064]
word_with_biggest_prob(i)表示遍历到第i个字符时,第i个字符按整句概率的最大值进行分词的成句路径的概率。通过对首个字符开始到最后字符结束,进行成句路径的概率进行对数运算以及递归求解,将求取对数的过程变化为加法过程,并将每个位置的字符作为当前字符进行遍历,最终可获取成句路径的概率的最大值。不同于传统分词方案,通过所述成句路径以及所述整句概率来获取所述解码结果,可将每个特征向量的字符输出为一一对应的成句路径。通过将计算主体进行分离,并配置为独立的模块,在自然语言处理的任务中作为执行载体,在不同模型中还可以较为方便的实现中间层的模型蒸馏,以及对
比学习等新的功能,即便是最后的结果输出,也可以通过一些投票模型或者集成策略提升模型的鲁棒性与准确率。
[0065]
在一些实施过程中,获取所述原始数据的分词路径的步骤包括:
[0066]
按照所述原始数据的语句概率进行分词,获取分词路径;
[0067]
所述语句概率的数学表达为:
[0068]
p(word1,word2....wordi)=p(wordi)*пp(wordi|word
i-1
...word
i-n
)
[0069]
其中,p(word1,word2....wordi)表示语句概率,p(wordi)表示第i个单词的语句概率,p(wordi|word
i-1
...word
i-n
)表示第一个到第i个单词的语句概率,п表示乘积运算。可按照原始数据的排列顺序以及语句概率,对原始数据的单词进行遍历,获取基于原始数据的单词的分词路径,其中,语句概率是当前分词路径下该原始数据表示语义的概率。
[0070]
在一些实施例中,所述词向量的数学表达为:
[0071]
x
route_map
:[x1:[x2,x3,x4.....],x2:[x4,x5],.....xn:[0]]
[0072]
其中,x
route_map
表示所述词向量,x1、x2、x3......xn分别表示所述原始数据对应的字符。编码器获取词向量的过程可通过词嵌入或者字嵌入(word embedding)实现的。
[0073]
特征向量的获取过程可包括随机初始化的多维特征向量,通过设计模型算法的训练过程,让特征向量有方向的收敛到一定的数值从而捕获了原始语料中的语义信息,还可以神经网络模型中的嵌入(embedding)层的形式出现,也有的直接是以哈希表的形式出现,键值即为对应字符/词向量,例如,特征向量的数学表达为:
[0074]
f(x1,x2,....xn)=[v1,v2....vn]
[0075]
其中,f(x1,x2,....xn)为原始数据,v1,v2....vn为词向量的字符,x1,x2,....xn为原始数据的字符。在一些实施例中,原始数据“那棵树看起来生气了”将被编码器转化为一个多维的词向量集,再参与到后面的计算主体的特征计算。得到了经过编码器处理后的词向量后,深度学习模型的计算主体即是其本身的网络结构,通过常见的卷积、循环以及注意力机制的计算单元后,得到经过非线性变换处理后的特征向量输出。
[0076]voutput
=[v
output1
,v
output2
....v
outputn
]
[0077]
其中,v
output1
,v
output2
....v
outputn
为特征向量的字符,v
output
为特征向量,为了得到中文分词所需要标签序列,我们需要将特征向量v
output
进行解码,比如使用softmax函数分类处理,计算每个特征向量的字符对应的成句路径的概率分布,再取最大概率的标签作为解码结果,或者采用条件随机场对整句进行建模,求解使得整个标签序列概率最大的标签排列,而求解过程则同样可以采用基于动态规划的维特比算法进行计算简化。
[0078]
在一些实施例中,获取分词路径的步骤还包括:
[0079]
所述原始数据包括n个字符,对n个字符进行分词,获取个分词路径。根据原始数据中的字符,获取各种基于字符分割方式的分词路径,其分词路径的排列组合多种,可以采用随机排列组合的形式,因此分词路径包括种。
[0080]
在一些实施例中,原始数据的数学表达为:
[0081]
[x1,x2,x3......xn]
[0082]
分词片段的数学表达为:
[0083]
[[x1,x2],[x3,x4,x5],......xn]。
[0084]
通过获取原始数据,并将原始数据中字符进行不交叠的排列,并获取不交叠子串的集合,即为分词片段。
[0085]
还可据上游任务类型的特性以及原始数据的数据类型,选择编码器、计算主体以及解码器的组合形式,构成多任务模型的形式,即可比较容易地选择可统一训练的、便于耦合的计算主体,解决现有技术中开发框架不易耦合,改善难以将多个模型进行协同的问题。还可以根据输入和输出数据的类型,将不同类型的算法模型进行有机结合,例如,能够把机器学习算法模型与深度学习算法模型通过模块化的方式结合,让结合后的模型具有多个解决方案的实施可能性,可根据具体应用场景选择机器学习算法模型和/或深度学习算法模型。
[0086]
又例如,可以根据下游任务类型,自定义编码器、计算主体以及解码器,较为容易地进行算法迭代和对比。还可以将一些常用的预处理算法与数据处理方案同样以通用模块的形式融入框架系统,避免了开发过程中的代码重复,降低了自然语言处理开发过程中代码的复杂程度以及代码的数量。
[0087]
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0088]
如图4所示,本发明提供一种自然语言处理装置,所述自然语言处理装置包括:
[0089]
编码器,用于对原始数据进行特征提取,获取词向量,其中,所述特征提取的步骤包括:获取所述原始数据的分词路径,根据所述分词路径确定分词片段,将所述分词片段进行编码,获取所述词向量;
[0090]
计算主体,用于提供多种算法模型,选择所述算法模型对所述词向量进行特征计算,获取特征向量,所述词向量与选择的所算法模型的输入数据的类型相匹配;
[0091]
解码器,用于从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果。可将原始数据进行特征提取,获取词向量,并将词向量进行处理获取承载有语义信息的特征向量,通过对特征向量进行遍历,获取多个成句路径以及概率,提高解码结果的置信度。还可在计算主体中配置多种模型算法,根据上游自然语言处理的任务类型,选择计算主体中的模型算法,进行排列组合,达到灵活支持多种自然语言处理的任务类型的目的,为了更好地进行适配,可将编码器输出数据与计算主体输入数据的类型进行匹配,降低不兼容的状况发生,提高了协同开发的效率,降低了开发难度,同时避免重复开发,也有助于减少代码数量。
[0092]
在一些实施过程中,所述解码器可从所述特征向量的首个字符开始遍历,获取成句路径以及所述成句路径所对应的整句概率,并通过所述成句路径以及所述整句概率来获取所述解码结果的步骤包括:
[0093]
从所述特征向量的首个字符开始按照整句概率的最大值进行遍历,获取所述整句概率的最大值所对应的成句路径以及所述成句路径的概率;
[0094]
获取概率最大的成句路径并作为所述解码结果。解码器可设置多种应用程序接口,以满足不同的开发环境以及任务类型的需求,通过解码器对原始数据进行向量化,获取词向量,能够兼容较多类型的自然语言处理任务的数据需求。
[0095]
在一些实施例中,通过所述解码器获取成句路径的概率,所述成句路径的概率的数学表达为:
[0096]
log(p(i)
maxseg
)=log(p(i-1)
maxseg
) log(word_with_biggest_prob(i))
[0097]
其中,p(i)
maxseg
表示从首个字符到第i个字符按整句概率的最大值进行分词的成句路径的概率;
[0098]
p(i-1)
maxseg
表示从首个字符到第i-1个字符按整句概率的最大值进行分词的成句路径的概率;
[0099]
word_with_biggest_prob(i)表示遍历到第i个字符时,第i个字符按整句概率的最大值进行分词的成句路径的概率。解码器可提供置信度较高的解码结果,并通过模块化进行封装,在自然语言处理的任务过程中,通过灵活调用来满足上游任务的要求。
[0100]
在一些实施例中,编码器获取所述原始数据的分词路径的步骤包括:
[0101]
按照所述原始数据的语句概率进行分词,获取分词路径;
[0102]
所述语句概率的数学表达为:
[0103]
p(word1,word2....wordi)=p(wordi)*пp(wordi|word
i-1
...word
i-n
)
[0104]
其中,p(word1,word2....wordi)表示语句概率,p(wordi)表示第i个单词的语句概率,p(wordi|word
i-1
...word
i-n
)表示第一个到第i个单词的语句概率。
[0105]
在一些实施例中,所述词向量的数学表达为:
[0106]
x
route_map
:[x1:[x2,x3,x4.....],x2:[x4,x5],.....xn:[0]]
[0107]
其中,x
route_map
表示所述词向量,x1、x2、x3......xn分别表示所述原始数据对应的字符。
[0108]
在一些实施例中,获取分词路径的步骤还包括:
[0109]
所述原始数据包括n个字符,对n个字符进行分词,获取个分词路径。
[0110]
在一些实施例中,原始数据的数学表达为:
[0111]
[x1,x2,x3......xn]
[0112]
分词片段的数学表达为:
[0113]
[[x1,x2],[x3,x4,x5],......xn]。
[0114]
在一些实施例中,原始数据“那棵树看起来生气了”将被编码器转化为一个多维的词向量集,再参与到后面的计算主体的特征计算。得到了经过编码器处理后的词向量后,深度学习模型的计算主体即是其本身的网络结构,通过常见的卷积、循环以及注意力机制的计算单元后,得到经过非线性变换处理后的特征向量输出。
[0115]voutput
=[v
output1
,v
output2
....v
outputn
]
[0116]
其中,v
output1
,v
output2
....v
outputn
为特征向量的字符,v
output
为特征向量,为了得到中文分词所需要标签序列,我们需要将特征向量v
output
进行解码,比如使用softmax函数分
类处理,计算每个特征向量的字符对应的成句路径的概率分布,再取最大概率的标签作为解码结果,或者采用条件随机场对整句进行建模,求解使得整个标签序列概率最大的标签排列,而求解过程则同样可以采用基于动态规划的维特比算法进行计算简化。
[0117]
如图5所示,为了便于针对上游的自然语言处理的任务,便于进行模块化部署和调用,在一些实施例中,自然语言处理装置能够支持多任务模型,其编码器、计算主体以及解码器分为:syntacticparser,lexicalanalyzer,和generaltools。其中,编码器syntacticparser能够支持依存句法分析功能,可包括用于编码的基础basicparser单元和用于向量化的boostparser单元;计算主体lexicalanalyzer能够进行分词特征、实体特征、词性特征等特征计算,多种所述算法模型可以包括传统机器学习的k最邻近(k-nearestneighbor,knn)分类算法、支持向量机(support vector machine,svm)算法,或者,深度学习的长短期记忆网络(long short-term memory,lstm)等算法;解码器generaltools包括多个工具,能够实现分类处理。根据上游任务类型的特性以及原始数据的数据类型,选择编码器、计算主体以及解码器的组合形式,构成多任务模型的形式,即可比较容易地选择可统一训练的、便于耦合的计算主体,解决现有技术中开发框架不易耦合,改善难以将多个模型进行协同的问题,还可以根据输入和输出数据的类型,将不同类型的算法模型进行有机结合,例如,能够把机器学习算法模型与深度学习算法模型通过模块化的方式结合,让结合后的模型具有多个解决方案的实施可能性,可根据具体应用场景选择机器学习算法模型和/或深度学习算法模型。
[0118]
根据本公开的实施例还提供了一种能够实现上述方法的电子设备或者计算机设备。所属技术领域的技术人员能够理解,本发明的执行主体包括但不限于系统、方法或程序产品。因此,本发明的执行主体可以具体实现为以下执行或者实施形式,即:硬件实施方式、软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”、“系统”、“设备”或者“装置”。
[0119]
下面参照图6来描述根据本发明的这种实施方式的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图6所示,电子设备600以通用计算机设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630。其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“自然语言处理方法”部分中描述的根据本发明各种示例性实施方式的步骤。存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)621和/或高速缓存存储单元622,还可以进一步包括只读存储单元(rom)623。存储单元620还可以包括具有一组(至少一个)程序模块625的程序/实用工具624,这样的程序模块625包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。电子设备600也可以与一个或多个外部设备800(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调
器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行,比如与显示单元640通信。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid(redundant arrays of independent disks/磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
[0120]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算机设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
[0121]
根据本公开实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,当所述计算机可读指令被计算机执行时,使计算机执行本说明书上述的自然语言处理方法。
[0122]
在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
[0123]
在本发明中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,
或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0124]
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
再多了解一些

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

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

相关文献