问答模型训练方法及装置、问答方法及装置与流程

文档序号:29627361发布日期:2022-04-13 14:51阅读:211来源:国知局
问答模型训练方法及装置、问答方法及装置与流程

1.本技术涉及人工智能技术领域,特别涉及一种问答模型训练方法及装置、问答方法及装置、计算设备和计算机可读存储介质。


背景技术:

2.人工智能(ai,artificial intelligence;)是指已工程化(即设计并制造)的系统感知环境的能力,以及获取、处理、应用和表示知识的能力。自然语言处理(nlp,natural language processing)是计算机科学领域与人工智能领域中的一个重要方向,是指用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工,它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理的具体表现形式包括机器翻译、文本摘要、文本分类、文本校对、信息抽取、语音合成、语音识别等。
3.随着人工智能技术的发展,自然语言处理被广泛应用于各种领域,例如政务信息检索、医疗咨询、在线教学、网络购物等。问答系统为用户提供了一个快速查询、检索的接口,用户在交互界面上提出问题,问答系统能够用准确、简洁的自然语言作以回答。问答系统是信息服务的一种高级形式,系统反馈给用户的不再是基于关键词匹配排序的文档列表,而是精准的自然语言答案,这和搜索引擎提供给用户模糊的反馈是不同的。在自然语言理解领域,自动问答和机器翻译、复述和文本摘要一起被认为是验证机器是否具备自然理解能力的四个任务。
4.当前的问答系统中,一般采用基于神经网络的问答方法,即预先基于海量的语料样本,对预设的神经网络模型进行训练,训练出一个问答模型,该问答模型为端到端的神经网络模型,在应用时,直接将用户输入的问题语句输入训练好的问答模型中,即可得到相应的回答语句。然而,由于语料样本是海量的,且具有较高的泛化程度,导致问答模型的训练过程耗时较长、所得到的回答语句的精准度不高。


技术实现要素:

