CN111274824B - 自然语言处理方法、装置、计算机设备和存储介质 - Google Patents

自然语言处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111274824B
CN111274824B CN202010065067.9A CN202010065067A CN111274824B CN 111274824 B CN111274824 B CN 111274824B CN 202010065067 A CN202010065067 A CN 202010065067A CN 111274824 B CN111274824 B CN 111274824B
Authority
CN
China
Prior art keywords
context
natural language
model
language processing
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010065067.9A
Other languages
English (en)
Other versions
CN111274824A (zh
Inventor
赵维真
礼慧
王德华
郭萌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wensihai Huizhike Technology Co ltd
Original Assignee
Wensihai Huizhike Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wensihai Huizhike Technology Co ltd filed Critical Wensihai Huizhike Technology Co ltd
Priority to CN202010065067.9A priority Critical patent/CN111274824B/zh
Publication of CN111274824A publication Critical patent/CN111274824A/zh
Application granted granted Critical
Publication of CN111274824B publication Critical patent/CN111274824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本申请涉及一种自然语言处理方法、装置、计算机设备和存储介质。所述方法包括:接收上传的用户意图信息,用户意图信息包括已标注上下文以及已标注上下文对应的领域;根据已标注上下文的领域确定目标模型组件;初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型;接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对所述待处理上下文进行自然语言处理。采用本方法能够减少局限性提高适用性。

Description

自然语言处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种自然语言处理方法、装置、计算机设备和存储介质。
背景技术
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理思想的开端于图灵在1950年提出的“图灵测试”开始。随着不断的发展,在20世纪50年代到70年代时,自然语言处理主要就可以采用基于规则的方法进行处理。但是由于规则不可能覆盖所有语句,并且还要求开发者同时精通计算机和语言学,所以此时无法从根本上将自然语言理解实用化。在70年代以后,随着互联网的高速发展、语料库不断的丰富以及硬件不断更新完善,自然语言处理基于统计的方法便逐渐代替了基于规则的方法。而后发展至今,在图像识别和语音识别领域的成果激励下,人们也逐渐开始引入深度学习来做自然语言处理研究,将深度学习与自然语言处理的结合推向了高潮。
然而,现有基于深度学习用于对自然语言进行处理的模型均是由专业开发者研发得到,大部分都是针对特定的业务所开发,具有一定的局限性,从而降低了适用性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够降低局限性提高适用性的自然语言处理方法、装置、计算机设备和存储介质。
一种自然语言处理方法,所述方法包括:
接收上传的用户意图信息,所述用户意图信息包括已标注上下文以及所述已标注上下文对应的领域;
根据所述已标注上下文的领域确定目标模型组件;
初始化所述目标模型组件后,利用所述已标注上下文对所述目标模型组件进行意图训练,得到与所述用户意图信息对应的自然语言处理模型;
接收与所述已标注上下文的领域相同的待处理上下文,利用所述自然语言处理模型对所述待处理上下文进行自然语言处理。
在其中一个实施例中,利用所述已标注上下文对所述目标模型组件进行意图训练,得到与所述用户意图信息对应的自然语言处理模型,包括:
对已标注上下文进行数量分类,得到多组的训练上下文;
利用所述已标注上下文对所述目标模型组件进行意图训练,得到所述已标注上下文对应的第一初始模型;
利用各所述训练上下文分别对所述目标模型组件进行意图训练,得到各所述训练上下文对应的第二初始模型;
当存在性能优于所述第一初始模型的第二初始模型时,从所述已标注上下文中获取与所述第二初始模型的训练上下文的差异上下文;
利用所述差异上下文迭代训练所述第一初始模型,得到自然语言处理模型。
在其中一个实施例中,所述目标模型组件的生成方法,包括:
获取目标组件,并确定所述目标组件的调用顺序;
根据所述调用顺序将所述目标组件进行组合,得到初始模型组件;
对所述初始模型组件进行基础训练,得到目标模型组件。
在其中一个实施例中,所述利用所述自然语言处理模型对所述待处理上下文进行自然语言处理,包括:
根据自定义词典对所述待处理上下文进行分词,得到待处理字词;
利用所述自然语言处理模型的词向量组件,获取所述待处理字词的词向量;
基于所述词向量,利用所述自然语言处理模型的分类组件和命名实体识别组件分别对所述待处理上下文进行文本分类和命名实体识别。
在其中一个实施例中,所述方法还包括:
将所述自然语言处理模型虚拟化部署到虚拟容器中;
所述虚拟容器接收对所述自然语言处理模型的访问;所述虚拟容器的数量根据所述访问的数量动态增加。
在其中一个实施例中,所述方法还包括:
将所述自然语言处理模型持久化至云端存储,由所述云端接收对所述自然语言处理模型的访问。
在其中一个实施例中,将所述自然语言处理模型持久化至云端存储,包括:
利用持久化接口将所述自然语言处理模型的结构以及各节点权重导出至指定的文件中;
将所述文件存储至云端。
一种自然语言处理装置,所述装置包括:
接收模块,用于接收上传的用户意图信息,所述用户意图信息包括已标注上下文以及所述已标注上下文对应的领域;
确定模块,用于根据所述已标注上下文的领域确定目标模型组件;
训练模块,用于初始化所述目标模型组件后,利用所述已标注上下文对所述目标模型组件进行意图训练,得到与所述用户意图信息对应的自然语言处理模型;
处理模块,用于接收与所述已标注上下文的领域相同的待处理上下文,利用所述自然语言处理模型对所述待处理上下文进行自然语言处理。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述自然语言处理方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述自然语言处理方法的步骤。
上述自然语言处理方法、装置、计算机设备和存储介质,接收到包括已标注上下文以及对应领域的用户意图信息后,根据用户意图信息中的领域确定目标模型组件,然后利用已标注上下文对目标模型组件机进行意图训练得到对应的自然语义处理模型,进而利用该自然语义处理模型对上下文进行自然语言处理。由于该方法能够根据用户的意图训练对应的自然语言处理模型去进行自然语言处理,降低了自然语言处理的局限性,提高了适用性。
附图说明
图1为一个实施例中自然语言处理方法的应用环境图;
图2为一个实施例中自然语言处理方法的流程示意图;
图3为一个实施例中意向训练的流程结构示意图;
图4为一个实施例中利用自然语言处理模型对待处理上下文进行自然语言处理步骤的流程示意图;
图5为一个实施例中自然语言处理装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的自然语言处理方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104通过网络进行通信。当终端102接收到用户上传的用户意图信息之后,可以由终端102单独实现上述自然语言处理方法。也可以由终端102将接收到的用户意图信息发送给服务器104,由服务器104单独实现上述自然语言处理方法。以终端102为例,终端102接收上传的用户意图信息,用户意图信息包括已标注上下文以及已标注上下文对应的领域;终端102根据已标注上下文的领域确定目标模型组件;终端102初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型;终端102接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对待处理上下文进行自然语言处理。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种自然语言处理方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤S202,接收上传的用户意图信息,用户意图信息包括已标注上下文以及所述已标注上下文对应的领域。
其中,意图通常是指要实现的目标和方法。在本实施例中,意图是指用户对自然语言处理模型的需求。所以,用户意图信息则是用户用于告知终端其所需要的自然语言处理模型的相关信息。终端通过用户上传的用户意图信息即可反馈给用户所需要的自然语言处理模型。已标注上下文是已经被标注过的文本,领域是指已标注上下文对应的业务领域,例如政务领域、商务领域等。
具体地,用户可以通过与终端连接的输入设备,将用户意图信息上传安装于终端的自然语言平台中,终端即可接收到用户上传的用户意图信息。例如,用户首先将已标注好的上下文上传至自然语言平台,然后通过对自然语言平台的终端界面进行点击操作,从自然语言平台所提供的领域中选择需要的领域。当点击操作完成时,终端即可捕捉获取到用户上传的已标注上下文和所点击的领域,得到用户意图信息。
步骤S204,根据已标注上下文的领域确定目标模型组件。
其中,目标模型组件是安装于终端中的自然语言平台所提供的模型组件。针对不同的领域,自然语言平台提供不同的模型组件。由于组件是指对数据和方法的简单封装。因此,本实施例的目标模型组件可以理解为是还未经过意图训练的基础模型。
具体地,当终端获取到用户意图信息之后,通过用户意图信息中用户所选择的领域调用对应的模型组件,得到目标模型组件。
步骤S206,初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型。
其中,意图训练是指根据用户意图信息对目标模型组件再次进行训练的过程。经过意图训练后的模型组件能够得到满足用户需求的自然语言处理模型。
具体地,当得到与用户所选领域相同的目标模型组件之后,首先对目标模型组件进行初始化,例如管道初始化等,做好进行意图训练的准备。然后,将用户上传的已标注上下文输入至目标模型组件。目标模型组件通过对已标注上下文进行处理,调整目标模型组件中各节点的权重以及其他参数,从而完成对目标模型组件的意图训练,得到与用于意图信息对应的自然语言处理模型。
如图3所示,提供一种意图训练的结构示意图。参考图3,假设目标模型组件包括组件A、组件B和组件C,调用顺序为组件A-组件B-组件C。当接收到上下文之后,按照调用顺序对组件A、组件B和组件C进行管道初始化。然后按照顺序对组件A、组件B和组件C进行训练。上下文输入组件A进行训练,组件A的输出输入至组件B,组件B的输出输入至组件C。
步骤S208,接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对待处理上下文进行自然语言处理。
具体地,当通过意图训练得到与用户意图相同的自然语言处理模型之后,用户即可上传与已标注上下文的领域相同的待处理上下文给终端。当终端接受到待处理上下文时,调用意图训练好的自然语言处理模型对待处理上下文进行自然语言处理。自然语言处理包括文本分类和命名实体识别,文本分类是指对待处理上下文进行分类,命名体识别是指识别得到待处理上下文中出现的命名实体,例如地名、机构名、时间、货币等等。
另外,当意图训练得到自然语言处理模型之后,还能够通过迁移学习的方法将其迁移到同垂直领域其他语料上的训练。而随着垂直领域语料的增加,能够提升模型的表现。
上述自然语言处理方法,接收到包括已标注上下文以及对应领域的用户意图信息后,根据用户意图信息中的领域确定目标模型组件,然后利用已标注上下文对目标模型组件机进行意图训练得到对应的自然语义处理模型,进而利用该自然语义处理模型对上下文进行自然语言处理。由于该方法能够根据用户的意图训练对应的自然语言处理模型去进行自然语言处理,降低了自然语言处理的局限性,提高了适用性。
在一个实施例中,当意图训练得到自然语言处理模型之后,还包括:将自然语言处理模型虚拟化部署到虚拟容器中;虚拟容器接收对自然语言处理模型的访问;虚拟容器的数量根据访问的数量动态增加。
具体地,当根据用户的用户意图信息训练得到指定领域的自然语言处理模型之后,可以通过虚拟化技术将该自然语言处理模型进行部署发布,以供其他平台的用户使用。首先按需为自然语言处理模型分配CPU(central processing unit,中央处理器)资源和磁盘空间。然后基于分配的CPU资源和磁盘空间,通过虚拟容器技术对自然语言处理模型进行虚拟化,将自然语言处理模型部署分布到虚拟容器服务中。例如通过Docker(应用容器引擎)容器技术进行虚拟化,部署在Kubernetes(容器编排引擎)容器服务器中。当其他用户需要调用自然语言处理模型时,即可通过访问虚拟容器调用自然语言处理模型进行自然语言处理。在本实施例中,通过虚拟化技术能够很好的实现与硬件的隔离。另外,当访问的数量增大时,还可以通过负载均衡的方式动态的增加虚拟容器的个数,从而实现高并发的访问,加快响应速度。
在一个实施例中,还可以通过将自然语言处理模型存储至云端供其他平台用户下载使用,具体包括:将自然语言处理模型持久化至云端存储,由云端接收对自然语言处理模型的访问。
具体地,利用持久化接口可以实现将自然语言模型持久化至云端存储。持久化接口可以是开源软件库提供的接口,例如TensorFlow提供的api.Tf.export savedmodel。而云端存储可以是不同平台提供的不同存储,例如Azure(微软云服务器)的Blob(对象)存储、AWS(亚马逊云服务)的S3存储、以及Google Cloud(谷歌云)的Blob存储等等。通过api.Tf.export savedmodel将自然语言处理模型的整个结构和节点权重导出到一个json(JavaScript Object Notation,JS对象简谱)格式压缩之后的二进制文件进行存储。当用户从云端下载获取到该二进制文件后,通过相应的TensorFlow.api就可以实现模型的加载。
在本实施例中,通过将模型持久化至云端存储,满足不同用户的使用需求,实现多样化。并且,将意图训练后的模型存储至云端供用户下载使用,还可以减轻本地设备的负荷。
在一个实施例中,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型具体包括:对已标注上下文进行数量分类,得到多组的训练上下文;利用已标注上下文对目标模型组件进行意图训练,得到已标注上下文对应的第一初始模型;利用各训练上下文分别对目标模型组件进行意图训练,得到各训练上下文对应的第二初始模型;当存在性能优于第一初始模型的第二初始模型时,从已标注上下文中获取与第二初始模型的训练上下文的差异上下文;利用差异上下文迭代训练第一初始模型,得到自然语言处理模型。
其中,数量分类是指根据预设划分规则将不同数量的已标注上下文分为一类。例如已标注上下文有30篇,且预设划分规则为抽取一篇上下文,剩余的上下文为一类。那么,对30篇已标注上下文进行分类时,从30篇中选择29篇划为一类,一共就可以得到30个类。第一初始模型是未分类的已标注上下文,也就是所有的已标注上下文训练得到的模型。第二初始模型是分类后各类已标注上下文训练得到的模型。差异上下文是指未分类的已标注上下文与已分类的已标注上下文不同的上下文。例如,未分类的是30篇已标注上下文,而分类的是29篇已标注上下文,那差异上下文就是除29篇之外的那一篇上下文。
具体地,假设共有三篇已标注上下文,以及三篇已标注上下文的编号分别是1,2,3。当基于抽取一篇的划分规则进行分类时,则一共能够得到3类,分别为(1,2)、(1,3)(2,3)。然后,利用已标注上下文(1,2,3)训练目标模型组件得到第一初始模型。利用已标注上下文(1,2)训练目标模型组件得到第二初始模型1,利用已标注上下文(1,3)训练目标模型组件得到第二初始模型2,利用已标注上下文(2,3)训练目标模型组件得到第二初始模型3。通过对第一初始模型、第二初始模型1、第二初始模型2以及第二初始模型3进行模型性能评估。当第一初始模型的性能均优于第二初始模型1、第二初始模型2以及第二初始模型3时,表示已标注上下文1,2,3中不存在效果不好的训练数据,将第一初始模型作为意图训练得到的自然语言处理模型。而当存在任意一个第二初始模型的性能优于第一初始模型时,表示已标注上下文1,2,3中存在效果不好的训练数据,即差异上下文。假设是第二初始模型1的性能优于第一初始模型,已知第二初始模型1对应的已标注上下文是(1,2),所以第一初始模型与第二初始模型1的差异上下文是已标注上下文3。当得到差异上下文之后,利用差异上下文对得到的第一初始模型再次进行训练,得到自然语言处理模型。
在本实施例中,通过查找效果不好的训练数据并利用其进行迭代训练,尤其是在训练数据较少的情况下,能够保证训练的效果,提高模型的性能。
在一个实施例中,提供一种模型组件的生成方法,具体包括:获取目标组件,并确定目标组件的调用顺序;根据调用顺序将目标组件进行组合,得到初始模型组件;对初始模型组件进行基础训练,得到目标模型组件。
其中,目标组件是组成目标模型组件的组件,包括但不限于有词向量组件、分类组件和识别组件。词向量组件是用于获取词向量的组件,分类组件是用于对上下文进行分类的组件,命名实体识别组件用于对上下文进行命名实体识别的组件。
在本实施例中,词向量组件为BERT(Bidirectional Encoder Representationsfrom Transformers,来自Transformers(谷歌开发的一款模型)的双向编码器)模型。分类组件包括但不限于Sklearn组件,Sklearn是python(蟒蛇)中的一个机器学习库、Mitie组件,Mitie是dlib机器学习库上的自然语言处理工具包、KeyWord(关键词匹配)组件、Embdding(词嵌入)组件。命名实体识别组件包括但不限于ner_spacy(Named EntityRecognition_spacy,spacy库的命名实体识别)组件、ner_mitie(Named EntityRecognition_Mitie,Mitie包的命名实体识别)、jieba_pseg_extractor(python中的jieba库内置的命名实体识别)组件、ner_duckling(facebook开源的命名实体识别)组件、ner_crf(Named Entity Recognition_conditional random field,条件随机场命名实体识别)、ner_bilstm_crf(Named Entity Recognition_Bi-long short term memory_conditional random field,双向长短期记忆网络加条件随机场命名实体识别)组件。
具体地,当生成目标模型组件时,获取目标组件。根据模型需求从目标组件中选取对应的组件。然后确定选择的组件的调用顺序,根据调用顺序将其进行组合得到初始模型组件。例如,从分类组件中选择Embdding组件、从识别组件中选择ner_bilstm_crf组件。然后,将词向量组件与Embdding组件和ner_bilstm_crf组件进行组合,所得到的初始模型组件包括BERT模型、Embdding组件和ner_bilstm_crf组件。而由于分类组件和命名实体识别组件是基于词向量进行处理,所以BERT模型的调用顺序在Embdding组件和ner_bilstm_crf组件之前。BERT模型输出的词向量作为Embdding组件和ner_bilstm_crf组件的输入。
当得到初始模型组件之后,对初始模型组件进行基础训练,得到目标组件模型。在本实施例中,基础训练主要是对BERT模型进行预训练,BERT模型的预训练可采用任意一种方法进行。对BERT模型进行基础训练得到目标模型组件之后,当后续根据用户意图信息对目标模型组件进行意图训练时,只需对目标模型组件中的BERT模型进行微调,无需做大幅度架构修改。
另外,基础训练时可以对接主流自然语言处理平台,将基础训练所用的训练语料输送到主流自然语言处理平台。利用与基础训练同样的训练语料对主流自然语言处理平台提供的算法模型进行训练,得到对应的模型。然后,将得到的模型与基础训练得到的目标模型组件进行比较,根据比较结果对目标模型组件进行调整,以提高目标模型组件的表现。主流自然语言处理平台包括但不限于微软、Facebook(脸书)以及谷歌等提供自然自然语言处理平台。
在一个实施例中,如图4所示,利用自然语言处理模型对待处理上下文进行自然语言处理,包括以下步骤:
步骤S402,根据自定义词典对待处理上下文进行分词,得到待处理字词。
具体地,自定义词典是指预先创建的词典,可以使用python的结巴分词(jieba)创建自己的词典,得到自定义词典。然后,根据所创建的词典对待处理的上下文进行分词,得到待处理字词。
步骤S404,利用自然语言处理模型的词向量组件,获取待处理字词的词向量。
步骤S406,基于词向量,利用自然语言处理模型的分类组件和命名实体识别组件分别对待处理上下文进行文本分类和命名实体识别。
具体地,词向量组件是BERT模型,BERT模型首先对待处理字词进行编码,包括对每个字进行编码,每个字的位置进行编码以及上下文进行编码。然后BERT模型通过attention(注意力机制)层和全连接网络层对得到的编码进行计算,得到对应的词向量。
当BERT模型得到的词向量之后,将得到的词向量分别输入至分类组件和命名体识别组件中进行分类和命名实体识别,确定待处理上下文的类别以及其所包括的命名实体。在本实施例中,分类组件优选Embdding组件,命名实体识别组件优选ner_bilstm_crf组件。ner_bilstm_crf组件是由双向长短期记忆网络层bilstm和条件随机场层crf组成。Crf在bilstm输出的标签的基础上,调整输出标签,使得标签结果顺序更为合理。
应该理解的是,虽然图2、4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种自然语言处理装置,包括:接收模块502、确定模块504、训练模块506和处理模块508,其中:
接收模块502,用于接收上传的用户意图信息,用户意图信息包括已标注上下文以及已标注上下文对应的领域。
确定模块504,用于根据已标注上下文的领域确定目标模型组件。
训练模块506,用于初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型。
处理模块508,用于接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对待处理上下文进行自然语言处理。
在一个实施例中,训练模块506还用于对已标注上下文进行数量分类,得到多组的训练上下文;利用已标注上下文对目标模型组件进行意图训练,得到已标注上下文对应的第一初始模型;利用各训练上下文分别对目标模型组件进行意图训练,得到各训练上下文对应的第二初始模型;当存在性能优于第一初始模型的第二初始模型时,从已标注上下文中获取与第二初始模型的训练上下文的差异上下文;利用差异上下文迭代训练第一初始模型,得到自然语言处理模型。
在一个实施例中,自然语言处理装置还包括生成模块,用于获取目标组件,并确定目标组件的调用顺序;根据调用顺序将目标组件进行组合,得到初始模型组件;对初始模型组件进行基础训练,得到目标模型组件。
在一个实施例中,处理模块508还用于根据自定义词典对待处理上下文进行分词,得到待处理字词;利用自然语言处理模型的词向量组件,获取待处理字词的词向量;基于词向量,利用自然语言处理模型的分类组件和命名实体识别组件分别对待处理上下文进行文本分类和命名实体识别。
在一个实施例中,自然语言处理装置还包括发布模块,用于将自然语言处理模型虚拟化部署到虚拟容器中;虚拟容器接收对自然语言处理模型的访问;虚拟容器的数量根据访问的数量动态增加。
在一个实施例中,发布模块还用于将自然语言处理模型持久化至云端存储,由云端接收对自然语言处理模型的访问。
在一个实施例中,发布模块还用于利用持久化接口将所述自然语言处理模型的结构以及各节点权重导出至指定的文件中;将文件存储至云端。
关于自然语言处理装置的具体限定可以参见上文中对于自然语言处理方法的限定,在此不再赘述。上述自然语言处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种自然语言处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收上传的用户意图信息,用户意图信息包括已标注上下文以及已标注上下文对应的领域;
根据已标注上下文的领域确定目标模型组件;
初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型;
接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对待处理上下文进行自然语言处理。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对已标注上下文进行数量分类,得到多组的训练上下文;利用已标注上下文对目标模型组件进行意图训练,得到已标注上下文对应的第一初始模型;利用各训练上下文分别对目标模型组件进行意图训练,得到各训练上下文对应的第二初始模型;当存在性能优于第一初始模型的第二初始模型时,从已标注上下文中获取与第二初始模型的训练上下文的差异上下文;利用差异上下文迭代训练第一初始模型,得到自然语言处理模型。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取目标组件,并确定目标组件的调用顺序;根据调用顺序将目标组件进行组合,得到初始模型组件;对初始模型组件进行基础训练,得到目标模型组件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据自定义词典对待处理上下文进行分词,得到待处理字词;利用自然语言处理模型的词向量组件,获取待处理字词的词向量;基于词向量,利用自然语言处理模型的分类组件和命名实体识别组件分别对待处理上下文进行文本分类和命名实体识别。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将自然语言处理模型虚拟化部署到虚拟容器中;虚拟容器接收对自然语言处理模型的访问;虚拟容器的数量根据访问的数量动态增加。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将自然语言处理模型持久化至云端存储,由云端接收对自然语言处理模型的访问。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
利用持久化接口将所述自然语言处理模型的结构以及各节点权重导出至指定的文件中;将文件存储至云端。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收上传的用户意图信息,用户意图信息包括已标注上下文以及已标注上下文对应的领域;
根据已标注上下文的领域确定目标模型组件;
初始化目标模型组件后,利用已标注上下文对目标模型组件进行意图训练,得到与用户意图信息对应的自然语言处理模型;
接收与已标注上下文的领域相同的待处理上下文,利用自然语言处理模型对待处理上下文进行自然语言处理。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对已标注上下文进行数量分类,得到多组的训练上下文;利用已标注上下文对目标模型组件进行意图训练,得到已标注上下文对应的第一初始模型;利用各训练上下文分别对目标模型组件进行意图训练,得到各训练上下文对应的第二初始模型;当存在性能优于第一初始模型的第二初始模型时,从已标注上下文中获取与第二初始模型的训练上下文的差异上下文;利用差异上下文迭代训练第一初始模型,得到自然语言处理模型。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取目标组件,并确定目标组件的调用顺序;根据调用顺序将目标组件进行组合,得到初始模型组件;对初始模型组件进行基础训练,得到目标模型组件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据自定义词典对待处理上下文进行分词,得到待处理字词;利用自然语言处理模型的词向量组件,获取待处理字词的词向量;基于词向量,利用自然语言处理模型的分类组件和命名实体识别组件分别对待处理上下文进行文本分类和命名实体识别。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将自然语言处理模型虚拟化部署到虚拟容器中;虚拟容器接收对自然语言处理模型的访问;虚拟容器的数量根据访问的数量动态增加。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将自然语言处理模型持久化至云端存储,由云端接收对自然语言处理模型的访问。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
利用持久化接口将所述自然语言处理模型的结构以及各节点权重导出至指定的文件中;将文件存储至云端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种自然语言处理方法,所述方法包括:
接收上传的用户意图信息,所述用户意图信息包括已标注上下文以及所述已标注上下文对应的领域;
根据所述已标注上下文的领域确定目标模型组件;
初始化所述目标模型组件后,对所述已标注上下文进行数量分类,得到多组的训练上下文;
利用所述已标注上下文对所述目标模型组件进行意图训练,得到所述已标注上下文对应的第一初始模型;
利用各所述训练上下文分别对所述目标模型组件进行意图训练,得到各所述训练上下文对应的第二初始模型;
当存在性能优于所述第一初始模型的第二初始模型时,从所述已标注上下文中获取与所述第二初始模型的训练上下文的差异上下文;
利用所述差异上下文迭代训练所述第一初始模型,得到自然语言处理模型;
接收与所述已标注上下文的领域相同的待处理上下文,利用所述自然语言处理模型对所述待处理上下文进行自然语言处理。
2.根据权利要求1所述的方法,其特征在于,所述目标模型组件的生成方法,包括:
获取目标组件,并确定所述目标组件的调用顺序;
根据所述调用顺序将所述目标组件进行组合,得到初始模型组件;
对所述初始模型组件进行基础训练,得到目标模型组件。
3.根据权利要求1所述的方法,其特征在于,所述利用所述自然语言处理模型对所述待处理上下文进行自然语言处理,包括:
根据自定义词典对所述待处理上下文进行分词,得到待处理字词;
利用所述自然语言处理模型的词向量组件,获取所述待处理字词的词向量;
基于所述词向量,利用所述自然语言处理模型的分类组件和命名实体识别组件分别对所述待处理上下文进行文本分类和命名实体识别。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述自然语言处理模型虚拟化部署到虚拟容器中;
所述虚拟容器接收对所述自然语言处理模型的访问;所述虚拟容器的数量根据所述访问的数量动态增加。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述自然语言处理模型持久化至云端存储,由所述云端接收对所述自然语言处理模型的访问。
6.根据权利要求5所述的方法,其特征在于,将所述自然语言处理模型持久化至云端存储,包括:
利用持久化接口将所述自然语言处理模型的结构以及各节点权重导出至指定的文件中;
将所述文件存储至云端。
7.一种自然语言处理装置,其特征在于,所述装置包括:
接收模块,用于接收上传的用户意图信息,所述用户意图信息包括已标注上下文以及所述已标注上下文对应的领域;
确定模块,用于根据所述已标注上下文的领域确定目标模型组件;
训练模块,用于初始化所述目标模型组件后,对所述已标注上下文进行数量分类,得到多组的训练上下文;利用所述已标注上下文对所述目标模型组件进行意图训练,得到所述已标注上下文对应的第一初始模型;利用各所述训练上下文分别对所述目标模型组件进行意图训练,得到各所述训练上下文对应的第二初始模型;当存在性能优于所述第一初始模型的第二初始模型时,从所述已标注上下文中获取与所述第二初始模型的训练上下文的差异上下文;利用所述差异上下文迭代训练所述第一初始模型,得到自然语言处理模型;
处理模块,用于接收与所述已标注上下文的领域相同的待处理上下文,利用所述自然语言处理模型对所述待处理上下文进行自然语言处理。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
生成模块,用于获取目标组件,并确定所述目标组件的调用顺序;根据所述调用顺序将所述目标组件进行组合,得到初始模型组件;对所述初始模型组件进行基础训练,得到目标模型组件。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202010065067.9A 2020-01-20 2020-01-20 自然语言处理方法、装置、计算机设备和存储介质 Active CN111274824B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010065067.9A CN111274824B (zh) 2020-01-20 2020-01-20 自然语言处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010065067.9A CN111274824B (zh) 2020-01-20 2020-01-20 自然语言处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111274824A CN111274824A (zh) 2020-06-12
CN111274824B true CN111274824B (zh) 2023-05-05

Family

ID=70999015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010065067.9A Active CN111274824B (zh) 2020-01-20 2020-01-20 自然语言处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111274824B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112133306B (zh) * 2020-08-03 2023-10-03 浙江百世技术有限公司 一种基于快递用户的应答方法、装置和计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522393A (zh) * 2018-10-11 2019-03-26 平安科技(深圳)有限公司 智能问答方法、装置、计算机设备和存储介质
CN110163257A (zh) * 2019-04-23 2019-08-23 百度在线网络技术(北京)有限公司 抽取结构化信息的方法、装置、设备和计算机存储介质
CN110287283A (zh) * 2019-05-22 2019-09-27 中国平安财产保险股份有限公司 意图模型训练方法、意图识别方法、装置、设备及介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726204B2 (en) * 2018-05-24 2020-07-28 International Business Machines Corporation Training data expansion for natural language classification

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109522393A (zh) * 2018-10-11 2019-03-26 平安科技(深圳)有限公司 智能问答方法、装置、计算机设备和存储介质
CN110163257A (zh) * 2019-04-23 2019-08-23 百度在线网络技术(北京)有限公司 抽取结构化信息的方法、装置、设备和计算机存储介质
CN110287283A (zh) * 2019-05-22 2019-09-27 中国平安财产保险股份有限公司 意图模型训练方法、意图识别方法、装置、设备及介质

Also Published As

Publication number Publication date
CN111274824A (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
US20220107799A1 (en) Semantic code retrieval using graph matching
US20200104367A1 (en) Vector Representation Based on Context
US11010664B2 (en) Augmenting neural networks with hierarchical external memory
US10387531B1 (en) Processing structured documents using convolutional neural networks
US20190236135A1 (en) Cross-lingual text classification
US20200125648A1 (en) Using machine learning to determine electronic document similarity
CN110222200A (zh) 用于实体融合的方法和设备
US11645513B2 (en) Unary relation extraction using distant supervision
US20200257679A1 (en) Natural language to structured query generation via paraphrasing
WO2017136665A1 (en) Augmenting neural networks with sparsely-accessed external memory
US11030402B2 (en) Dictionary expansion using neural language models
US20220004365A1 (en) Building pre-trained contextual embeddings for programming languages using specialized vocabulary
US11520829B2 (en) Training a question-answer dialog sytem to avoid adversarial attacks
US11562029B2 (en) Dynamic query processing and document retrieval
JPWO2019106965A1 (ja) 情報処理装置、情報処理方法、及びプログラム
US11687709B2 (en) Domain knowledge based feature extraction for enhanced text representation
CN114064852A (zh) 自然语言的关系抽取方法、装置、电子设备和存储介质
US11361031B2 (en) Dynamic linguistic assessment and measurement
CN111274824B (zh) 自然语言处理方法、装置、计算机设备和存储介质
US10949613B2 (en) Dynamic natural language processing
US20200134025A1 (en) Augmentation of a Text Representation Model
WO2023093909A1 (zh) 一种工作流节点推荐方法及装置
CN114880485A (zh) 阅读理解答案生成的方法、装置、计算机设备和存储介质
US11663402B2 (en) Text-to-vectorized representation transformation
US11557284B2 (en) Cognitive analysis for speech recognition using multi-language vector representations

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant