CN110263330A - 问题语句的改写方法、装置、设备和存储介质 - Google Patents
问题语句的改写方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN110263330A CN110263330A CN201910431357.8A CN201910431357A CN110263330A CN 110263330 A CN110263330 A CN 110263330A CN 201910431357 A CN201910431357 A CN 201910431357A CN 110263330 A CN110263330 A CN 110263330A
- Authority
- CN
- China
- Prior art keywords
- sentence
- word
- model
- history
- current time
- 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.)
- Pending
Links
- 230000006872 improvement Effects 0.000 title claims abstract description 22
- 230000007787 long-term memory Effects 0.000 claims abstract description 65
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000012549 training Methods 0.000 claims description 80
- 238000005457 optimization Methods 0.000 claims description 44
- 230000015654 memory Effects 0.000 claims description 43
- 230000006870 function Effects 0.000 claims description 21
- 230000007246 mechanism Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 16
- 230000007774 longterm Effects 0.000 claims description 10
- 125000006850 spacer group Chemical group 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 230000006403 short-term memory Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 15
- 239000000284 extract Substances 0.000 description 9
- 238000003058 natural language processing Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 239000000203 mixture Substances 0.000 description 5
- 230000000306 recurrent effect Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 230000017105 transposition Effects 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 3
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 3
- 235000003140 Panax quinquefolius Nutrition 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 235000008434 ginseng Nutrition 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- BULVZWIRKLYCBC-UHFFFAOYSA-N phorate Chemical compound CCOP(=S)(OCC)SCSCC BULVZWIRKLYCBC-UHFFFAOYSA-N 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000007935 neutral effect Effects 0.000 description 2
- 230000032696 parturition Effects 0.000 description 2
- 230000003362 replicative effect Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及一种问题语句的改写方法、装置、设备和存储介质,该方法包括:分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各单词的编码表示;基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率;根据复制概率确定当前时间步需要进行复制的目标单词;将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。采用本申请的方案,使基于问题语句得到的预测答案准确率更高。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种问题语句的改写方法、装置、设备和存储介质。
背景技术
随着计算机技术的发展,出现了自然语言处理(Natural Language Proces sing,NLP)技术。自然语言处理(NLP)技术实现了人们长期以来所追求的“用自然语言与计算机进行通信”,例如通过训练好的模型实现人机对话、智能语言翻译和对话阅读理解等等。
但是,在问题语句不完整的情况下,传统的自然语言处理技术一般是通过已训练的问题改写模型对问题语句进行改写,得到较完整的问题语句。而在传统的自然语言处理技术中,问题改写模型通常是基于人工标注的问题标签进行监督训练得到的。由于人工标注的问题标签存在错误性、少量性等问题,使得问题改写模型输出的改写后的问题语句的准确率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高问题改写模型的改写准确率的问题改写模型的优化方法、装置、计算机可读存储介质和计算机设备,以及一种问题语句的改写方法、装置、计算机可读存储介质和计算机设备。
一种问题改写模型的优化方法,包括:
将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
一种问题改写模型的优化装置,所述装置包括:
训练数据输入模块,用于将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
问题语句改写模块,用于通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
预测答案获取模块,用于将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
模型优化模块,用于根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
所述训练数据输入模块还用于继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
上述问题改写模型的优化方法、装置、计算机可读存储介质和计算机设备,通过问题改写模型根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句,使得改写后的问题语句的语义更加完整,成为不再依附于历史语句的独立句子。这样答案预测模型根据语义完整的改写后的问题语句可以得到准确率高的预测答案。根据预测答案与标准答案得到奖赏值,并基于奖赏值对问题改写模型进行优化,这样便可以提高问题改写模型后续生成的改写后的问题语句的准确率。继续执行将训练数据输入问题改写模型的步骤,直到奖赏值符合收敛条件时才完成训练。经过多次优化,使得最终优化得到的问题改写模型输出的改写后的问题语句的准确率高。
一种问题语句的改写方法,包括:
分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
一种问题语句的改写装置,所述装置包括:
编码模块,用于分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
复制概率确定模块,用于基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
目标单词确定模块,用于根据所述复制概率确定当前时间步需要进行复制的目标单词;
时间步确定模块,用于将下一时间步确定为当前时间步;复制概率确定模块还用于继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
上述问题语句的改写方法、装置、计算机可读存储介质和计算机设备,对问题语句和历史语句进行双向编码,使得问题语句中各单词的编码表示具有问题语句的整体信息,使得历史语句中各单词的编码表示具有历史语句的整体信息。利用长短时记忆网络和指针网络并根据具有所属语句的整体信息的单词的编码表示确定当前时间步各单词的复制概率。这样便能根据当前时间步各单词的复制概率确定需要进行复制的目标单词,确定完所有时间步需要进行复制的目标单词时,便能得到一个完整的携带有关键历史信息的改写后的问题语句。采用本申请的方案,由于改写后的问题语句的语义更加完整,成为不再依附于历史语句的独立句子,使得基于该问题语句得到的预测答案的准确率高。
附图说明
图1为一个实施例中计算机设备的结构框图;
图2为一个实施例中问题改写模型的优化方法的应用环境图;
图3为一个实施例中问题改写模型的优化方法的流程示意图;
图4为另一个实施例中问题改写模型的优化方法的流程示意图;
图5为一个实施例中问题改写模型的结构框图;
图6为一个实施例中对问题语句和历史语句进行双向编码的示例图;
图7为一个实施例中计算各单词的复制概率的示例图;
图8为一个实施例中计算第一复制概率的示例图;
图9为一个实施例中计算隐式状态的示例图;
图10为再一个实施例中问题改写模型的优化方法的流程示意图;
图11为一个实施例中问题语句的改写方法的流程示意图;
图12为一个实施例中问题改写模型的优化装置的结构框图;
图13为一个实施例中问题语句的改写装置的结构框图;
图14为一个实施例中多轮人机对话的示例图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1所示的计算机设备,包括存储器和处理器,存储器中存储有计算机程序。计算机程序被处理器执行时,可以实现本申请提供的问题改写模型的优化方法的步骤。该计算机设备可以是终端,也可以是服务器。可以理解的是,当计算机设备为终端时,该计算机设备还可以包括显示屏和输入装置等。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。计算机设备可以是通用计算机设备,也可以是嵌入式设备。
如图2所示,计算机程序可以包括一种基于问题改写的强化学习模型200,强化学习模型200包括问题改写模型210和答案预测模型220。强化学习模型200将训练数据输入问题改写模型210,训练数据包括问题语句和历史语句。强化学习模型200通过问题改写模型210根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;强化学习模型200将改写后的问题语句输入答案预测模型220,得到改写后的问题语句的预测答案;强化学习模型200根据预测答案和标准答案确定奖赏值,并基于奖赏值对问题改写模型进行优化;继续执行将训练数据输入问题改写模型的步骤;直到奖赏值符合收敛条件。
如图3所示,在一个实施例中,提供了一种问题改写模型的优化方法。本实施例主要以该方法应用于上述图2中的强化学习模型200来举例说明。参照图3,该问题改写模型的优化方法具体包括如下步骤:
S302,将训练数据输入问题改写模型;训练数据包括问题语句和历史语句。
其中,训练数据指用于对问题改写模型进行训练的数据。问题语句指没有完整语义的疑问句。没有完整语义的疑问句例如“如何打开”、“如何关闭”、“在哪里”、“怎么去”等等。历史语句指与问题语句相关联的历史语句。例如在阅读理解中,历史语句为在当前问题语句之前的语句。例如在人机对话中,历史语句为在用户当前提出问题语句的时间点之前的历史对话语句。
具体地,训练数据可以是预先标注的训练集中的训练数据。训练集中可以包含多组训练数据。每组训练数据包括输入数据和对应的输出数据。输入数据包括问题语句和历史语句,输出数据为问题语句和历史语句对应的改写后的标准问题语句。强化学习模型可以将训练集中一组训练数据的问题语句和历史语句输入问题改写模型。
例如预先标注的训练集中存在一组人机对话的训练数据,该训练数据包括的输入数据如下,人:“怎么看到别人发布的动态?”,机器:“打开A功能即可。”,人“如何打开?”。其中,问题语句为“如何打开?”,历史语句为“怎么看到别人的动态?”和“打开A功能即可。”该训练数据包括的输出数据为“如何打开A功能?”。则强化学习模型将问题语句“如何打开?”和历史语句“怎么看到别人的动态?”和“打开A功能即可。”输入问题改写模型。
S304,通过问题改写模型根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句。
其中,关键历史信息指历史语句中的关键信息。具体地,强化学习模型将训练集中一组训练数据的问题语句和历史语句输入问题改写模型后,问题改写模型对问题语句和历史语句进行指代消解。指代(anaphora)是指在语篇中用一个指代词回指某个以前提到过的语言单位。指代词称为照应语(anaphor),指代词所指的对象或内容称为先行语(antecedent)。指代消解指的就是确定指代词的先行语的过程。通过指代消解确定需要从问题语句和历史语句中提取的单词。利用提取的单词对问题语句进行改写补全,得到携带有关键历史信息的改写后的问题语句。
在一个实施例中,例如,问题语句为“如何关闭?”,历史语句为“请关闭手电筒”。通过问题改写模型对问题语句和历史语句进行指代消解,提取出问题语句中的“如何”和“关闭”和历史语句中的“手电筒”。通过问题改写模型对问题语句进行补全可以得到改写后的问题语句“如何关闭手电筒”。其中,“手电筒”便为关键历史信息。
在一个实施例中,提取的单词虽然来自于输入的问题语句或历史语句,但是问题改写模型在利用提取的单词对问题语句进行改写补全时,可以不在输入的问题语句的基础上去进行改写补全。进一步地,利用提取的单词对问题语句进行改写补全的过程可以是利用提取的单词重新形成一个新的问题语句的过程。例如提取的单词为“如何”、“打开”和“A功能”,则问题改写模型根据这些单词,重新形成一个新的问题语句为“如何打开A功能”。
S306,将改写后的问题语句输入答案预测模型,得到改写后的问题语句的预测答案。
具体地,强化学习模型将改写后的问题语句的语句状态ST输入答案预测模型后,得到了问题语句的预测答案。语句状态(state)是由一系列动作选择的单词组成,例如改写后的问题语句由选取的单词“y1”、“y2”、“y3”、“y4”、“y5”和“y6”组成,则改写后的问题语句的语句状态为ST=(y1,y2,y3,y4,y5,y6)。答案预测模型根据输入的语句状态ST对答案进行预测,得到问题语句的预测答案。
进一步地,在阅读理解的应用场景中,答案预测模型可以为阅读理解模型,强化学习模型将改写后的问题语句的语句状态输入至阅读理解模型时,如图2所示,还需将相应的文章段落221输入阅读理解模型。阅读理解模型会从输入的文章段落221中去提取改写后的问题语句的预测答案。在人机对话的应用场景中,答案预测模型可以为人机对话模型。
在一个实施例中,人机对话的应用场景可以为如图14所示的多轮人机对话,计算机设备为图14中的机器人1401,机器人1401对用户1402提出的问题语句8进行改写时,将图14中的问题语句1至预测答案7作为历史语句。机器人1401基于历史语句对文件语句8进行改写,得到携带有历史关键信息的改写后的问题语句。机器人1401根据改写后的问题语句得到预测答案8,并将预测答案8反馈至用户1402。
S308,根据预测答案和标准答案确定奖赏值,并基于奖赏值对问题改写模型进行优化。
其中,标准答案指针对于问题语句的标准答案。奖赏值指预测答案和标准答案的损失值,用于对问题改写模型进行优化。
具体地,强化学习模型可以计算答案预测模型输出的预测答案与标准答案之间的损失值,将该损失值作为针对于问题改写模型的奖赏值。基于该奖赏值计算策略梯度。将计算得到的策略梯度反馈至问题改写模型,使得问题改写模型对问题语句的改写策略进行优化。
S310,继续执行将训练数据输入问题改写模型的步骤;直到奖赏值符合收敛条件。
其中,收敛条件指确定问题改写模型对于问题语句的改写策略已达到理想状态的条件。
具体地,强化学习模型可以将根据预测答案和标准答案确定的奖赏值与前一次或前几次得到的历史奖赏值做比对,若通过比对确定奖赏值已经达到最小且保持不变,判定问题改写模型对于问题语句的改写策略已达到理想状态。若通过比对确定奖赏值仍然在变化,判定问题改写模型对于问题语句的改写策略仍有优化的空间,则强化学习模型继续将训练集中的下一组训练数据输入问题改写模型,继续对问题改写模型进行优化。直到问题改写模型对于问题语句的改写策略已达到理想状态。
在一个实施例中,强化学习模型可以预设有最小阈值。强化学习模型可以将根据预测答案和标准答案确定的奖赏值与最小阈值做比对,若通过比对确定奖赏值小于或等于最小阈值,判定问题改写模型对于问题语句的改写策略已达到理想状态。若通过比对确定奖赏值大于最小阈值,判定问题改写模型对于问题语句的改写策略仍有优化的空间。则强化学习模型继续将训练集中的下一组训练数据输入问题改写模型,继续对问题改写模型进行优化。直到问题改写模型对于问题语句的改写策略已达到理想状态。
上述问题改写模型的优化方法,通过问题改写模型根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句,使得改写后的问题语句的语义更加完整,成为不再依附于历史语句的独立句子。这样答案预测模型根据语义完整的改写后的问题语句可以得到准确率高的预测答案。根据预测答案与标准答案得到奖赏值,并基于奖赏值对问题改写模型进行优化,这样便可以提高问题改写模型后续生成的改写后的问题语句的准确率。继续执行将训练数据输入问题改写模型的步骤,直到奖赏值符合收敛条件时才完成训练。经过多次优化,使得最终优化得到的问题改写模型输出的改写后的问题语句的准确率高。
采用本申请提供的方案,由于最终优化得到的问题改写模型输出的改写后的问题语句的准确率高,因此根据准确率高的问题语句可以得到准确率高的预测答案。例如在多轮对话任务中根据准确率高的问题语句进行答案预测时,可以得到准确率高的预测答案。
在一个实施例中,如图4所示,通过问题改写模型根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句包括:
S402,通过问题改写模型分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各单词的编码表示。
其中,双向编码指对语句进行正向编码和反向编码,使得语句中的每个单词均具有双向的编码表示。
具体地,问题改写模型的编码器可以为双向编码器,强化学习模型通过问题改写模型的双向编码器分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各个单词的双向的编码表示。进一步地,问题改写模型中的双向编码器可以是基于双向长短期记忆(BiLSTM,Bi-directional Long Short-Term Memory)网络的双向编码器。长短期记忆(LSTM,Long-Short Term Mem ory)网络是递归神经网络(RNN,Recurrent NeutralNetwork)的一种。双向长短期记忆网络基于长短期记忆网络对输入语句进行双向编码。
例如,问题语句的向量序列表示为其中,表示问题语句中第1个单词的词向量,表示问题语句中第2个单词的词向量,……,表示问题语句中第6个单词的词向量。双向编码器对问题语句进行正向编码时,是对进行编码。双向编码器对问题语句进行反向编码时,是对进行编码。
在一个实施例中,问题改写模型接收到问题语句和历史语句时,将问题语句和历史语句输入基于双向长短期记忆网络的双向编码器。双向编码器分别对问题语句和历史语句进行正向编码和反向编码,得到问题语句和历史语句中各个单词的正向编码表示和反向编码表示。双向编码器将各个单词的正向编码表示和反向编码表示进行拼接,得到各个单词的双向的编码表示。
在一个实施例中,如图5所示,问题改写模型可以具有双向编码器(Encoder)501和双向编码器(Encoder)502。当问题改写模型接收到问题语句和历史语句时,问题改写模型的双向编码器501对输入的问题语句进行双向编码,问题改写模型的双向编码器502对输入的历史语句进行双向编码。
在一个实施例中,如图6的公式601所示,基于双向长短期记忆网络的双向编码器,可以将问题语句中的单词的词向量按正向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的正向隐状态这样便可以得到问题语句中各个单词的正向隐状态隐状态与隐式状态的含义相同。
如图6的公式602所示,基于双向长短期记忆网络的双向编码器将问题语句中的单词的词向量按反向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的反向隐状态这样便可以得到问题语句中各个单词的反向隐状态如公式603所示,将问题语句中的各个单词的正向隐状态和反向隐状态进行拼接,得到问题语句中各个单词的拼接隐状态问题语句中各个单词的拼接隐状态便为该单词的双向编码表示。
在一个实施例中,如图6的公式604所示,基于双向长短期记忆网络的双向编码器,可以将历史语句中的单词的词向量按正向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的正向隐状态这样便可以得到历史语句中各个单词的正向隐状态
如图6的公式605所示,基于双向长短期记忆网络的双向编码器将历史语句中的单词的词向量按反向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的反向隐状态这样便可以得到历史语句中各个单词的反向隐状态如公式606所示,将历史语句中的各个单词的正向隐状态和反向隐状态进行拼接,得到历史语句中各个单词的拼接隐状态历史语句中各个单词的拼接隐状态便为该单词的双向编码表示。
S404,通过问题改写模型的长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率;各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率。
其中,指针网络是seq2seq模型的一种变型,指针网络用于确定将要复制的内容的位置。seq2seq模型是递归神经网络的一种。
具体地,如图5所示,问题改写模型的解码器(Decoder)包括长短时记忆网络(LSTM)503和指针网络(PtrNet)505。强化学习模型可以通过问题改写模型的长短时记忆网络503,根据问题语句中各单词的编码表示和历史语句中各单词的编码表示计算出当前时间步从问题语句中复制内容的第一复制概率以及当前时间步从历史语句中复制内容的第一复制概率强化学习模型通过问题改写模型的指针网络505,根据问题语句中各单词的编码表示和历史语句中各单词的编码表示计算出当前时间步问题语句中各单词的第二复制概率以及当前时间步历史语句中各单词的第二复制概率
强化学习模型通过问题改写模型,基于当前时间步从问题语句中复制内容的第一复制概率从历史语句中复制内容的第一复制概率问题语句中各单词的第二复制概率和历史语句中各单词的第二复制概率确定当前时间步各单词的复制概率P(yt=v)。其中,t指当前时间步,v指各单词。
S406,通过问题改写模型根据复制概率确定当前时间步需要进行复制的目标单词。
具体地,强化学习模型通过问题改写模型,在每一个时间步均会基于该时间步确定的各单词的复制概率,从问题语句和历史语句中提取出一个目标单词。问题改写模型对每一个时间步提取的目标单词进行复制,可以得到改写后的问题语句。强化学习模型计算出当前时间步各单词的复制概率之后,可以基于各单词的复制概率随机生成一个复制概率范围。从问题语句和历史语句中,抽取一个属于复制概率范围内的单词作为当前时间步需要进行复制的目标单词。
S408,将下一时间步确定为当前时间步;继续执行通过问题改写模型的长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
具体地,强化学习模型可以先判断当前时间步是否为最后一个时间步,若否,则代表未确定完所有时间步需要进行复制的目标单词。在未确定完所有时间步需要进行复制的目标单词时,强化学习模型将下一时间步确定为当前时间步,继续确定下一时间步需要进行复制的目标单词。直到确定完所有时间步需要进行复制的目标单词。进一步地,时间步的步数可以是预先设定的,例如预先设定时间步的步数与标准问题语句中的单词数量相同。
上述实施例中,通过问题改写模型对问题语句和历史语句进行双向编码,使得问题语句中各单词的编码表示具有问题语句的整体信息,使得历史语句中各单词的编码表示具有历史语句的整体信息。利用长短时记忆网络和指针网络并根据具有所属语句的整体信息的单词的编码表示,确定当前时间步各单词的复制概率。这样便能根据当前时间步各单词的复制概率确定需要进行复制的目标单词,确定完所有时间步需要进行复制的目标单词时,便能得到一个完整的携带有关键历史信息的改写后的问题语句。采用本申请的方案,由于改写后的问题语句的语义更加完整,成为不再依附于历史语句的独立句子,使得基于该问题语句得到的预测答案的准确率高。
在一个实施例中,通过问题改写模型的长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率包括:通过问题改写模型的长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率;通过问题改写模型将当前时间步的隐式状态和编码表示输入问题改写模型的指针网络,得到当前时间步各单词在所属语句中的第二复制概率;通过问题改写模型基于第一复制概率和第二复制概率,确定各单词的复制概率。
其中,隐式状态指长短期记忆网络的隐藏层输出的隐藏状态,隐藏状态指长短期记忆网络的系统状态(system status)。
具体地,强化学习模型可以通过问题改写模型获取当前时间步的隐式状态St,基于当前时间步的隐式状态St、问题语句中各单词的编码表示和历史语句中各单词的编码表示计算当前时间步从问题语句中复制内容的第一复制概率强化学习模型通过问题改写模型,基于当前时间步从问题语句中复制内容的第一复制概率计算当前时间步从历史语句中复制内容的第一复制概率
强化学习模型可以通过问题改写模型,将当前时间步的隐式状态St和问题语句的编码表示hq*输入问题改写模型的指针网络。问题语句的编码表示hq*由问题语句中各单词的编码表示组成。例如问题语句中包含5个单词,问题语句中各单词的编码表示分别为则hq*便为各单词的编码表示的拼接,问题改写模型的指针网络基于输入的隐式状态St和问题语句的编码表示hq*,输出当前时间步问题语句中各单词的第二复制概率
强化学习模型通过问题改写模型,将当前时间步的隐式状态St和历史语句的编码表示hd*输入问题改写模型的指针网络。当然,历史语句的编码表示hd*由历史语句中各单词的编码表示组成,hd*可以为历史语句中各单词的编码表示的拼接。问题改写模型的指针网络基于输入的隐式状态St和历史语句的编码表示hd*,输出当前时间步历史语句中各单词的第二复制概率
如图7的公式701所示,问题语句中的每一个单词v在当前时间步从问题语句中被复制的复制概率Pq为:当前时间步从问题语句中复制内容的第一复制概率和问题语句中各单词的第二复制概率的乘积。如图7的公式702所示,历史语句中的每一个单词v在当前时间步从历史语句中被复制的复制概率Pd为:当前时间步从历史语句中复制内容的第一复制概率和历史语句中各单词的第二复制概率的乘积。
如图7的公式703所示,各个单词v在当前时间步的复制概率P(yt=v)为:当前时间步从问题语句中被复制的复制概率Pq与当前时间步从历史语句中被复制的复制概率Pd的加和。
在一个实施例中,如图8的公式802所示,强化学习模型通过问题改写模型,基于当前时间步从问题语句中复制内容的第一复制概率计算当前时间步从历史语句中复制内容的第一复制概率时,可以按照对当前时间步从历史语句中复制内容的第一复制概率进行计算。
在一个实施例中,强化学习模型通过问题改写模型可以按照以下公式计算当前时间步问题语句中各单词的第二复制概率 其中,为当前时间步问题语句中各单词未进行归一化处理的实际的第二复制概率。v为随着系统进行训练的中间参数,vT指v的转置。W1为当前时间步的隐式状态St的权重参数。W为问题语句中各单词的编码表示的权重参数。Softmax为归一化处理函数。
在一个实施例中,强化学习模型通过问题改写模型可以按照以下公式计算当前时间步历史语句中各单词的第二复制概率 其中,为当前时间步历史语句中各单词未进行归一化处理的实际的第二复制概率。v为随着系统进行训练的中间参数,vT指v的转置。W1为当前时间步的隐式状态St的权重参数。W2为历史语句中各单词的编码表示的权重参数。
上述实施例中,分别计算从问题语句和历史语句中复制内容的第一复制概率,并计算各单词在自身所属的语句中被复制的第二复制概率,基于第一复制概率和第二复制概率来整体确实各单词的复制概率,使得确定的各单词的复制概率更加精准。
在一个实施例中,通过问题改写模型的长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率包括:通过问题改写模型将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入问题改写模型的长短时记忆网络,得到当前时间步的隐式状态;通过问题改写模型根据隐式状态和编码表示,并基于注意力机制确定当前时间步的上下文向量;通过问题改写模型根据隐式状态、上下文向量和历史目标单词,分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率。
其中,历史隐式状态指当前时间步的上一时间步的隐式状态。历史上下文向量指当前时间步的上一时间步的上下文向量。上下文向量指能够体现各单词与自身所属语句中的其他词语之间存在的上下文关系的向量。历史目标单词指当前时间步的上一时间步需要进行复制的目标单词。注意力(attention)机制指基于各单词在所属语句中的注意力分布确定该语句的上下文向量的机制。
具体地,如图9的公式901所示,强化学习模型通过问题改写模型将上一时间步的历史隐式状态St-1、问题语句的历史上下文向量历史语句的历史上下文向量和历史目标单词yt-1输入问题改写模型的长短时记忆网络LSTM,得到当前时间步的隐式状态St。
强化学习模型通过问题改写模型根据当前时间步的隐式状态St和问题语句中各单词的编码表示基于图5的504中所示的注意力(Attention)机制,确定当前时间步问题语句的上下文向量强化学习模型通过问题改写模型根据当前时间步的隐式状态St和历史语句中各单词的编码表示基于注意力机制确定当前时间步历史语句的上下文向量
强化学习模型通过问题改写模型基于当前时间步的隐式状态St、问题语句的上下文向量历史语句的上下文向量和历史目标单词yt-1,按照如图8的公式801计算当前时间步从问题语句中复制内容的第一复制概率其中,σ为激活函数,σ具体可以是图5的504中所示的Sigmoid函数。
为当前时间步t对于上一时间步t-1输出的历史目标单词yt-1的权重参数。为当前时间步t的隐式状态St的权重参数。为当前时间步t对于问题语句的上下文向量的权重参数。为当前时间步t对于历史语句的上下文向量的权重参数。b为用于生成当前时间步从问题语句中复制内容的第一复制概率的偏置参数。
在一个实施例中,强化学习模型通过问题改写模型根据当前时间步的隐式状态St和问题语句中各单词的编码表示基于注意力机制确定当前时间步问题语句的上下文向量包括以下步骤:强化学习模型通过问题改写模型基于当前时间步的隐式状态St和问题语句中各单词的编码表示计算当前时间步问题语句中各单词的注意力强化学习模型通过问题改写模型对当前时间步问题语句中各单词的注意力进行归一化处理,得到归一化的注意力将通过归一化处理得到的与问题语句中对应的单词的编码表示进行拼接,得到拼接向量。对问题语句中各单词对应的拼接向量进行加和,得到问题语句的上下文向量
进一步地,强化学习模型通过问题改写模型可以按照以下公式计算当前时间步问题语句中各单词的注意力 其中,va为随着系统进行训练的中间参数,指va的转置。Wa为当前时间步的隐式状态St的权重参数。Ua为问题语句中各单词的编码表示的权重参数。
强化学习模型通过问题改写模型按照以下公式对各单词的注意力进行归一化处理:其中,mq为问题语句中单词的数量。强化学习模型通过问题改写模型按照以下公式计算问题语句的上下文向量 其中,指将与问题语句中对应的单词的编码表示进行拼接,得到的拼接向量。
在一个实施例中,强化学习模型通过问题改写模型根据当前时间步的隐式状态St和历史语句中各单词的编码表示基于注意力机制确定当前时间步历史语句的上下文向量包括以下步骤:强化学习模型通过问题改写模型基于当前时间步的隐式状态St和历史语句中各单词的编码表示计算当前时间步历史语句中各单词的注意力强化学习模型通过问题改写模型对当前时间步历史语句中各单词的注意力进行归一化处理,得到归一化的注意力将通过归一化处理得到的与历史语句中对应的单词的编码表示进行拼接,得到拼接向量。对历史语句中各单词对应的拼接向量进行加和,得到历史语句的上下文向量
进一步地,强化学习模型通过问题改写模型可以按照以下公式计算当前时间步历史语句中各单词的注意力 其中,Ua为历史语句中各单词的编码表示的权重参数。强化学习模型通过问题改写模型按照以下公式对各单词的注意力进行归一化处理:其中,md为历史语句中单词的数量。强化学习模型通过问题改写模型按照以下公式计算历史语句的上下文向量 其中,指将与历史语句中对应的单词的编码表示进行拼接,得到的拼接向量。
在一个实施例中,若当前时间步为1,则时间步1的上一时间步为时间步0。如图9的公式902所示,时间步0的历史隐式状态 其中,为问题语句中第一个单词的编码表示。为在时间步0时权重参数,用于生成时间步0的隐式状态S0。tanh为非线性的激活函数。
为历史语句中第一个单词的编码表示。为在时间步0时的权重参数,用于生成时间步0的隐式状态S0。b为随着系统进行训练的用于生成时间步0的隐式状态S0的偏置参数。时间步0所输出的历史目标单词y0可以为起始符,例如该起始符可以是“go”。问题语句在时间步0的上下文向量为0,历史语句在时间步0的上下文向量为0。可以理解的是,上述各实施例中的权重参数、偏置参数和中间参数等参数,均是随着系统进行训练的学习参数。
上述实施例中,利用长短时记忆网络基于上一时间步的历史信息计算当前时间步的隐式状态,使得当前时间步的隐式状态更加准确。基于注意力机制确定当前时间步的上下文向量,这样便可以根据当前时间步的隐式状态、上下文向量和上一时间步的历史目标单词来确定从问题语句和历史语句中复制内容的第一复制概率,使得确定的第一复制概率的准确率高。
在一个实施例中,训练数据还包括标准问题语句,问题改写模型的优化方法还包括:从复制概率中确定标准问题语句中各标准单词的复制概率;根据各标准单词的复制概率确定问题改写模型的损失函数;基于损失函数对问题改写模型进行预训练,得到预训练的问题改写模型。
具体地,强化学习模型可以确定标准问题语句Y中包含的单词的个数T,并从确定的各单词的复制概率P(yt=v)中选取标准语句Y中所包含的各标准单词yt的复制概率。具体可以基于各标准单词的复制概率,按照以下公式计算问题改写模型的损失函数L(θ):其中,N为训练集中已输入问题改写模型的训练数据的组数,当然,已输入问题改写模型的训练数据的组数可以为训练集中训练数据的总组数。强化学习模型可以基于计算得到的损失函数L(θ)对问题改写模型进行预训练,得到预训练的问题改写模型。
上述实施例中,基于损失函数对问题改写模型进行预训练,可以得到预训练的问题改写模型,这样便可以将训练数据输入预训练的问题改写模型,对预训练的问题改写模型进行优化,使得对于问题改写模型的优化过程更加高效。
在一个实施例中,根据预测答案和标准答案确定奖赏值,并基于奖赏值对问题改写模型进行优化包括:将预测答案和标准答案间的损失值确定为奖赏值;对奖赏值的期望进行策略梯度处理,得到奖赏值的策略梯度;基于策略梯度对问题改写模型的改写策略进行优化。
具体地,强化学习模型可以计算预测答案与标准答案间的损失值,将计算得到的损失值确定为奖赏值R(ST)。ST指问题改写模型输出的改写后的问题语句的语句状态。强化学习模型按照以下公式计算奖赏值的期望J(θ): 其中,“-”负号表示对奖赏值的期望J(θ)的最小化。Pθ指问题改写模型的改写策略,指通过问题改写模型的改写策略生成改写后的问题语句的语句状态ST的期望。
强化学习模型将奖赏值R(ST)减去一个与动作无关的基线函数 指假设每一个时间步均提取复制概率最大的单词作为该时间步的目标单词时,所得到的改写后的问题语句的假设状态基线函数便指假设每一个时间步均提取复制概率最大的单词作为该时间步的目标单词时,所计算得到的奖赏值。将奖赏值R(ST)减去一个与动作无关的基线函数可以避免梯度估计的放方差值过高。
强化学习模型基于以下公式对奖赏值R(ST)的期望J(θ)进行策略梯度处理,得到奖赏值R(ST)的策略梯度 使用链式法则,上述计算奖赏值R(ST)的策略梯度的公式可以表示如下:其中,Ot是softmax函数的输入,Ot具体可以是标准问题语句中各个单词的复制概率构成的概率分布。强化学习模型将策略梯度反馈至问题改写模型,使得问题改写模型基于策略梯度进行强化学习。
在一个实施例中,强化学习模型可以利用预测答案与标准答案间的相似度确定预测答案与标准答案间的损失值。预测答案与标准答案间的相似度可以通过bleu算法计算得到。bleu算法是判断两个句子的相似程度的算法,将预测答案和标准答案做比较,如果得到的bleu值越高,代表两个答案越相似。当然,还可以基于其他算法计算预测答案与标准答案间的相似度,例如通过f-measur e函数计算预测答案与标准答案间的F1值,如果得到的F1值越高,代表两个答案越相似。
上述实施例中,根据预测答案与标准答案得到奖赏值,并基于奖赏值确定策略梯度,利用计算得到的策略梯度对问题改写模型进行优化,这样便可以提高问题改写模型后续生成的改写后的问题语句的准确率。在改写后的问题语句的准确率高的情况下,便可以提高预测答案的准确率。
在一个实施例中,如图10所示,问题改写模型的优化方法可以包括以下步骤:
S1002,强化学习模型将训练数据中的问题语句和历史语句输入问题改写模型。
S1004,问题改写模型通过双向编码器分别对问题语句和历史语句进行双向编码,得到问题语句中各单词的编码表示和历史语句中各单词的编码表示。
具体地,可以按照如下公式对问题语句和历史语句进行双向编码,得到问题语句中各单词的编码表示和历史语句中各单词的编码表示
S1006,问题改写模型将上一个时间步的历史隐式状态、问题语句的历史上下文向量、历史语句的历史上下文向量和历史目标单词输入问题改写模型的长短时记忆网络LSTM,得到当前时间步的隐式状态。
具体地,上一个时间步的历史隐式状态为St-1,问题语句的历史上下文向量为历史语句的历史上下文向量为历史目标单词为yt-1,可以按照如下表达式得到前时间步的隐式状态St:
S1008,问题改写模型基于当前时间步的隐式状态和问题语句中各单词的编码表示,利用注意力机制得到问题语句的上下文向量。
具体地,可以按照以下公式计算问题语句的上下文向量
S1010,问题改写模型基于当前时间步的隐式状态St和历史语句中各单词的编码表示利用注意力机制得到历史语句的上下文向量
具体地,可以按照以下公式计算历史语句的上下文向量
S1012,问题改写模型基于当前时间步的隐式状态、问题语句的上下文向量、历史语句的上下文向量和历史目标单词,确定当前时间步从问题语句中复制内容的第一复制概率和从历史语句中复制内容的第一复制概率。
具体地,可以按照以下公式计算当前时间步从问题语句中复制内容的第一复制概率和从历史语句中复制内容的第一复制概率
S1014,问题改写模型将当前时间步的隐式状态和问题语句的编码表示输入指针网络,得到当前时间步问题语句中各个单词的第二复制概率。
具体地,可以按照以下公式计算当前时间步问题语句中各个单词的第二复制概率
S1016,问题改写模型将当前时间步的隐式状态和历史语句的编码表示输入指针网络,得到当前时间步历史语句中各个单词的第二复制概率。
具体地,可以按照以下公式计算当前时间步历史语句中各个单词的第二复制概率
S1018,问题改写模型基于当前时间步从问题语句中复制内容的第一复制概率、从历史语句中复制内容的第一复制概率、问题语句中各个单词的第二复制概率和历史语句中各个单词的第二复制概率,确定各个单词的复制概率。
具体地,可以按照以下公式确定各个单词的复制概率P(yt=v):
P(yt=v)=Pq(yt=v)+Pd(yt=v)
S1020,问题改写模型基于各个单词的复制概率,随机生成一个复制概率范围,从问题语句和历史语句中,抽取一个属于复制概率范围内的单词作为当前时间步需要进行复制的目标单词。
S1022,强化学习模型将下一时间步确定为当前时间步,继续执行步骤S1006;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
S1024,强化学习模型将改写后的问题语句的语句状态输入答案预测模型,得到改写后的问题语句的预测答案。
S1026,将预测答案和标准答案间的损失值确定为奖赏值,并计算奖赏值的期望J(θ)。
具体地,改写后的问题语句的语句状态为ST,可以按照以下公式计算奖赏值的期望J(θ):
S1028,对奖赏值的期望进行策略梯度处理,得到奖赏值的策略梯度。
具体地,可以按照以下公式计算策略梯度
该公式通过链式法则,可以表示为:其中,
S1030,将策略梯度反馈至问题改写模型,使得问题改写模型基于策略梯度进行强化学习,并继续执行步骤S1002,直到得到的奖赏值符合收敛条件。
在一个实施例中,如图11所示,提供了一种问题语句的改写方法,本实施例主要以该方法应用于上述图2中的问题改写模型210来举例说明。该方法包括
S1102,分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各单词的编码表示。
具体地,问题改写模型的编码器可以为双向编码器,问题改写模型的双向编码器分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各个单词的双向的编码表示。进一步地,问题改写模型中的双向编码器可以是基于双向长短期记忆(BiLSTM,Bi-directional Long Short-Term Memory)网络的双向编码器。长短期记忆(LSTM,Long-Short Term Memory)网络是递归神经网络(RNN,Recurrent Neutral Network)的一种。双向长短期记忆网络基于长短期记忆网络对输入语句进行双向编码。
例如,问题语句的向量序列表示为其中,表示问题语句中第1个单词的词向量,表示问题语句中第2个单词的词向量,……,表示问题语句中第6个单词的词向量。双向编码器对问题语句进行正向编码时,是对进行编码。双向编码器对问题语句进行反向编码时,是对进行编码。
在一个实施例中,问题改写模型接收到问题语句和历史语句时,将问题语句和历史语句输入基于双向长短期记忆网络的双向编码器。双向编码器分别对问题语句和历史语句进行正向编码和反向编码,得到问题语句和历史语句中各个单词的正向编码表示和反向编码表示。双向编码器将各个单词的正向编码表示和反向编码表示进行拼接,得到各个单词的双向的编码表示。
在一个实施例中,如图5所示,问题改写模型可以具有两个双向编码器(Encoder)501和双向编码器(Encoder)502。当问题改写模型接收到问题语句和历史语句时,问题改写模型的双向编码器501对输入的问题语句进行双向编码,问题改写模型的双向编码器502对输入的历史语句进行双向编码。
在一个实施例中,如图6的公式601所示,基于双向长短期记忆网络的双向编码器,可以将问题语句中的单词的词向量按正向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的正向隐状态这样便可以得到问题语句中各个单词的正向隐状态
如图6的公式602所示,基于双向长短期记忆网络的双向编码器将问题语句中的单词的词向量按反向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的反向隐状态这样便可以得到问题语句中各个单词的反向隐状态如公式603所示,将问题语句中的各个单词的正向隐状态和反向隐状态进行拼接,得到问题语句中各个单词的拼接隐状态问题语句中各个单词的拼接隐状态便为该单词的双向编码表示。
在一个实施例中,如图6的公式604所示,基于双向长短期记忆网络的双向编码器,可以将历史语句中的单词的词向量按正向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的正向隐状态这样便可以得到历史语句中各个单词的正向隐状态
如图6的公式605所示,基于双向长短期记忆网络的双向编码器将历史语句中的单词的词向量按反向顺序依次输入长短期记忆网络LSTM。长短期记忆网络LSTM基于输入单词的词向量和前一个单词的历史隐状态计算输入单词的反向隐状态这样便可以得到历史语句中各个单词的反向隐状态如公式606所示,将历史语句中的各个单词的正向隐状态和反向隐状态进行拼接,得到历史语句中各个单词的拼接隐状态历史语句中各个单词的拼接隐状态便为该单词的双向编码表示。
S1104,基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率;各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率。
具体地,如图5所示,问题改写模型的解码器(Decoder)包括长短时记忆网络(LSTM)503和指针网络(PtrNet)505。问题改写模型的长短时记忆网络503根据问题语句中各单词的编码表示和历史语句中各单词的编码表示计算出当前时间步从问题语句中复制内容的第一复制概率以及当前时间步从历史语句中复制内容的第一复制概率问题改写模型的指针网络505根据问题语句中各单词的编码表示和历史语句中各单词的编码表示计算出当前时间步问题语句中各单词的第二复制概率以及当前时间步历史语句中各单词的第二复制概率
问题改写模型基于当前时间步从问题语句中复制内容的第一复制概率从历史语句中复制内容的第一复制概率问题语句中各单词的第二复制概率和历史语句中各单词的第二复制概率确定当前时间步各单词的复制概率P(yt=v)。其中,t指当前时间步,v指各单词。
S1106,根据复制概率确定当前时间步需要进行复制的目标单词。
具体地,问题改写模型在每一个时间步均会基于该时间步确定的各单词的复制概率,从问题语句和历史语句中提取出一个目标单词。问题改写模型对每一个时间步提取的目标单词进行复制,可以得到改写后的问题语句。问题改写模型计算出当前时间步各单词的复制概率之后,可以基于各单词的复制概率随机生成一个复制概率范围。从问题语句和历史语句中,抽取一个属于复制概率范围内的单词作为当前时间步需要进行复制的目标单词。
S1108,将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
具体地,问题改写模型可以先判断当前时间步是否为最后一个时间步,若否,则代表未确定完所有时间步需要进行复制的目标单词。在未确定完所有时间步需要进行复制的目标单词时,问题改写模型将下一时间步确定为当前时间步,继续确定下一时间步需要进行复制的目标单词。直到确定完所有时间步需要进行复制的目标单词。进一步地,时间步的步数可以是预先设定的,例如预先设定时间步的步数与标准问题语句中的单词数量相同。
上述问题语句的改写方法,对问题语句和历史语句进行双向编码,使得问题语句中各单词的编码表示具有问题语句的整体信息,使得历史语句中各单词的编码表示具有历史语句的整体信息。利用长短时记忆网络和指针网络并根据具有所属语句的整体信息的单词的编码表示确定当前时间步各单词的复制概率。这样便能根据当前时间步各单词的复制概率确定需要进行复制的目标单词,确定完所有时间步需要进行复制的目标单词时,便能得到一个完整的携带有关键历史信息的改写后的问题语句。采用本申请的方案,由于改写后的问题语句的语义更加完整,成为不再依附于历史语句的独立句子,使得基于该问题语句得到的预测答案的准确率高。
在一个实施例中,基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率包括:基于长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率;将当前时间步的隐式状态和编码表示输入指针网络,得到当前时间步各单词在所属语句中的第二复制概率;基于第一复制概率和第二复制概率确定各单词的复制概率。
具体地,问题改写模型可以获取当前时间步的隐式状态St,基于当前时间步的隐式状态St、问题语句中各单词的编码表示和历史语句中各单词的编码表示计算当前时间步从问题语句中复制内容的第一复制概率问题改写模型基于当前时间步从问题语句中复制内容的第一复制概率计算当前时间步从历史语句中复制内容的第一复制概率
问题改写模型将当前时间步的隐式状态St和问题语句的编码表示hq*输入问题改写模型的指针网络。问题语句的编码表示hq*由问题语句中各单词的编码表示组成。例如问题语句中包含5个单词,问题语句中各单词的编码表示分别为则hq*便为各单词的编码表示的拼接, 问题改写模型的指针网络基于输入的隐式状态St和问题语句的编码表示hq*,输出当前时间步问题语句中各单词的第二复制概率
问题改写模型将当前时间步的隐式状态St和历史语句的编码表示hd*输入问题改写模型的指针网络。当然,历史语句的编码表示hd*由历史语句中各单词的编码表示组成,hd*可以为历史语句中各单词的编码表示的拼接。问题改写模型的指针网络基于输入的隐式状态St和历史语句的编码表示hd*,输出当前时间步历史语句中各单词的第二复制概率
如图7的公式701所示,问题语句中的每一个单词v在当前时间步从问题语句中被复制的复制概率Pq为:当前时间步从问题语句中复制内容的第一复制概率和问题语句中各单词的第二复制概率的乘积。如图7的公式702所示,历史语句中的每一个单词v在当前时间步从历史语句中被复制的复制概率Pd为:当前时间步从历史语句中复制内容的第一复制概率和历史语句中各单词的第二复制概率的乘积。
如图7的公式703所示,各个单词v在当前时间步的复制概率P(yt=v)为:当前时间步从问题语句中被复制的复制概率Pq与当前时间步从历史语句中被复制的复制概率Pd的加和。
在一个实施例中,如图8的公式802所示,问题改写模型基于当前时间步从问题语句中复制内容的第一复制概率计算当前时间步从历史语句中复制内容的第一复制概率时,可以按照对当前时间步从历史语句中复制内容的第一复制概率进行计算。
在一个实施例中,问题改写模型可以按照以下公式计算当前时间步问题语句中各单词的第二复制概率 其中,为当前时间步问题语句中各单词未进行归一化处理的实际的第二复制概率。v为随着系统进行训练的中间参数,vT指v的转置。W1为当前时间步的隐式状态St的权重参数。W为问题语句中各单词的编码表示的权重参数。Softmax为归一化处理函数。
在一个实施例中,问题改写模型可以按照以下公式计算当前时间步历史语句中各单词的第二复制概率 其中,为当前时间步历史语句中各单词未进行归一化处理的实际的第二复制概率。v为随着系统进行训练的中间参数,vT指v的转置。W1为当前时间步的隐式状态St的权重参数。W2为历史语句中各单词的编码表示的权重参数。
上述实施例中,分别计算从问题语句和历史语句中复制内容的第一复制概率,并计算各单词在自身所属的语句中被复制的第二复制概率,基于第一复制概率和第二复制概率来整体确实各单词的复制概率,使得确定的各单词的复制概率更加精准。
在一个实施例中,基于长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率包括:将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入长短时记忆网络,得到当前时间步的隐式状态;根据隐式状态和编码表示并基于注意力机制,确定当前时间步的上下文向量;根据隐式状态、上下文向量和历史目标单词,分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率。
具体地,如图9的公式901所示,问题改写模型将上一时间步的历史隐式状态St-1、问题语句的历史上下文向量历史语句的历史上下文向量和历史目标单词yt-1输入问题改写模型的长短时记忆网络LSTM,得到当前时间步的隐式状态St。
问题改写模型根据当前时间步的隐式状态St和问题语句中各单词的编码表示基于图5的504中所示的注意力(attention)机制,确定当前时间步问题语句的上下文向量问题改写模型根据当前时间步的隐式状态St和历史语句中各单词的编码表示基于注意力机制确定当前时间步历史语句的上下文向量
问题改写模型基于当前时间步的隐式状态St、问题语句的上下文向量历史语句的上下文向量和历史目标单词yt-1,按照如图8的公式801计算当前时间步从问题语句中复制内容的第一复制概率其中,σ为激活函数,σ具体可以是图5的504中所示的sigmoid函数。
为当前时间步t对于上一时间步t-1输出的历史目标单词yt-1的权重参数。为当前时间步t的隐式状态St的权重参数。为当前时间步t对于问题语句的上下文向量的权重参数。为当前时间步t对于历史语句的上下文向量的权重参数。b为用于生成当前时间步从问题语句中复制内容的第一复制概率的偏置参数。
在一个实施例中,问题改写模型根据当前时间步的隐式状态St和问题语句中各单词的编码表示基于注意力机制确定当前时间步问题语句的上下文向量包括以下步骤:问题改写模型基于当前时间步的隐式状态St和问题语句中各单词的编码表示计算当前时间步问题语句中各单词的注意力问题改写模型对当前时间步问题语句中各单词的注意力进行归一化处理,得到归一化的注意力将通过归一化处理得到的与问题语句中对应的单词的编码表示进行拼接,得到拼接向量。对问题语句中各单词对应的拼接向量进行加和,得到问题语句的上下文向量
进一步地,问题改写模型可以按照以下公式计算当前时间步问题语句中各单词的注意力 其中,va为随着系统进行训练的中间参数,指va的转置。Wa为当前时间步的隐式状态St的权重参数。Ua为问题语句中各单词的编码表示的权重参数。
问题改写模型按照以下公式对各单词的注意力进行归一化处理:其中,mq为问题语句中单词的数量。问题改写模型按照以下公式计算问题语句的上下文向量 其中,指将与问题语句中对应的单词的编码表示进行拼接,得到的拼接向量。
在一个实施例中,问题改写模型根据当前时间步的隐式状态St和历史语句中各单词的编码表示基于注意力机制确定当前时间步历史语句的上下文向量包括以下步骤:问题改写模型基于当前时间步的隐式状态St和历史语句中各单词的编码表示计算当前时间步历史语句中各单词的注意力问题改写模型对当前时间步历史语句中各单词的注意力进行归一化处理,得到归一化的注意力将通过归一化处理得到的与历史语句中对应的单词的编码表示进行拼接,得到拼接向量。对历史语句中各单词对应的拼接向量进行加和,得到历史语句的上下文向量
进一步地,问题改写模型可以按照以下公式计算当前时间步历史语句中各单词的注意力 其中,Ua为历史语句中各单词的编码表示的权重参数。问题改写模型按照以下公式对各单词的注意力进行归一化处理:其中,md为历史语句中单词的数量。问题改写模型按照以下公式计算历史语句的上下文向量 其中,指将与历史语句中对应的单词的编码表示进行拼接,得到的拼接向量。
在一个实施例中,若当前时间步为1,则时间步1的上一时间步为时间步0。如图9的公式902所示,时间步0的历史隐式状态 其中,为问题语句中第一个单词的编码表示。为在时间步0时权重参数,用于生成时间步0的隐式状态S0。tanh为非线性的激活函数。
为历史语句中第一个单词的编码表示。为在时间步0时的权重参数,用于生成时间步0的隐式状态S0。b为随着系统进行训练的用于生成时间步0的隐式状态S0的偏置参数。时间步0所输出的历史目标单词y0可以为起始符,例如该起始符可以是“go”。问题语句在时间步0的上下文向量为0,历史语句在时间步0的上下文向量为0。可以理解的是,上述各实施例中的权重参数、偏置参数和中间参数等参数,均是随着系统进行训练的学习参数。
上述实施例中,利用长短时记忆网络基于上一时间步的历史信息计算当前时间步的隐式状态,使得当前时间步的隐式状态更加准确。基于注意力机制确定当前时间步的上下文向量,这样便可以根据当前时间步的隐式状态、上下文向量和上一时间步的历史目标单词来确定从问题语句和历史语句中复制内容的第一复制概率,使得确定的第一复制概率的准确率高。
在一个实施例中,问题语句的改写方法还包括:发送改写后的问题语句至答案预测模型,得到改写后的问题语句的预测答案;基于根据预测答案和标准答案确定的奖赏值对改写策略进行优化。
具体地,问题改写模型发送改写后的问题语句至答案预测模型,答案预测模型根据改写后的问题语句的语句状态ST得到预测答案并输出。强化学习模型可以计算答案预测模型输出的预测答案与标准答案之间的损失值,将该损失值作为针对于问题改写模型的奖赏值。基于该奖赏值计算策略梯度。将计算得到的策略梯度反馈至问题改写模型,问题改写模型基于反馈的策略梯度对问题语句的改写策略进行优化。
上述实施例中,根据预测答案与标准答案得到奖赏值,并基于奖赏值确定策略梯度,利用计算得到的策略梯度对问题改写模型进行优化,这样便可以提高问题改写模型后续生成的改写后的问题语句的准确率。在改写后的问题语句的准确率高的情况下,便可以提高预测答案的准确率。
图3、4、10和11为一个实施例中问题改写模型的优化方法和问题语句的改写方法的流程示意图。应该理解的是,虽然图3、4、10和11的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3、4、10和11中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图12所示,提供了一种问题改写模型的优化装置1200,包括训练数据输入模块1201、问题语句改写模块1202、预测答案获取模块1203和模型优化模块1204,其中:
训练数据输入模块1201,用于将训练数据输入问题改写模型;训练数据包括问题语句和历史语句;
问题语句改写模块1202,用于通过问题改写模型根据历史语句对问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
预测答案获取模块1203,用于将改写后的问题语句输入答案预测模型,得到改写后的问题语句的预测答案;
模型优化模块1204,用于根据预测答案和标准答案确定奖赏值,并基于奖赏值对问题改写模型进行优化;
训练数据输入模块1201还用于继续执行将训练数据输入问题改写模型的步骤;直到奖赏值符合收敛条件。
在一个实施例中,问题语句改写模块1202还用于通过问题改写模型分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各单词的编码表示;通过问题改写模型的长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率;各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;通过问题改写模型根据复制概率确定当前时间步需要进行复制的目标单词;将下一时间步确定为当前时间步;继续执行通过问题改写模型的长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
在一个实施例中,问题语句改写模块1202还用于通过问题改写模型的长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率;通过问题改写模型将当前时间步的隐式状态和编码表示输入问题改写模型的指针网络,得到当前时间步各单词在所属语句中的第二复制概率;通过问题改写模型基于第一复制概率和第二复制概率,确定各单词的复制概率。
在一个实施例中,问题语句改写模块1202还用于通过问题改写模型将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入问题改写模型的长短时记忆网络,得到当前时间步的隐式状态;通过问题改写模型根据隐式状态和编码表示,并基于注意力机制确定当前时间步的上下文向量;通过问题改写模型根据隐式状态、上下文向量和历史目标单词,分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率。
在一个实施例中,训练数据还包括标准问题语句,问题改写模型的优化装置还包括模型预训练模块,用于:从复制概率中确定标准问题语句中各标准单词的复制概率;根据各标准单词的复制概率确定问题改写模型的损失函数;基于损失函数对问题改写模型进行预训练,得到预训练的问题改写模型。
在一个实施例中,模型优化模块1204还用于将预测答案和标准答案间的损失值确定为奖赏值;对奖赏值的期望进行策略梯度处理,得到奖赏值的策略梯度;基于策略梯度对问题改写模型的改写策略进行优化。
在一个实施例中,如图13所示,提供了一种问题语句的改写装置1300,包括编码模块1301、复制概率确定模块1302、目标单词确定模块1303和时间步确定模块1304,其中:
编码模块1301,用于分别对问题语句和历史语句进行双向编码,得到问题语句和历史语句中各单词的编码表示;
复制概率确定模块1302,用于基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率;各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
目标单词确定模块1303,用于根据复制概率确定当前时间步需要进行复制的目标单词;
时间步确定模块1304,用于将下一时间步确定为当前时间步;复制概率确定模块还用于继续执行基于长短期记忆网络和指针网络,根据编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
在一个实施例中,复制概率确定模块1302还用于基于长短期记忆网络,根据编码表示分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率;将当前时间步的隐式状态和编码表示输入指针网络,得到当前时间步各单词在所属语句中的第二复制概率;基于第一复制概率和第二复制概率确定各单词的复制概率。
在一个实施例中,复制概率确定模块1302还用于将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入长短时记忆网络,得到当前时间步的隐式状态;根据隐式状态和编码表示并基于注意力机制,确定当前时间步的上下文向量;根据隐式状态、上下文向量和历史目标单词,分别确定当前时间步从问题语句和历史语句中复制内容的第一复制概率。
在一个实施例中,问题语句的改写装置还包括策略优化模块,用于发送改写后的问题语句至答案预测模型,得到改写后的问题语句的预测答案;基于根据预测答案和标准答案确定的奖赏值对改写策略进行优化。
图1示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图1所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。可以理解的是,当计算机设备为终端时,该计算机设备还可以包括显示屏和输入装置等。
其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现问题改写模型的优化方法或问题语句的改写方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行问题改写模型的优化方法或问题语句的改写方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述问题改写模型的优化方法或问题语句的改写方法的步骤。此处问题改写模型的优化方法或问题语句的改写方法的步骤可以是上述各个实施例的问题改写模型的优化方法或问题语句的改写方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述问题改写模型的优化方法或问题语句的改写方法的步骤。此处问题改写模型的优化方法或问题语句的改写方法的步骤可以是上述各个实施例的问题改写模型的优化方法或问题语句的改写方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(R AM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DD RSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种问题语句的改写方法,包括:
分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
2.根据权利要求1中所述的方法,其特征在于,所述基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率包括:
基于长短期记忆网络,根据所述编码表示分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率;
将当前时间步的隐式状态和所述编码表示输入指针网络,得到当前时间步各单词在所属语句中的第二复制概率;
基于所述第一复制概率和所述第二复制概率确定各单词的复制概率。
3.根据权利要求2中所述的方法,其特征在于,所述基于长短期记忆网络,根据所述编码表示分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率包括:
将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入长短时记忆网络,得到当前时间步的隐式状态;
根据所述隐式状态和所述编码表示并基于注意力机制,确定当前时间步的上下文向量;
根据所述隐式状态、上下文向量和历史目标单词,分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率。
4.根据权利要求1-3任一项所述的方法,所述方法还包括:
发送所述改写后的问题语句至答案预测模型,得到所述改写后的问题语句的预测答案;
基于根据所述预测答案和标准答案确定的奖赏值对改写策略进行优化。
5.一种问题改写模型的优化方法,包括:
将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
6.根据权利要求5所述的方法,其特征在于,所述通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句包括:
通过所述问题改写模型分别对所述问题语句和所述历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
通过所述问题改写模型的长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
通过所述问题改写模型根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行通过所述问题改写模型的长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
7.根据权利要求6所述的方法,其特征在于,所述通过所述问题改写模型的长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率包括:
通过所述问题改写模型的长短期记忆网络,根据所述编码表示分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率;
通过所述问题改写模型将当前时间步的隐式状态和所述编码表示输入所述问题改写模型的指针网络,得到当前时间步各单词在所属语句中的第二复制概率;
通过所述问题改写模型基于所述第一复制概率和所述第二复制概率,确定各单词的复制概率。
8.根据权利要求7所述的方法,其特征在于,所述通过所述问题改写模型的长短期记忆网络,根据所述编码表示分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率包括:
通过所述问题改写模型将上一时间步的历史隐式状态、历史上下文向量和历史目标单词输入所述问题改写模型的长短时记忆网络,得到当前时间步的隐式状态;
通过所述问题改写模型根据所述隐式状态和所述编码表示,并基于注意力机制确定当前时间步的上下文向量;
通过所述问题改写模型根据所述隐式状态、上下文向量和历史目标单词,分别确定当前时间步从所述问题语句和所述历史语句中复制内容的第一复制概率。
9.根据权利要求7所述的方法,其特征在于,所述训练数据还包括标准问题语句,所述方法还包括:
从所述复制概率中确定所述标准问题语句中各标准单词的复制概率;
根据各标准单词的复制概率确定所述问题改写模型的损失函数;
基于所述损失函数对所述问题改写模型进行预训练,得到预训练的问题改写模型。
10.根据权利要求5-9任一项所述的方法,其特征在于,所述根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化包括:
将所述预测答案和标准答案间的损失值确定为奖赏值;
对所述奖赏值的期望进行策略梯度处理,得到所述奖赏值的策略梯度;
基于所述策略梯度对所述问题改写模型的改写策略进行优化。
11.一种问题改写模型的优化装置,其特征在于,所述装置包括:
训练数据输入模块,用于将训练数据输入问题改写模型;所述训练数据包括问题语句和历史语句;
问题语句改写模块,用于通过所述问题改写模型根据所述历史语句对所述问题语句进行改写,得到携带有关键历史信息的改写后的问题语句;
预测答案获取模块,用于将所述改写后的问题语句输入答案预测模型,得到所述改写后的问题语句的预测答案;
模型优化模块,用于根据所述预测答案和标准答案确定奖赏值,并基于所述奖赏值对所述问题改写模型进行优化;
所述训练数据输入模块还用于继续执行将训练数据输入问题改写模型的步骤;直到所述奖赏值符合收敛条件。
12.根据权利要求11所述的装置,其特征在于,所述问题语句改写模块还用于:
通过所述问题改写模型分别对所述问题语句和所述历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
通过所述问题改写模型的长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
通过所述问题改写模型根据所述复制概率确定当前时间步需要进行复制的目标单词;
将下一时间步确定为当前时间步;继续执行通过所述问题改写模型的长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
13.一种问题语句的改写装置,其特征在于,所述装置包括:
编码模块,用于分别对问题语句和历史语句进行双向编码,得到所述问题语句和所述历史语句中各单词的编码表示;
复制概率确定模块,用于基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率;所述各单词的复制概率,是对相应的单词进行复制以得到改写后的问题语句的概率;
目标单词确定模块,用于根据所述复制概率确定当前时间步需要进行复制的目标单词;
时间步确定模块,用于将下一时间步确定为当前时间步;复制概率确定模块还用于继续执行基于长短期记忆网络和指针网络,根据所述编码表示确定当前时间步各单词的复制概率的步骤;直到确定完所有时间步需要进行复制的目标单词时,得到携带有关键历史信息的改写后的问题语句。
14.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至10中任一项所述方法的步骤。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至10中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910431357.8A CN110263330A (zh) | 2019-05-22 | 2019-05-22 | 问题语句的改写方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910431357.8A CN110263330A (zh) | 2019-05-22 | 2019-05-22 | 问题语句的改写方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110263330A true CN110263330A (zh) | 2019-09-20 |
Family
ID=67915192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910431357.8A Pending CN110263330A (zh) | 2019-05-22 | 2019-05-22 | 问题语句的改写方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110263330A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111259668A (zh) * | 2020-05-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN111401036A (zh) * | 2020-05-28 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 一种指代消解文本的生成方法、装置及电子设备 |
CN111428483A (zh) * | 2020-03-31 | 2020-07-17 | 华为技术有限公司 | 语音交互方法、装置和终端设备 |
CN111858911A (zh) * | 2020-04-21 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 工单描述信息的生成方法、装置、电子设备及存储介质 |
CN112328757A (zh) * | 2020-10-27 | 2021-02-05 | 电子科技大学 | 一种用于业务机器人问答系统的相似文本检索方法 |
CN112989008A (zh) * | 2021-04-21 | 2021-06-18 | 上海汽车集团股份有限公司 | 一种多轮对话改写方法、装置和电子设备 |
CN113204957A (zh) * | 2021-03-24 | 2021-08-03 | 中国南方电网有限责任公司超高压输电公司广州局 | 缺陷信息处理方法、装置、设备及存储介质 |
CN113435213A (zh) * | 2021-07-09 | 2021-09-24 | 支付宝(杭州)信息技术有限公司 | 针对用户问题和知识库返回答案的方法和装置 |
CN117633170A (zh) * | 2023-11-07 | 2024-03-01 | 中译语通科技股份有限公司 | 一种思维链数据构造方法、装置,电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180114108A1 (en) * | 2016-10-20 | 2018-04-26 | Google Inc. | Answer to question neural networks |
CN108763284A (zh) * | 2018-04-13 | 2018-11-06 | 华南理工大学 | 一种基于深度学习和主题模型的问答系统实现方法 |
CN109241536A (zh) * | 2018-09-21 | 2019-01-18 | 浙江大学 | 一种基于深度学习自注意力机制的句子排序方法 |
CN109508400A (zh) * | 2018-10-09 | 2019-03-22 | 中国科学院自动化研究所 | 图文摘要生成方法 |
CN109670029A (zh) * | 2018-12-28 | 2019-04-23 | 百度在线网络技术(北京)有限公司 | 用于确定问题答案的方法、装置、计算机设备及存储介质 |
-
2019
- 2019-05-22 CN CN201910431357.8A patent/CN110263330A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180114108A1 (en) * | 2016-10-20 | 2018-04-26 | Google Inc. | Answer to question neural networks |
CN108763284A (zh) * | 2018-04-13 | 2018-11-06 | 华南理工大学 | 一种基于深度学习和主题模型的问答系统实现方法 |
CN109241536A (zh) * | 2018-09-21 | 2019-01-18 | 浙江大学 | 一种基于深度学习自注意力机制的句子排序方法 |
CN109508400A (zh) * | 2018-10-09 | 2019-03-22 | 中国科学院自动化研究所 | 图文摘要生成方法 |
CN109670029A (zh) * | 2018-12-28 | 2019-04-23 | 百度在线网络技术(北京)有限公司 | 用于确定问题答案的方法、装置、计算机设备及存储介质 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111428483A (zh) * | 2020-03-31 | 2020-07-17 | 华为技术有限公司 | 语音交互方法、装置和终端设备 |
CN111858911A (zh) * | 2020-04-21 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | 工单描述信息的生成方法、装置、电子设备及存储介质 |
CN111259668A (zh) * | 2020-05-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN111401036A (zh) * | 2020-05-28 | 2020-07-10 | 支付宝(杭州)信息技术有限公司 | 一种指代消解文本的生成方法、装置及电子设备 |
CN111401036B (zh) * | 2020-05-28 | 2020-09-25 | 支付宝(杭州)信息技术有限公司 | 一种指代消解文本的生成方法、装置及电子设备 |
CN112328757A (zh) * | 2020-10-27 | 2021-02-05 | 电子科技大学 | 一种用于业务机器人问答系统的相似文本检索方法 |
CN113204957A (zh) * | 2021-03-24 | 2021-08-03 | 中国南方电网有限责任公司超高压输电公司广州局 | 缺陷信息处理方法、装置、设备及存储介质 |
CN112989008A (zh) * | 2021-04-21 | 2021-06-18 | 上海汽车集团股份有限公司 | 一种多轮对话改写方法、装置和电子设备 |
CN113435213A (zh) * | 2021-07-09 | 2021-09-24 | 支付宝(杭州)信息技术有限公司 | 针对用户问题和知识库返回答案的方法和装置 |
CN113435213B (zh) * | 2021-07-09 | 2024-04-30 | 支付宝(杭州)信息技术有限公司 | 针对用户问题和知识库返回答案的方法和装置 |
CN117633170A (zh) * | 2023-11-07 | 2024-03-01 | 中译语通科技股份有限公司 | 一种思维链数据构造方法、装置,电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263330A (zh) | 问题语句的改写方法、装置、设备和存储介质 | |
CN108647233B (zh) | 一种用于问答系统的答案排序方法 | |
CN111061847A (zh) | 对话生成及语料扩充方法、装置、计算机设备和存储介质 | |
JP2019215841A (ja) | 質問生成装置、質問生成方法及びプログラム | |
CN108959246A (zh) | 基于改进的注意力机制的答案选择方法、装置和电子设备 | |
CN110287489A (zh) | 文本生成方法、装置、存储介质和电子设备 | |
CN111198937A (zh) | 对话生成及装置、计算机可读存储介质、电子设备 | |
Mainzer | Artificial intelligence-When do machines take over? | |
CN106910497A (zh) | 一种中文词语发音预测方法及装置 | |
CN110390397A (zh) | 一种文本蕴含识别方法及装置 | |
CN116579339B (zh) | 任务执行方法和优化任务执行方法 | |
CN110968671A (zh) | 一种基于Bert的意图确定方法及装置 | |
WO2019235103A1 (ja) | 質問生成装置、質問生成方法及びプログラム | |
CN109948159B (zh) | 一种文本数据生成方法、装置、设备及可读存储介质 | |
CN115599901B (zh) | 基于语义提示的机器问答方法、装置、设备及存储介质 | |
CN112905772B (zh) | 语义相关性分析方法、装置及相关产品 | |
WO2022227163A1 (zh) | 命名实体识别模型的训练方法、装置、设备及介质 | |
CN112347756A (zh) | 一种基于序列化证据抽取的推理阅读理解方法及系统 | |
CN113641819A (zh) | 基于多任务稀疏共享学习的论辩挖掘系统及方法 | |
Thomas et al. | Chatbot using gated end-to-end memory networks | |
CN113869324A (zh) | 一种基于多模态融合的视频常识性知识推理实现方法 | |
CN108875024B (zh) | 文本分类方法、系统、可读存储介质及电子设备 | |
Hussain et al. | Robotics and Automation with Artificial Intelligence: Improving Efficiency and Quality | |
Gangadhar et al. | Analysis of optimization algorithms for stability and convergence for natural language processing using deep learning algorithms | |
CN117033602A (zh) | 一种多模态的用户心智感知问答模型的构建方法 |
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 |