5.有鉴于此,本技术实施例提供了一种问答模型训练方法及装置、问答方法及装置、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。
6.根据本技术实施例的第一方面,提供了一种问答模型训练方法,包括:
7.获取基于指定领域构建的语料库,其中,语料库包括大量的语料样本,语料样本携带语境标签;
8.基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集;
9.针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
10.可选地,在基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务
导向型的文本集的步骤之后,该方法还包括:
11.针对各文本集,利用语义分析算法,提取出该文本集中各语料样本的关键词,得到各语料样本的关键词组。
12.可选地,针对各文本集,利用语义分析算法,提取出该文本集中各语料样本的关键词,得到各语料样本的关键词组的步骤,包括:
13.针对各文本集,根据该文本集中各语料样本的词特征,利用语义分析算法,计算各语料样本中的词重要度;
14.针对各语料样本,根据该语料样本中的词重要度,提取词重要度高于预设阈值的关键词,组成该语料样本的关键词组。
15.可选地,语料样本包括提问样本和该提问样本对应的回答样本;
16.在针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型的步骤之后,该方法还包括:
17.获取实时问句,利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组;
18.将实时问句的关键词组与各文本集中各提问样本的关键词组分别进行比对,确定与实时问句相似度最高的第一提问样本及第一提问样本所属的第一文本集;
19.以实时问句作为输入、第一提问样本对应的回答样本作为标称信息,对第一文本集对应的问答模型进行训练,记录下本轮迭代训练的实时问句的关键词组;
20.返回执行获取实时问句,利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组的步骤,并结合已记录的各轮迭代训练的实时问句的关键词组,进行下一轮迭代,得到多轮迭代训练后的问答模型。
21.可选地,语境标签的添加方式为:利用lda模型,为语料库中的各语料样本添加语境标签。
22.可选地,语料样本还携带有时间标签;在基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集的步骤之前,该方法还包括:
23.根据各语料样本的时间标签,筛选出符合预设时间条件的语料样本;
24.基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集的步骤,包括:
25.基于符合所述预设时间条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
26.可选地,在基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集的步骤之前,该方法还包括:
27.利用预设的净化规则,筛选出符合预设净化条件的语料样本;
28.基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集的步骤,包括:
29.基于符合预设净化条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
30.可选地,语料样本包括提问样本和该提问样本对应的回答样本;
31.针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该
文本集对应的问答模型的步骤,包括:
32.针对各文本集,将该文本集中的提问样本输入预设神经网络,得到预测回答结果;
33.比较预测回答结果与提问样本对应的回答样本,得到差异值;
34.基于差异值,调整预设神经网络的网络参数,并返回执行将该文本集中的提问样本输入预设神经网络,得到预测回答结果的步骤,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止训练,确定网络参数调整后的预设神经网络为该文本集对应的问答模型。
35.可选地,预设神经网络为bilstm。
36.可选地,以实时问句作为输入、第一提问样本对应的回答样本作为标称信息,对第一文本集对应的问答模型进行训练的步骤,包括:
37.将实时问句输入第一文本集对应的问答模型,得到预测回答结果;
38.比较预测回答结果与第一提问样本对应的回答样本,得到差异值;
39.基于差异值,调整第一文本集对应的问答模型的模型参数,并返回执行将实时问句输入第一文本集对应的问答模型,得到预测回答结果的步骤,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止本轮对第一文本集对应的问答模型的训练。
40.根据本技术实施例的第二方面,提供了一种问答方法,包括:
41.获取提问语句;
42.将提问语句输入利用如本技术实施例第一方面提供的方法训练得到的问答模型中,得到提问语句对应的回答语句。
43.根据本技术实施例的第三方面,提供了一种问答模型训练装置,包括:
44.第一获取模块,被配置为获取基于指定领域构建的语料库,其中,语料库包括大量的语料样本,语料样本携带语境标签;
45.文本集建立模块,被配置为基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集;
46.训练模块,被配置为针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
47.根据本技术实施例的第四方面,提供了一种问答装置,包括:
48.第二获取模块,被配置为获取提问语句;
49.答复模块,被配置为将提问语句输入利用如本技术实施例第一方面提供的方法训练得到的问答模型中,得到提问语句对应的回答语句。
50.根据本技术实施例的第五方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,处理器执行计算机指令时实现本技术实施例第一方面所提供方法的步骤或者本技术实施例第二方面所提供方法的步骤。
51.根据本技术实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现本技术实施例第一方面所提供方法的步骤或者本技术实施例第二方面所提供方法的步骤。
52.本技术实施例中,获取基于指定领域构建的语料库,语料库包括大量的语料样本,语料样本携带语境标签,基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集,针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行
训练,得到该文本集对应的问答模型。基于各语料样本的语境标签,将海量的语料样本进行划分,建立了多个任务导向型的文本集,每一个文本集中的语料样本具有相同的任务类型,这样,针对各文本集分别进行训练,得到各文本集对应的问答模型,每个文本集对应的问答模型的训练耗时更短,且一个问答模型针对的是一种任务类型,针对性更强,从而能够提高模型应用的精准度。
附图说明
53.图1是本技术实施例提供的一种问答模型训练方法的流程示意图;
54.图2是本技术实施例提供的另一种问答模型训练方法的流程示意图;
55.图3是本技术实施例提供的再一种问答模型训练方法的流程示意图;
56.图4是本技术实施例提供的一种问答方法的流程示意图;
57.图5是本技术实施例提供的一种问答模型训练装置的结构示意图;
58.图6是本技术实施例提供的一种问答装置的结构示意图;
59.图7是本技术实施例提供的一种计算设备的结构框图。
具体实施方式
60.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。
61.在本技术一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术一个或多个实施例。在本技术一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本技术一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
62.应当理解,尽管在本技术一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“响应于确定”。
63.首先,对本发明一个或多个实施例涉及的名词术语进行解释。
64.智能多轮问答系统:政务等领域在线办事服务十分流行,全面覆盖领域内知识的智能多轮问答系统有着极为迫切的现实需求,该系统涉及到多文档的知识抽取摘要,而信息的跨问答抽取和深度融合则是满足复杂问题回答的必要方式。
65.长短期记忆网络(lstm,long short-term memory)和双向长短期记忆网络(bilstm,bi-directional long short-term memory):lstm是循环神经网络(rnn,recurrent neural network)的一种,由于其设计的特点,非常适合用于对时序数据的建模,如文本数据。bilstm是由前向lstm和后向lstm组合而成。lstm和bilstm在自然语言处理任务中都常被用来建模上下文信息,并生成对应的隐藏层向量表征。
66.向量相似度:通过两个向量之间的点乘,可以计算这两个向量之间的相似度。
67.信息融合:定义为得到一个简洁流畅的、能够反映多文档中所有问题关联句子共同信息的融合句,其目的是得到相关句子的公共信息,从而反映多文档中符合用户问题需求的重要信息。
68.为了解决问答模型的训练过程耗时较长、所得到的回答语句的精准度不高的问题,本技术实施例提供了一种问答模型训练方法及装置、问答方法及装置、计算设备和计算机可读存储介质,在下面的实施例中将逐一进行详细说明。
69.图1示出了本技术实施例提供的一种问答模型训练方法的流程示意图,该方法具体包括如下步骤。
70.s102,获取基于指定领域构建的语料库,其中,语料库包括大量的语料样本,语料样本携带语境标签。
71.本技术实施例中,问答模型训练方法的执行主体可以是问答模型的训练设备、具有智能问答功能的智能设备等。在进行问答模型训练之前,需要获取包括海量语料样本的语料库,该语料库是基于指定领域预先构建的,其中,指定领域是指提供特定服务的领域,特定服务涉及如下服务中的至少一种:政务服务、民生服务、金融服务,则指定领域可以是政务领域、医疗领域、银行领域等。一般情况下,获取语料库的方式可以是接收人工输入的指定领域下的海量语料样本组成语料库,也可以是从其他数据获取设备或者数据库中读取指定领域下的语料样本组成语料库。
72.语料样本一般是指一句话、一段文字、一篇文章等,为了实现问答功能,语料样本中通常包括提问样本和回答样本,提问样本和回答样本之间存在对应关系,例如,提问样本为“请问北京市朝阳区住房公积金在哪办理?”,对应的回答样本为“北京市朝阳区百子湾西里402楼109号”。本技术实施例的语料库中的语料样本是在指定领域的垂直领域下生成的,针对性更强,保证最终训练出来的问答模型对指定领域的辨识度更高。
73.语料样本携带有语境标签,语境标签表明了该语料样本的语言环境和主题主旨,而同一词在不同的语言环境和主题主旨下,所代表的词义不同,例如,在“广播电台”语料中,广播具有无线电广播的词义,而在“设备广播信息”语料中,广播具有传输、发送的词义。一般是将语料样本的文档主题提取出来作为该语料样本的语境标签,语境标签可以是人工标记的,也可以是利用语境分析工具得到的。由于语境标签表明了语料样本的语言环境和主题主旨,因此,语境标签影响着语料样本中各词语的词义,进而影响着语料样本的任务类型。
74.在本技术实施例的一种实现方式中,语境标签的添加方式可以为:利用隐含狄利克雷分布(lda,latent dirichlet allocation)模型,为语料库中的各语料样本添加语境标签。lda是一种主题模型(topic model),它可以将文档集中每篇文档的主题按照概率分布的形式给出,属于无监督学习算法。
75.lda模型是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包括词、主题和文档三层结构,所谓生成模型,就是说,认为一篇文章的每个词都是通过“以一定概率选择了某个主题,并从主题中以一定概率选择某个词语”这样一个过程得到,文档到主题服从多项式分布,主题到词服从多项式分布。这里所提及的主题即为语境。
76.s104,基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
77.语料样本的实际语境影响着语料样本中各词的词义,进而影响着语料样本的任务类型,例如是询问公积金查询的任务、社保查询的任务等类型,基于各语料样本的语境标签,可以利用预设的任务分类算法,建立多个任务导向型的文本集。具体的方式可以为:对各语料样本中的词进行识别,识别出语料样本中的名词、动词、名词短语、动词短语、属性修饰词等,然后结合语料样本的语境标识,确定每一个语料样本的场景导向任务类别,将同一个任务类别的语料样本组成一个文本集,则可得到多个任务导向型的文本集。其中,在构建语料样本的时候,可以给语料样本中各词添加上词性标签,则可以通过识别各词的词性标签确定出语料样本中的名词、动词、名词短语、动词短语、属性修饰词。当然,也可以采用基于神经网络的方法,进行词性识别,即预先基于标注有词性的样本词训练得到词性识别模型,然后对语料样本进行分词(可以采用jieba等分词工具),再将各词分别输出训练好的词性识别模型,即可识别出语料样本中的名词、动词、名词短语、动词短语、属性修饰词等。
78.在本技术实施例的一种实现方式中,语料样本还携带有时间标签;在s104之前,该问答模型训练方法还可以包括如下步骤:根据各语料样本的时间标签,筛选出符合预设时间条件的语料样本。
79.相应的,s104具体可以为:基于符合预设时间条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
80.语料样本携带的时间标签表征了该语料样本采集的时间,例如是2020年12月份生成的语料样本、2021年1月份生成的语料样本等,在进行问答模型训练时,为了保证语料样本的适应性,一般会选择近段时间的语料样本,例如,选择最近两个月生成的语料样本,则可以相应的设置预设时间条件(例如为某年某月至某年某月),这样就可以根据各语料样本的时间标签,筛选出符合预设时间条件的语料样本,然后基于符合预设时间条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。这样,能够更精准地实现时间线匹配,满足问答模型训练的适应性要求。
81.在本技术实施例的一种实现方式中,在s104之前,该问答模型训练方法还可以包括如下步骤:利用预设的净化规则,筛选出符合预设净化条件的语料样本。
82.相应的,s104具体可以为:基于符合预设净化条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
83.在实际应用时,需要对一些涉及色情、暴力、隐私等因素的内容进行筛除,以保证问答系统的纯净,提高用户的使用体验,所以需要预先设置净化规则,净化规则中包括多个预设净化条件,该净化条件可以是语料样本中不得含有具有特殊词义的词语、短语等,这里提及的特殊词义包括具有色情、暴力、隐私等属性的敏感词义、争议词义。通过对语料样本中的各词进行词义分析,判断语料样本中是否存在上述词义的词或短语,其中,词义分析可以采用nlp语义分析或者词义分析工具,如果存在则说明不符合预设净化条件,需要筛除;如果不存在则说明符合预设净化条件,进行保留,后续则基于符合预设净化条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。这样,实现了对敏感词、争议短语的过滤。
84.s106,针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
85.在建立多个任务导向型的文本集后,针对各文本集,可以利用该文本集中的各语
料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
86.在本技术实施例的一种实现方式中,预设神经网络可以为bilstm。
87.rnn和lstm等文本提取模型都只能依据之前时刻的时序信息来预测下一时刻的输出,但在有些问题中,当前时刻的输出不仅和之前的状态有关,还可能和未来的状态有关系,比如预测一句话中缺失的单词不仅需要根据前文来判断,还需要考虑它后面的内容,真正做到基于上下文判断。bilstm就能很好解决前后文长距离依赖的难点,因此,在本技术实施例中,预设神经网络采用bilstm,以实现长段落语境的双向信息提取融合。
88.在本技术实施例的一种实现方式中,语料样本包括提问样本和该提问样本对应的回答样本。s106具体可以通过如下步骤实现:
89.第一步,针对各文本集,将该文本集中的提问样本输入预设神经网络,得到预测回答结果;
90.第二步,比较预测回答结果与提问样本对应的回答样本,得到差异值;
91.第三步,基于差异值,调整预设神经网络的网络参数,并返回执行第一步,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止训练,确定网络参数调整后的预设神经网络为该文本集对应的问答模型。
92.在得到预测回答结果之后,将预测回答结果与提问样本对应的回答样本进行比较,可以得到二者的相似度(可以理解为预测回答结果和回答样本的文本重合度),得到相似度后,即可相应地得到差异值,例如,相似度达到80%,则差异值可以记为0.2。在进行网络参数调整时,主要调整的是神经网络中网络层的权重。经过不断的迭代训练,可以得到精度较高的问答模型,当然在本技术实施例中,针对每一个文本集可以单独的存在一个问答模型,也可以针对每个文本集得到对应的问答模型后,再将各问答模型进行整合,得到一个总体的问答模型,具体整合的过程可以采用模型参数融合、并联等方式。具体地,模型参数融合可以理解为将各问答模型的模型参数进行加权平均,得到一组模型参数,作为最终的问答模型的参数;并联就是将各问答模型并联,组成一个总体的问答模型。
93.应用本技术实施例提供的方案,基于各语料样本的语境标签,将海量的语料样本进行划分,建立了多个任务导向型的文本集,每一个文本集中的语料样本具有相同的任务类型,这样,针对各文本集分别进行训练,得到各文本集对应的问答模型,每个文本集对应的问答模型的训练耗时更短,且一个问答模型针对的是一种任务类型,针对性更强,从而能够提高模型应用的精准度。
94.基于图1所示实施例,图2示出了本技术实施例提供的另一种问答模型训练方法的流程示意图,该方法具体包括如下步骤。
95.s202,获取基于指定领域构建的语料库,其中,语料库包括大量的语料样本,语料样本携带语境标签。
96.s204,基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
97.s205,针对各文本集,利用语义分析算法,提取出该文本集中各语料样本的关键词,得到各语料样本的关键词组。
98.在建立多个任务导向型的文本集后,针对各文本集,可以利用语义分析算法,提取出该文本集中各语料样本的关键词,得到各语料样本的关键词组,进一步地,对关键词组进
行向量化,可建立初始化语义向量权重矩阵。其中,语义分析算法可以是基于深度学习的实体识别模型,也可以是基于语境的语义分析,关键词可以包括名词性原词、动词短语词干、介词、数词、形容词等。
99.在本技术实施例的一种实现方式中,s205具体可以为:针对各文本集,根据该文本集中各语料样本的词特征,利用语义分析算法,计算各语料样本中的词重要度;针对各语料样本,根据该语料样本中的词重要度,提取词重要度高于预设阈值的关键词,组成该语料样本的关键词组。
100.在进行语义分析时,可以根据词特征(例如是政务领域的专有名词、与提问有关的动词等)计算出各语料样本中的词重要度,词重要度表明了词在进行问答时的重要程度,一般根据词在语料样本中的位置、重复出现的次数、词义、词性等参数综合分析得到,因此,词重要度越高的词越应该被提取出来,因此在得到语料样本中的词重要度后,可根据词重要度,从语料样本中提取出词重要度高于预设阈值的关键词,组成语料样本的关键词组。
101.s206,针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
102.由于是基于语料库中的语料样本进行训练的,语料库中的语料样本是历史数据或者人工筛选的数据,因此经过上述步骤,可以得到一个粗粒度的问答模型,为了进一步提高问答模型的精度,下面可以进一步地对问答模型进行细粒度的训练。
103.上述s202、s204、s206与图1所示实施例中的s102、s104、s106相同,具体可参见图1所示实施例,这里不再赘述。
104.s208,获取实时问句,利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组。
105.训练所使用的样本除了从语料库来以外,还可以来自实时地采集,因此,在本技术实施例中,还可以获取实时问句,然后利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组。具体的提取过程与s105提取关键词的过程相同或相似,这里不再赘述。
106.s210,将实时问句的关键词组与各文本集中各提问样本的关键词组分别进行比对,确定与实时问句相似度最高的第一提问样本及第一提问样本所属的第一文本集。
107.在得到实时问句的关键词组之后,可以将实时问句的关键词组与各文本集中各提问样本的关键词组分别进行比对,得到实时问句的关键词组与各文本集中各提问样本的关键词组的相似度,具体计算相似度的方式可以是:由于关键词组可以是向量的形式,那么可以利用向量相似度计算的方法,将实时问句的关键词组的向量分别与各文本集中各提问样本的关键词组的向量之间进行点乘,计算得到实时问句的关键词组与各文本集中各提问样本的关键词组的相似度。然后,确定出与实时问句相似度最高的第一提问样本及第一提问样本所属的第一文本集。由于第一提问样本与实时问句的相似度最高,说明第一提问样本与实时问句基本是一样的,那么第一提问样本对应的回答样本基本可以确定是实时问句的回复内容。
108.这个比较得到相似度的过程可以称为信息融合,相似度越高,说明句子中共同的信息越多,经过相似度的计算,筛选出与实时问句相似度最高的第一提问样本,实现了信息融合,反映出句子中符合用户问题需求的重要信息。
109.s212,以实时问句作为输入、第一提问样本对应的回答样本作为标称信息,对第一文本集对应的问答模型进行训练,记录下本轮迭代训练的实时问句的关键词组。
110.返回执行s208,并结合已记录的各轮迭代训练的实时问句的关键词组,进行下一轮迭代,得到多轮迭代训练后的问答模型。
111.基于上述分析,第一提问样本对应的回答样本基本可以确定是实时问句的回复内容,则可以以实时问句作为输入、第一提问样本对应的回答样本作为标称信息,对第一文本集对应的问答模型进行训练。由于用户的提问往往是连续的,也就是会一个问题紧接着一个问题,但是如果单独看一个问题又很难判断具体意图,例如,用户问的第一个问题是“北京市朝阳区的公积金在哪办理?”,在得到回复后,第二个问题是“办公时间是几点到几点?”,如果单看第二个问题,并不是很清楚用户想要问哪个办公单位的办公时间,但是如果结合第一个问题,可以知道用户想要问的是北京市朝阳区公积金管理中心的办公时间。因此,在进行一轮迭代训练后,需要记录下本轮迭代训练的实时问句的关键词组。然后再结合已记录的各轮迭代训练的实时问句的关键词组,进行下一轮迭代,经过多轮迭代训练,最终可以得到细粒度的问答模型,问答模型输出的问答结果更为精准。
112.在本技术实施例的一种实现方式中,s212具体可以通过如下步骤实现:
113.第一步,将实时问句输入所述第一文本集对应的问答模型,得到预测回答结果;
114.第二步,比较预测回答结果与第一提问样本对应的回答样本,得到差异值;
115.第三步,基于差异值,调整第一文本集对应的问答模型的模型参数,并返回执行第一步,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止本轮对第一文本集对应的问答模型的训练。
116.经过多次迭代训练,对粗粒度的问答模型进行了更为精准的模型参数调整,使得问答模型的精度更高。也就是说,通过本技术实施例的方案,在图1所示实施例的基础上,在缩短了问答模型的训练耗时、提高模型应用的精准度的同时,还通过信息融合,进一步提高了问答模型的准确度和流畅度。
117.为了便于理解,下面结合具体实例,对本技术实施例提供的问答模型训练方法进行介绍。
118.图3示出了本技术实施例提供的再一种问答模型训练方法的流程示意图,该方法具体包括如下步骤。
119.第一步,输入场景语料样本。
120.场景语料样本是基于政务垂直领域应用场景生成的语料样本,这些语料样本可以组成语料库。语料库中的语料样本是海量的,例如可以是几百万、几千万个。场景语料样本是提供特定服务的领域下的语料样本,其涉及政务、民生、金融等服务,场景语料样本与其他语料样本的区别在于所涉及的领域不同,场景语料样本为文档。
121.第二步,利用lda模型,为语料样本添加语境标签。
122.以多个文档作为语料样本为例:
123.文档1所记载的文字内容为:优化购买域内存量住房提取住房公积金业务,自2021年6月1日起,申请人或其配偶购买本市行政区域内存量住房(也称“二手房”)申请提取住房公积金时,应同时提供该房屋在北京市住房和城乡建设委员会签约备案的购房合同编号,及过户后的房屋所有权证号或不动产权证号,联网核验无误后即可办理。
124.文档2所记载的文字内容为:2020年度商品住宅专项维修资金归集使用情况的报告,2020年,北京市住房资金管理中心(以下简称管理中心)归集商品住宅专项维修资金7.56万户、金额11.77亿元。按照北京城市总体规划中的一主一副,多点一区的结构区域划分,其中,中心城区当年归集金额3.83亿元,占当年归集的32.54%;北京城市副中心区域当年归集金额0.89亿元,占当年归集的7.56%;平原地区新城当年归集金额5.13亿元,占当年归集的43.59%;生态涵养区当年归集金额1.93亿元,占当年归集的16.31%。截至2020年底,管理中心实建商品住宅专项维修资金357.39万户、分户账余额604.75亿元。
125.文档3所记载的文字内容为:北京地区住房公积金实现数据互联互通,进一步提升便民服务水平,为贯彻落实市委市政府新一轮优化营商环境的工作要求,进一步方便单位和群众办事,北京住房公积金管理中心加强与所属中共中央直属机关分中心、中央国家机关分中心、北京铁路分中心互联互通,实现个人账户信息共享、账户转移共享协同、提取业务共享协同、公积金用卡信息共享。
126.对上述文档1、2、3进行语料样本的预处理,包括去除停用词、分词等,得出以上3个文档的三个词向量矩阵,词向量矩阵就是一个文档中词进行向量化后的词向量所组成的矩阵,将三个词向量矩阵分别输入lda模型,进行文档主题归类,即可分别推导出每个文档的应用场景标签,可知文档1语境标签为[“tag”:“存量住房提取住房公积金”],文档2语境标签为[“tag”:“商品住宅专项维修资金归集使用”],文档3语境标签为[“tag”:“住房公积金数据互联互通”]。记录每个文档的应用场景标签,具体可以在文档的存储空间中增加一个记录标签的空间,专门用来记录每个文档的应用场景标签,也可以建立一个数据库,按照文档标识-应用场景标签的形式进行记录。
[0127]
第三步,利用预设的任务分类算法,建立粗粒度的多个任务导向型的文本集。
[0128]
在政务领域下,有公积金查询任务、社保查询任务等任务类型,可以利用预设的任务分类算法,该任务分类算法可以是基于深度学习的分类算法,建立出多个任务导向型的文本集,其中,基于深度学习的分类算法具体可以是一个分类模型,该分类模型是基于样本训练得到的,每个样本都预先标记有任务类型,经过将样本输入模型,得到任务类型的预测结果,与标记的任务类型进行比较,然后利用梯度下降法,基于比较结果来调整模型参数,经过不断的迭代训练,直至梯度下降最小,完成分类模型训练。例如,4000万条语料样本中,有30万条是关于公积金咨询任务的,则这30万条组成公积金咨询任务的文本集,有50万条是关于社保咨询任务的,则这50万条组成社保咨询任务的文本集。
[0129]
第四步,利用语义依存分析工具,提取出各文本集中的关键词,组成场景定向实体词表空间。该空间是各语料样本的关键词组组成的存储空间。
[0130]
假设文本集中的原始语料为:北京地区住房公积金实现数据互联互通,进一步提升便民服务水平,为贯彻落实市委市政府新一轮优化营商环境的工作要求。
[0131]
对该原始语料进行去除停用词、分词等预处理,得到:
[0132]
北京地区住房公积金实现数据互联互通进一步提升便民服务水平为贯彻落实市委市政府新一轮优化营商环境工作要求
[0133]
利用语义依存分析工具,基于上述预处理的结果,得到标签序列:['n','n','n','n',*,'n','v',*,*,*,*,*,*,*,*,*,*,*,*,*,*,*]
[0134]
以上标签序列中包含n的即为名称性原词,v即为动词,*为其他词语的词性,由此
得到关键词原始序列,即先得到标签序列,然后利用政务场景高频词词库,进一步得到关键词为:
[0135]
北京地区住房公积金数据互联互通
[0136]
语义依存分析(sdp,semantic dependency parsing)工具可通过树形(tree-shape)依存关系研究出句子中的“深层”语义关系,关键词可以是名词性原词、动词短语词干、介词、数词等。其中,词干是指任何可以和屈折词缀结合的语素,英语里词干是相对于词尾的概念,是一种构形语素,一个词中除去词尾的部分就是词干;汉语中有词缀的词里,中心词的概念就是词干。
[0137]
第五步,基于各任务导向型的文本集,对bilstm进行训练,得到对应的问答模型。问答模型中包括多个层级的权重矩阵,权重矩阵为任务导向型的场景语料指针权重矩阵,能够自动识别关联实体中心词和上下文场景分布。
[0138]
假设文本集中的原始语料为:北京地区住房公积金实现数据互联互通,进一步提升便民服务水平,为贯彻落实市委市政府新一轮优化营商环境的工作要求。
[0139]
对该原始语料进行去除停用词、分词等预处理,得到:
[0140]
北京地区住房公积金实现数据互联互通进一步提升便民服务水平为贯彻落实市委市政府新一轮优化营商环境工作要求
[0141]
基于上述预处理的结果,利用bert中文预训练矩阵,即可得出该原始语料对应的权重矩阵。
[0142]
具体的训练过程如图1所示实施例的内容,这里不再赘述。
[0143]
第六步,针对交互界面输入的实时问句,利用语义依存分析工具,从中提取关键词,生成待定向关联实体词组。
[0144]
例如,输入问句,“北京住房公积金数据实现互联互通了吗?”[0145]
对该问句进行分词,得到:
[0146]
['北京','住房','公积金','数据','实现','互联互通','了','吗','?']
[0147]
利用语义依存分析工具,得到词性标注:
[0148]
['ns','n','n','n','v','l','ul','y','x']
[0149]
从中提取包含n标志的名词词干、v标志对应的动词词干、l对应的描述性词干,得到待定向关联实体词组:
[0150]
['北京','住房','公积金','数据','实现','互联互通']
[0151]
待定向关联实体词组即为实时问句的关键词组。
[0152]
第七步,将待定向关联实体词组映射到场景定向实体词表空间,计算场景定向实体词表空间内各词组与待定向关联实体词组的相似度,确定与待定向关联实体词组的相似度最高的词组,并确定该词组所属的样本集。
[0153]
第八步,以实时问句作为输入、与待定向关联实体词组的相似度最高的词组对应的回答样本作为标称信息,对第五步得到的问答模型进行训练,记录下本轮迭代训练的待定向关联实体词组。经过多轮迭代,得到细粒度的问答模型。
[0154]
具体的训练过程如图2所示实施例的内容,这里不再赘述。
[0155]
该问答模型能够快速提取生成实际细粒度场景的问答对,即输入用户的提问语句,可快速得到该提问语句对应的回答语句。
[0156]
图4示出了本技术实施例提供的一种问答方法的流程示意图,该方法具体包括如下步骤。
[0157]
s402,获取提问语句。
[0158]
s404,将提问语句输入训练好的问答模型,得到提问语句对应的回答语句。其中,问答模型利用上述问答模型训练方法训练得到。
[0159]
由于训练好的问答模型是一种端到端的深度学习模型,直接将获取的提问语句输入训练好的问答模型,可以直接得到提问语句对应的回答语句。
[0160]
本技术实施例中,问答方法的执行主体可以是执行问答功能的智能设备。应用本技术实施例的方案,由于在进行问答模型训练时,基于各语料样本的语境标签,将海量的语料样本进行划分,建立了多个任务导向型的文本集,每一个文本集中的语料样本具有相同的任务类型,这样,针对各文本集分别进行训练,得到各文本集对应的问答模型,每个文本集对应的问答模型的训练耗时更短,且一个问答模型针对的是一种任务类型,针对性更强,从而能够提高模型应用的精准度。这样,在利用训练好的问答模型对提问语句进行智能答复时,能够提高回答语句的准确性。
[0161]
相应于上述问答模型训练方法实施例,图5示出了本技术实施例提供的一种问答模型训练装置的结构示意图,该问答模型训练装置包括:
[0162]
第一获取模块510,被配置为获取基于指定领域构建的语料库,其中,语料库包括大量的语料样本,语料样本携带语境标签;
[0163]
文本集建立模块520,被配置为基于各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集;
[0164]
第一训练模块530,被配置为针对各文本集,利用该文本集中的各语料样本,对预设神经网络进行训练,得到该文本集对应的问答模型。
[0165]
可选地,该装置还可以包括:
[0166]
提取模块,被配置为针对各文本集,利用语义分析算法,提取出该文本集中各语料样本的关键词,得到各语料样本的关键词组。
[0167]
可选地,提取模块,具体可以被配置为针对各文本集,根据该文本集中各语料样本的词特征,利用语义分析算法,计算各语料样本中的词重要度;针对各语料样本,根据该语料样本中的词重要度,提取词重要度高于预设阈值的关键词,组成该语料样本的关键词组。
[0168]
可选地,语料样本包括提问样本和该提问样本对应的回答样本;该装置还可以包括:
[0169]
提取模块,被配置为获取实时问句,利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组;
[0170]
比对模块,被配置为将实时问句的关键词组与各文本集中各提问样本的关键词组分别进行比对,确定与实时问句相似度最高的第一提问样本及第一提问样本所属的第一文本集;
[0171]
第二训练模块,被配置为以实时问句作为输入、第一提问样本对应的回答样本作为标称信息,对第一文本集对应的问答模型进行训练,记录下本轮迭代训练的实时问句的关键词组;返回执行获取实时问句,利用语义分析算法,提取出实时问句中的关键词,得到实时问句的关键词组的步骤,并结合已记录的各轮迭代训练的实时问句的关键词组,进行
下一轮迭代,得到多轮迭代训练后的问答模型。
[0172]
可选地,该装置还可以包括:
[0173]
添加模块,被配置为利用lda模型,为语料库中的各语料样本添加语境标签。
[0174]
可选地,语料样本还携带有时间标签;该装置还可以包括:
[0175]
筛选模块,被配置为根据各语料样本的时间标签,筛选出符合预设时间条件的语料样本;
[0176]
文本集建立模块520,具体被配置为基于符合所述预设时间条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
[0177]
可选地,该装置还可以包括:
[0178]
筛选模块,被配置为利用预设的净化规则,筛选出符合预设净化条件的语料样本;
[0179]
文本集建立模块520,具体被配置为基于符合预设净化条件的各语料样本的语境标签,利用预设的任务分类算法,建立多个任务导向型的文本集。
[0180]
可选地,语料样本包括提问样本和该提问样本对应的回答样本;
[0181]
第一训练模块530,具体被配置为针对各文本集,将该文本集中的提问样本输入预设神经网络,得到预测回答结果;比较预测回答结果与提问样本对应的回答样本,得到差异值;基于差异值,调整预设神经网络的网络参数,并返回执行将该文本集中的提问样本输入预设神经网络,得到预测回答结果的步骤,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止训练,确定网络参数调整后的预设神经网络为该文本集对应的问答模型。
[0182]
可选地,预设神经网络为bilstm。
[0183]
可选地,第二训练模块,具体被配置为将实时问句输入第一文本集对应的问答模型,得到预测回答结果;比较预测回答结果与第一提问样本对应的回答样本,得到差异值;基于差异值,调整第一文本集对应的问答模型的模型参数,并返回执行将实时问句输入第一文本集对应的问答模型,得到预测回答结果的步骤,直至差异值小于预设阈值或者返回执行的次数达到预设次数,则停止本轮对第一文本集对应的问答模型的训练。
[0184]
应用本技术实施例提供的方案,基于各语料样本的语境标签,将海量的语料样本进行划分,建立了多个任务导向型的文本集,每一个文本集中的语料样本具有相同的任务类型,这样,针对各文本集分别进行训练,得到各文本集对应的问答模型,每个文本集对应的问答模型的训练耗时更短,且一个问答模型针对的是一种任务类型,针对性更强,从而能够提高模型应用的精准度。
[0185]
相应于上述问答方法实施例,图6示出了本技术实施例提供的一种问答装置的结构示意图,该问答装置包括:
[0186]
第二获取模块610,被配置为获取提问语句;
[0187]
答复模块620,被配置为将提问语句输入利用上述问答模型训练方法训练得到的问答模型中,得到提问语句对应的回答语句。
[0188]
本技术实施例中,问答方法的执行主体可以是执行问答功能的智能设备。应用本技术实施例的方案,由于在进行问答模型训练时,基于各语料样本的语境标签,将海量的语料样本进行划分,建立了多个任务导向型的文本集,每一个文本集中的语料样本具有相同的任务类型,这样,针对各文本集分别进行训练,得到各文本集对应的问答模型,每个文本
集对应的问答模型的训练耗时更短,且一个问答模型针对的是一种任务类型,针对性更强,从而能够提高模型应用的精准度。这样,在利用训练好的问答模型对提问语句进行智能答复时,能够提高回答语句的准确性。
[0189]
图7示出了根据本技术实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
[0190]
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(pstn,public switched telephone network)、局域网(lan,local area network)、广域网(wan,wide area network)、个域网(pan,personal area network)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic,network interface card))中的一个或多个,诸如ieee802.11无线局域网(wlan,wireless local area networks)无线接口、全球微波互联接入(wi-max,world interoperability for microwave access)接口、以太网接口、通用串行总线(usb,universal serial bus)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc,near field communication)接口,等等。
[0191]
在本技术的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本技术范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0192]
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
[0193]
其中,处理器720用于执行如下计算机可执行指令,处理器720执行计算机可执行指令时实现上述问答模型方法或问答方法的步骤。
[0194]
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的问答模型方法、问答方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述问答模型方法、问答方法的技术方案的描述。
[0195]
本技术一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现如前述问答模型方法或问答方法的步骤。
[0196]
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的问答模型方法、问答方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述问答模型方法、问答方法的技术方案的描述。
[0197]
本技术实施例公开了一种芯片,其存储有计算机指令,该计算机指令被处理器执行时实现如前述问答模型方法或问答方法的步骤。
[0198]
上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行
并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0199]
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。
[0200]
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本技术所必须的。
[0201]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0202]
以上公开的本技术优选实施例只是用于帮助阐述本技术。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本技术的内容,可作很多的修改和变化。本技术选取并具体描述这些实施例,是为了更好地解释本技术的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本技术。本技术仅受权利要求书及其全部范围和等效物的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1