CN115617959A - 问题解答方法及装置 - Google Patents
问题解答方法及装置 Download PDFInfo
- Publication number
- CN115617959A CN115617959A CN202110790942.4A CN202110790942A CN115617959A CN 115617959 A CN115617959 A CN 115617959A CN 202110790942 A CN202110790942 A CN 202110790942A CN 115617959 A CN115617959 A CN 115617959A
- Authority
- CN
- China
- Prior art keywords
- information
- matched
- question
- training
- reconstruction
- 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
Images
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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本说明书提供问题解答方法及装置,其中问题解答方法包括:获取待解答问题和对应的至少两个待匹配信息;将获取到的各个待匹配信息分别与待解答问题组成重构信息;将各个重构信息输入问题解答模型,获得各个重构信息的得分;根据各个重构信息的得分,确定至少两个待匹配信息中与待解答问题匹配的目标匹配信息。如此,通过信息重构正确处理了待解答问题和待匹配信息之间的语义关系,通过深度学习方法给各个待匹配信息的重构信息进行打分,从而确定出至少两个待匹配信息中与待解答问题匹配的目标匹配信息,将深度学习方法应用于问题解答过程中,实现了高精度的自动解答,大大提高了问题的解答效率和正确率。
Description
技术领域
本说明书涉及人工智能技术领域,特别涉及问题解答方法及装置。
背景技术
随着计算机和人工智能技术的不断发展,越来越多的工作和学习任务可以自动化处理,计算机技术已经逐步应用于各种日常的教育、学习活动中,例如利用计算机技术自动解析某些问题的答案,从而大大节省人力资源。
现有技术中,往往是预先构建题库,该题库中包括大量问题和对应的答案,在需要解答某个待解答问题时,通过计算该待解答问题与题库中各个问题的相似度,确定题库中与该待解答问题最相似的目标问题,然后将题库中该目标问题的答案确定为该待解答问题的答案。然而,上述问题解答方法,需要针对不同场景、不同年级、不同类型在题库中添加海量问题以确保精度,成本较大,操作繁琐、耗时长、效率低,且维护成本极高,需要定期对存储的问题进行优化,极大影响了问题的解答效率和正确率。
发明内容
有鉴于此,本说明书实施例提供了一种问题解答方法。本说明书同时涉及一种问题解答装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的问题的解答效率和正确率较低的问题。
根据本说明书实施例的第一方面,提供了一种问题解答方法,包括:
获取待解答问题和对应的至少两个待匹配信息;
将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
将各个重构信息输入问题解答模型,获得各个重构信息的得分;
根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
根据本说明书实施例的第二方面,提供了一种问题解答装置,包括:
获取模块,被配置为获取待解答问题和对应的至少两个待匹配信息;
组成模块,被配置为将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
获得模块,被配置为将各个重构信息输入问题解答模型,获得各个重构信息的得分;
确定模块,被配置为根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
根据本说明书实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现下述方法:
获取待解答问题和对应的至少两个待匹配信息;
将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
将各个重构信息输入问题解答模型,获得各个重构信息的得分;
根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述问题解答方法的步骤。
本说明书提供的问题解答方法,获取待解答问题和对应的至少两个待匹配信息,然后将获取到的各个待匹配信息分别与所述待解答问题组成重构信息,并将各个重构信息输入问题解答模型,获得各个重构信息的得分,然后根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。这种情况下,可以对待解答问题和对应的各个待匹配信息进行信息重构,然后通过问题解答模型对重构信息进行语义分析和打分,通过各个重构信息的得分,即可确定哪个重构信息较为正确,从而确定哪个待匹配信息与待解答问题较为匹配。如此,通过信息重构正确处理了待解答问题和待匹配信息之间的语义关系,通过深度学习方法给各个待匹配信息的重构信息进行打分,从而确定出至少两个待匹配信息中与待解答问题匹配的目标匹配信息,即待解答问题的正确答案,将深度学习方法应用于问题解答过程中,实现了高精度的自动解答,大大提高了问题的解答效率和正确率。
附图说明
图1是本说明书一实施例提供的一种问题解答方法的流程图;
图2是本说明书一实施例提供的一种自动解答的处理流程示意图;
图3是本说明书一实施例提供的一种问题解答装置的结构示意图;
图4是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
Transformer模型:其本质上是一个Encoder-Decoder的结构,编码器由6个编码block组成(encoder每个block由self-attention,FFNN组成),同样解码器是6个解码block组成(decoder每个block由self-attention,encoder-decoder attention以及FFNN组成),与所有的生成模型相同的是,编码器的输出会作为解码器的输入。
BERT模型:一种双向注意力神经网络模型。BERT模型可以通过左、右两侧上下文来预测当前词和通过当前句子预测下一个句子。BERT模型的目标是利用大规模无标注语料训练、获得文本的包含丰富语义信息的文本的语义表示,然后将文本的语义表示在特定NLP任务中作微调,最终应用于该NLP任务。
词单元(token):对输入文本做任何实际处理前,都需要将其分割成诸如词、标点符号、数字或纯字母数字等语言单元,这些单元被称为词单元。对于英文文本,词单元可以是一个单词、一个标点符号、一个数字等,对于中文文本,最小的词单元可以是一个字、一个标点符号、一个数字等。
词嵌入:是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。
归一化指数函数Softmax:是逻辑函数的一种推广,它能将一个含任意实数的K维向量“压缩”到另一个K维实向量中,使得每一个元素的范围都在[0,1]之间,并且所有元素的和为1。
交叉熵损失函数(Cross Entropy Loss):用于度量两个概率分布间的差异性信息的函数。
编码:信息从一种形式或格式转换为另一种形式的过程,在本说明书中是指文本转换为向量的过程,即采用嵌入式编码,通过阅读理解模型的嵌入层实现。
嵌入层:位于网络模型中的输入层,用于对输入的文本数据进行编码即嵌入式编码处理并输出文本向量;对输入的图像数据进行嵌入式编码处理并输出图像特征。
注意力层:位于网络模型中的一个层级结构,用于对文本向量进行自注意力或互注意力处理并输出向量矩阵;对图像特征进行自注意力或互注意力处理并输出特征矩阵。
需要说明的是,目前问题解答方法往往是预先构建题库,该题库中包括大量问题和对应的答案,在需要解答某个待解答问题时,通过计算该待解答问题与题库中各个问题的相似度,确定题库中与该待解答问题最相似的目标问题,然后将题库中该目标问题的答案确定为该待解答问题的答案。然而,上述问题解答方法,需要针对不同场景、不同年级、不同类型在题库中添加海量问题以确保精度,成本较大,操作繁琐、耗时长、效率低,且维护成本极高,需要定期对存储的问题进行优化,极大影响了问题的解答效率和正确率。且可解释性差,无法正确处理待解答问题和备选答案之间存在的语义关联。
另外,对于某些问题还可以通过计算各个备选答案与待解答问题之间的字符相似度,来确定待解答问题的正确答案,然而,在字符级别计算相似性,准确率过低,无法将同一语义的不同描述进行对应,导致问题的解答正确率较低。
因而,本说明书提供了一种问题解答方法,通过信息重构正确处理了待解答问题和备选答案之间的语义关系,通过深度学习方法给各个重构信息打分,解决了传统字符相似性匹配精确度不高的问题,且该方法的构建和维护成本较低,只需要相对少量的数据即可完成迭代训练更新。另外,还可以将深度学习方法和规则方法结合,实现了问题的自动解答。
在本说明书中,提供了一种问题解答方法,本说明书同时涉及一种问题解答装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本说明书一实施例提供的一种问题解答方法的流程图,具体包括以下步骤:
步骤102:获取待解答问题和对应的至少两个待匹配信息。
具体的,待解答问题可以是指等待回答的问题,待匹配信息可以是指待解答问题对应的多个备选答案。实际应用中,待解答问题可以是指选择题的题干,此时对应的待匹配信息可以为选择题包括的选项。当然,实际应用中,待解答问题和对应的待匹配信息还可以为其他场景下等待回答的问题与相应的备选答案,如待解答问题可以是指等待回答的填空题或计算题,此时对应的待匹配信息可以为基于知识库、历史回答等确定出的等待回答的填空题或计算题的候选答案,本说明书对此不进行限制。
另外,待解答问题可以是各个领域内的问题,如数学问题、语文问题、英语问题等。且,待解答问题可以是等待解答的问题,也可以是等待确定解答结果的问题,如该待解答问题可以是某个学生不会解答、进行搜索的一个问题,此时该待解答问题是等待解答的问题,不存在用户输入的解答信息;或者该待解答问题可以是某个学生提交自己解答信息的一个问题,此时该待解答问题是等待自动确定解答结果的问题,存在用户输入的解答信息。
需要说明的是,至少两个待匹配信息是待解答问题的备选答案,至少两个待匹配信息中存在与待解答问题相匹配的答案,即至少两个待匹配信息中存在待解答问题的正确答案,如待解答问题为选择题时,选择题一般会包括待解答问题和多个备选选项,获取到的待解答问题的备选选项的个数应该为至少2个,一般为3个或4个,正确答案为该多个备选选项中的一个或多个。
实际应用中,在解答待解答问题时,需要理解和分析各个待匹配信息的内容和待解答问题之间的语义关系,从而确定出各个待匹配信息中哪个为与待解答问题匹配的信息,因而需要获取待解答问题和对应的至少两个待匹配信息,从而便于后续对各个待匹配信息和待解答问题进行信息重构。并且,获取待解答问题对应的待匹配信息是指待匹配信息的具体内容,便于后续分析待匹配信息的具体内容和待解答问题之间的语义关系。
示例的,对于选择题“自然数中能被2整除的数都是(),A、合数,B质数,C、偶数,D奇数”来说,获取到的待解答问题为“自然数中能被2整除的数都是()”,待匹配信息为“合数”、“质数”、“偶数”和“奇数”。
步骤104:将获取到的各个待匹配信息分别与所述待解答问题组成重构信息。
需要说明的是,获取到的待解答问题对应的待匹配信息往往为多个,因而需要将每个待匹配信息与待解答问题组成一个重构信息,也即获取到的待解答问题对应的待匹配信息为几个,就可以组成几个重构信息,如一个待解答问题对应有4个待匹配信息,此时可以获取到该待解答问题以及对应的4个待匹配信息,将每个待匹配信息都和待解答问题进行重构,可以得到4个重构信息。
本实施例一个可选的实施方式中,将获取到的各个待匹配信息分别与所述待解答问题组成重构信息,具体实现过程可以如下:
针对每个待匹配信息,将所述待匹配信息填入所述待解答问题中的空缺位置处,组成所述待匹配信息的重构信息。
需要说明的是,待解答问题往往是填空的形式,也即将待匹配信息的具体内容填入到待解答问题的空缺位置处后,该待解答问题可以变成一句完整的句子,通过确定该句子是否正确,可以确定该待匹配信息是否与待解答问题匹配,即是否为待解答问题的正确答案。因而,在将各个待匹配信息和待解答问题进行信息重构时,可以将待匹配信息填入待解答问题的空缺位置处,组成该待匹配信息的重构信息,各个待匹配信息都按照上述操作,组成相应的重构信息后,即可得到各个待匹配信息与待解答问题组成的多个重构信息。
沿用上例,获取到的待解答问题为“自然数中能被2整除的数都是()”,待匹配信息为“合数”、“质数”、“偶数”和“奇数”。将待匹配信息“合数”填入待解答问题的空缺位置处,可以得到一个重构信息“自然数中能被2整除的数都是合数”,将待匹配信息“质数”填入待解答问题的空缺位置处,可以得到一个重构信息“自然数中能被2整除的数都是质数”,将待匹配信息“偶数”填入待解答问题的空缺位置处,可以得到一个重构信息“自然数中能被2整除的数都是偶数”,将待匹配信息“奇数”填入待解答问题的空缺位置处,可以得到一个重构信息“自然数中能被2整除的数都是奇数”,如此得到了4个待匹配信息与待解答问题组成的重构信息。
实际应用中,将待匹配信息和待解答问题组合得到的各个重构信息中,只有待匹配信息内容不同,待解答问题部分是完全相同的,也即不同的重构信息中大部分内容均是相同的,只有较少部分的不同,不利于后续问题解答模型区分不同重构信息之间的区别。
由于后续解答待解答问题时,采用的问题解答模型中可以包括预训练语言层,该预训练语言层可以是BERT模型的结构,即问题解答模型以BERT模型为架构,而BERT模型的原生结构中,输入可以分为两个部分,第一部分与第二部分之间用分隔符隔开,因而利用BERT模型的原生结构的特点,可以在将待匹配信息和待解答问题组合得到重构信息时,也分为两个部分。第一种是将待匹配信息填入待解答问题中,直接得到该待匹配信息的重构信息,此时该重构信息为第一部分,此时没有第二部分;第二种是将待匹配信息插入在待解答问题前面,并在待匹配信息和待解答问题之间设置分隔符,得到该待匹配信息的重构信息,此时第一部分为待匹配信息,第二部分为待解答问题。
本实施例一个可选的实施方式中,将待匹配信息填入待解答问题中,组合得到重构信息时,除了上述将待匹配信息填入待解答问题的空缺处,直接得到组合后的重构信息之外,还可以在将待匹配信息填入待解答问题的空缺处之后,再将待匹配信息作为第一部分插入至填入待匹配信息的待解答问题之前,得到组合后的重构信息,也即所述将所述待匹配信息填入所述待解答问题中的空缺位置处之后,还包括:
将所述待匹配信息插入在填入所述待匹配信息的待解答问题之前,并在所述待匹配信息和填入所述待匹配信息的待解答问题之间设置分隔符。
具体的,分隔符为预先设置的符号,用于分割重构信息中的第一部分和第二部分,如分隔符可以为“-”、“*”、“&”等。实际应用中,将待匹配信息填入待解答问题的空缺处之后,再在填入待匹配信息的待解答问题前面插入该待匹配信息,并使用分隔符隔开。
需要说明的是,将所述待匹配信息插入在所述待解答问题之前得到的重构信息中包括两个部分,第一部分是待匹配信息,第二部分是融入待匹配信息的待解答问题,对于不同的重构信息来说,其第一部分是显著不同的,第二部分大体相同,有少许不同。在后续通过问题解答模型对重构信息进行分析时,问题解答模型可以快速、准确分析到重构信息的第一部分显著不同,从而准确分析各个重构信息的语义信息,从而对各个重构信息进行打分,得到最后的正确答案。
沿用上例,将待匹配信息“合数”填入待解答问题的空缺位置处之后,再将待匹配信息“合数”插入到整个待解答问题的最前面,并在待匹配信息和待解答问题之间设置分隔符“-”,可以得到一个重构信息“合数-自然数中能被2整除的数都是合数”;将待匹配信息“质数”填入待解答问题的空缺位置处之后,再将待匹配信息“质数”插入到整个待解答问题的最前面,并在待匹配信息和待解答问题之间设置分隔符“-”,可以得到一个重构信息“质数-自然数中能被2整除的数都是质数”;将待匹配信息“偶数”填入待解答问题的空缺位置处之后,再将待匹配信息“偶数”插入到整个待解答问题的最前面,并在待匹配信息和待解答问题之间设置分隔符“-”,可以得到一个重构信息“偶数-自然数中能被2整除的数都是偶数”;将待匹配信息“奇数”填入待解答问题的空缺位置处之后,再将待匹配信息“奇数”插入到整个待解答问题的最前面,并在待匹配信息和待解答问题之间设置分隔符“-”,可以得到一个重构信息“奇数-自然数中能被2整除的数都是奇数”。
需要说明的是,上述方法是结合了将待匹配信息填入待解答问题以及将待匹配信息插入到待解答问题之前的两种方式,对待匹配信息和待解答问题进行重构,得到该待匹配信息对应的重构信息,当然实际应用中,上述两种方式也可以分开择一使用,即将待匹配信息填入待解答问题中的空缺位置处,组成该待匹配信息的重构信息;或者,将待匹配信息插入在待解答问题之前,并在待匹配信息和待解答问题之间设置分隔符,组成该待匹配信息的重构信息,可以从上述两个方式中任选一种,本说明书对此不进行限制。
本实施例一个可选的实施方式中,由于不同的待解答问题,获取到的对应的待匹配信息的个数可能并不相同,但是问题解答模型所能识别的类别的数目是固定的,因而在待解答问题对应的待匹配信息的个数不够时,可以采用预设的特殊符号作为待匹配信息,补充重构信息的个数,也即将获取到的各个待匹配信息分别与所述待解答问题组成重构信息之后,还包括:
确定所述待匹配信息的个数是否等于预设类别阈值;
在所述待匹配信息的个数小于所述预设类别阈值的情况下,确定所述待匹配信息的个数与所述预设类别阈值之间相差的数值;
将所述数值个预设特殊字符分别与所述待解答问题组成所述数值个重构信息。
具体的,预设类别阈值可以是预先设置的数值,该数值是问题解答模型所能识别的类别的数目,如问题解答模型用于识别4个待匹配信息中哪个待匹配信息正确,此时预设类别阈值为4,也即后续需要同时将4个重构信息输入问题解答模型中,该问题解答模型可以对该4个重构信息之间的关联关系、每个重构信息之间的语义关系进行分析打分,从而确定该4个重构信息中哪个是较为正确的表述。
另外,预设特殊字符是指预先设置的可以用于填充待匹配信息的符号,如预设特殊字符可以为“###”、“~~”等。
实际应用中,将所述数值个预设特殊字符分别与所述待解答问题组成所述数值个重构信息的过程,可以与上述将获取到的各个待匹配信息分别与所述待解答问题组成重构信息的具体实现过程类似,本说明书在此不再赘述。
需要说明的是,若待匹配信息的个数小于预设类别阈值,则说明基于待匹配信息得到的重构信息的数目不够,此时可以确定待匹配信息的个数与预设类别阈值之间相差的数值,该相差的数值就是需要填充的重构信息的个数,此时可以将该数值个预设特殊字符分别与待解答问题组成该数值个重构信息,该重构信息和基于待匹配信息组合得到的重构信息,共同组成后续问题解答模型的输入。
示例的,假设预设类别阈值为4,且获取到的待解答问题对应的待匹配信息为3个,将获取到的3个待匹配信息分别与待解答问题组成3个重构信息,分别为“合数-自然数中能被2整除的数都是合数”、“偶数-自然数中能被2整除的数都是偶数”和“奇数-自然数中能被2整除的数都是奇数”。此时,由于待匹配信息的个数为3个,小于预设类别阈值4,且待匹配信息的个数与预设类别阈值之间相差1,需要获取一个预设特殊字符,将该预设特殊字符与待解答问题组合得到一个重构信息,假设预设特殊字符为“###”,此时得到的重构信息为“###-自然数中能被2整除的数都是###”。
本说明书中可以对待解答问题和各个待匹配信息进行信息重构,通过信息重构便于后续正确处理待解答问题和待匹配信息之间的语义关系,通过深度学习方法给各个待匹配信息的重构信息进行打分。另外,在待匹配信息个数不够的情况下,还可以将预设特殊字符和待解答问题进行组合重构,以对重构信息进行填充,使得各种不同的待解答问题都可以采用本说明书提供的解答方法,灵活性和适应性更高。
步骤106:将各个重构信息输入问题解答模型,获得各个重构信息的得分。
需要说明的是,问题解答模型并不适用于传统的分类模型,由于待解答问题对应的各个待匹配信息本身并不具有特征,只有待匹配信息在具体的待解答问题中,待匹配信息才有不同。针对这一情况,本说明书中可以使用基于深度学习的排序方法。具体实现时,可以在获得各个待匹配信息的重构信息后,将各个重构信息一同输入问题解答模型中,通过该问题解答模型对输入的各个重构信息进行语义分析,并对各个重构信息进行打分,后续可以基于各个重构信息的得分排序,确定哪个重构信息相较于其他重构信息更为正确,从而确定出与待解答问题较为匹配的匹配信息,即确定出待解答问题的答案。
本实施例一个可选的实施方式中,问题解答模型可以包括预训练语言层和归一化层,预训练语言层用于对各个重构信息进行语义分析,得到各个重构信息的语义向量,归一化层用于对各个语义向量进行归一化处理,得到各个重构信息的得分,也即将各个重构信息输入问题解答模型,获得各个重构信息的得分,具体实现过程可以如下:
将各个重构信息输入问题解答模型的预训练语言层,获得各个重构信息的语义向量;
将各个重构信息的语义向量输入所述问题解答模型的归一化层,获得各个重构信息的得分。
实际应用中,采用的问题解答模型需要具备语义分析功能、对多个类别的打分功能,因而本说明书中的问题解答模型可以包括预训练语言层和归一化层。语义分析领域表现最好的模型是BERT模型,其通过大量的自然语言文本段落,使得模型具有强大的上下文理解能力,从而可以用于相关的自然语言任务中。因此,本说明书中可以采用BERT模型结构做为自动解题器的架构,即本说明书中问题解答模型的预训练语言层可以为BERT模型架构,BERT模型等于基于Transformer的双向编码器表征,根基就是Transformer,来源于attention is all you need,其中,双向的意思表示它在处理一个词的时候,能考虑到该词前面和后面单词的信息,从而获取上下文的语义。
也就是说,预训练语言层可以是基于大量新闻、社区问答、百科数据预训练得到的一个基础BERT模型。
另外,归一化层用于对各个重构信息进行归一化,得到各个重构信息的得分,且各个重构信息的得分之和应该为1,因而本说明书中归一化层可以采用归一化指数函数Softmax结构,输出预设类别阈值个类别的得分,也即预设类别阈值个重构信息的得分,且使得每一个重构信息的得分范围都在[0,1]之间,并且所有得分的和为1。
具体实现时,问题解答模型包括有预训练语言层和归一化层,该预训练语言层可以分析各个重构信息的上下文语义关系,获得各个重构信息的语义向量,然后基于归一化层对各个重构信息的语义向量进行分析,即可得出各个重构信息的得分。
一种可能的实现方式中,预训练语言层可以包括嵌入层和注意力层;将各个重构信息输入问题解答模型的预训练语言层,获得各个重构信息的语义向量,具体实现过程可以如下:
针对各个重构信息中的每个重构信息,将所述重构信息拆分为词单元;
通过所述预训练语言层包括的嵌入层,对各个所述词单元进行词嵌入处理,得到所述重构信息的编码向量;
将所述编码向量输入所述预训练语言层包括的注意力层,获得所述重构信息的语义向量。
需要说明的是,通过嵌入层可以对重构信息进行词嵌入处理,将高维空间的重构信息嵌入到一个维数低得多的连续向量空间中。另外,由于预训练语言层可以为BERT模型,且BERT模型能够接收的输入为单个的字,因而需要将所述各个重构信息拆分为词单元,每个词单元可以仅包括一个字符。
再者,所述预训练语言层既可以仅仅包括一个注意力层,也可以包括两个或多个注意力层,所述预训练语言层的输出向量即为最后一个注意力层的输出向量。例如,假设包括12个注意力层,那么所述预训练语言层的输出向量即为第12个注意力层的输出向量。
实际应用中,可以首先将重构信息切分为词单元,然后通过嵌入层对每个词单元进行词嵌入处理,得到该重构信息对应的编码向量,之后可以利用12层Transformer结构对于该重构信息的编码向量的信息做汇总,其中的核心模块是注意力机制(也即包括12个注意力层),从而可以针对特定字符,聚合汇总整个重构信息部分的信息,得到语义向量。
另外,基于问题解答模型的预训练语言层获得的各个重构信息的语义向量,可以表示各个重构信息中的上下文语义,训练完成的问题解答模型中的归一化层,具备划分语义向量所属类别的功能,因而将该各个语义向量输入所述问题解答模型的归一化层,即可输出待解答问题的各个重构信息的概率得分。
本实施例一个可选的实施方式中,问题解答模型可以包括预训练语言层和归一化层,预训练语言层为可以获取到的预训练BERT模型,先对获取到的预训练的BERT模型进行领域调整,使其可以适应问题解答任务,然后再对预训练语言层和归一化层一起进行有监督训练,使得训练完成的问题解答模型可以输出各个重构信息的得分,也即所述问题解答模型可以通过如下方法训练得到:
获取第一训练样本集,基于所述第一训练样本集对所述问题解答模型的预训练语言层进行迭代训练,调整所述预训练语言层的参数,直至达到训练停止条件,获得领域调整后的预训练语言层;
获取第二训练样本集,基于所述第二训练样本集和样本标签,对所述问题解答模型的预训练语言层和归一化层进行迭代训练,调整所述预训练语言层和归一化层的参数,直至达到训练停止条件,获得训练完成的问题解答模型,所述样本标签为所述第二训练样本集中每个训练样本携带的样本标签。
具体的,预训练语言层是从网上获取到的预训练BERT模型;第一训练样本集是包括需要问题解答模型解答处理的领域内的大量样本问题的集合,如需要对小学数学问题进行解答处理,则获取到的第一训练样本集为包括大量小学数学问题的集合,该样本集中的各个训练样本可以不包括标签,只需基于第一训练样本集对预训练语言层进行训练,使其能够适应的数学问题的识别和分析领域。
另外,在对预训练BERT模型进行领域调整训练时,采用的第一训练样本集只需包括要问题解答模型解答处理的领域内的大量问题样本,并不一定要限定问题的类型,如需要对小学数学选择题进行解答处理,第一训练样本集中可以包括大量的小学数学选择题、小学数学选择题和/或小学数学填空题等。
需要说明的是,不同领域的待解答问题具有不同的特征,明显区别于预训练BERT模型时采用的大量新闻、社区问答、百科数据等数据,因而在使用预训练BERT模型作为问题解答模型的预训练语言层之前,还需要获取问题解答模型要解答处理的领域内的大量样本问题,再对预训练BERT模型进行小规模领域调整训练。
实际应用中,一个句子的意思往往可以由一部分词推测出来,通过把部分词给屏蔽(masked),可以加强模型抽取推测能力。但是,由于在最终的应用阶段,输入的却是完整的句子,没有进行屏蔽,因而在训练的时候不能一直处于屏蔽状态,通常一个句子80%的时间进行了屏蔽操作,10%的时间不进行屏蔽。而且对于一个句子,替换一个词,可能表达的意思不一样,甚至是莫名其妙,但是整个句子潜在结构信息却是不变,所以剩余的10%的时间可以进行随机词替换。
也即是,在对预训练语言层进行迭代训练时,针对第一训练样本集中的每个训练样本,80%的时间采用[MASK]标志取代被选中的词,10%的时间采用随机其他词取代被选中的词,另外10%的时间被选中的词保持不变,从而训练模型的学习与分析能力。
示例的,第一训练样本集中某个训练样本为“自然数中能被2整除的数都是偶数”,80%的时间输入为:自然数中能被2整除的数都是[masked],10%的时间输入为:自然数中能被2整除的数都是偶数,10%的时间输入为:自然数中能被2整除的数都是奇数,对预训练语言层进行迭代训练,从而训练模型的学习与分析能力。
另外,实际应用中还可以基于第一训练样本集,通过隐藏词单元的方式替代上述的mask过程,对预训练语言层进行迭代训练,本说明对此不进行限制。
本实施例一个可选的实施方式中,在对预训练语言层进行领域调整后,还可以进一步对预训练语言层和归一化层一起进行有监督训练,使得训练完成的问题解答模型可以输出各个重构信息的得分。进行有监督训练使用的训练样本(即第二训练样本集中每个训练样本)可以包括待解答样本问题和对应的至少两个待匹配样本信息,训练样本携带的样本标签可以至少两个待匹配样本信息中与待解答样本问题匹配的目标样本匹配信息,此时基于所述第二训练样本集和样本标签,对所述问题解答模型的预训练语言层和归一化层进行迭代训练,调整所述预训练语言层和归一化层的参数,直至达到训练停止条件,具体实现过程可以如下:
针对第二训练样本集包括的第i个训练样本,将所述第i个训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息,所述i等于1;
将各个样本重构信息输入所述问题解答模型,并根据输出的得分确定所述训练样本的预测答案;
根据所述预测答案和所述目标样本匹配信息,计算所述问题解答模型的损失值,反向调整所述预训练语言层和归一化层的参数;
令i自增1,返回执行针对第二训练样本集包括的第i个训练样本,将所述训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息的操作步骤,直至达到训练停止条件。
具体的,第二训练样本集是包括需要问题解答模型解答处理的领域内的大量待解答样本问题和对应的至少两个待匹配样本信息的集合,如需要对数学选择题进行解答处理,则获取到的第二训练样本集为包括大量数学选择题的题目和对应的选项的集合。该第二训练样本集是用于对整个问题解答模型进行训练,即对预训练语言层和归一化层一起训练,使得问题解答模型可以输出各个重构信息的得分,因而第二训练样本集包括的各个训练样本均需要携带对应的样本标签,该样本标签为目标样本匹配信息,用于标识训练样本中哪个待匹配样本信息与待解答样本问题相匹配,即哪个待匹配样本信息是待解答样本问题的正确答案。
需要说明的是,由于第二训练样本集用于对整个问题解答模型进行有监督训练,使得其可以正确识别各个重构信息中的各个重构信息为正确的概率,从而为其打分,因而第二训练样本集中的各个训练样本均包括待解答样本问题和对应的至少两个待匹配样本信息,且需要携带样本标签。
实际实现时,样本标签是指输入的训练样本的真实答案,预测答案是基于问题解答模型对各个重构信息的打分,预测出的训练样本的答案。实际应用中,可以基于预测答案与真实答案计算交叉熵损失函数,生成损失值,然后根据该损失值反向调整预训练语言层和归一化层中的参数,并获取训练样本,继续执行上述参数调整过程,直至达到训练停止条件。
具体的,训练停止条件可以包括损失值小于预设阈值。其中,预设阈值可以为损失值的临界值,在损失值大于或等于预设阈值的情况下,说明问题解答模型的预测结果与真实结果之间仍存在一定偏差,仍需调整问题解答模型的参数,并基于下一个训练样本继续对该问题解答模型进行训练;在损失值小于预设阈值的情况下,说明问题解答模型的预测结果与真实结果的接近程度已经足够,可以停止训练。预设阈值的数值可以根据实际情况确定,本说明书对此不做限制。
另外,由于迭代训练的次数越多,训练得到的问题解答模型就越准确,但是训练次数不能无限制的多,因而还可以通过迭代次数是否达到次数阈值,来确定是否达到训练停止条件,本说明书对此不进行限制。
需要说明的是,样本标签是指真实想要问题解答模型输出的答案,也即样本标签为真实结果,而将训练样本的各个重构信息输入问题解答模型,基于输出的各个得分,预测出的答案是预测结果,在预测结果和真实结果之间的差值足够小时,说明预测结果足够接近真实结果,此时问题解答模型训练完成,可以自动解答待解答问题,基于输出的各个得分,可以准确确定出对应的正确答案。
本说明书中可以先获取需要问题解答模型解答处理的领域内的大量样本问题,对从网上获取到的预训练语言层进行领域调整,使得预训练语言层能更好的分析该领域内的信息,然后再基于该领域内携带标签的大量训练样本,对包括的预训练语言层和归一化层进行整体训练,通过计算损失值可以直观的示出模型的预测结果与真实结果之间的差异,再对问题解答模型中预训练语言层和归一化层中的参数进行针对性调整,可以有效提高模型训练的速率及模型训练的效果。另外,本说明书中可以根据损失值确定问题解答模型的具体训练情况,并在训练未合格的情况下根据损失值反向调整问题解答模型的参数以提高该问题解答模型的问题处理、分析能力,训练速率高,且训练效果好。
步骤108:根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
需要说明的是,重构信息的得分可以表示该重构信息为正确的概率,通过各个重构信息的得分可以确定出相应的待匹配信息与待解答问题相匹配的概率,即待匹配信息是待解答问题的正确答案的概率,也就是说,目标匹配信息是指至少两个待匹配信息中待解答问题的正确答案。
实际应用中,可以对各个重构信息的得分进行排序,选取排序靠前的预设数值个重构信息,该重构信息对应的待匹配信息即为与待解答问题匹配的目标匹配信息。其中,预设数值是预先设置的正确答案的个数,对于只选择一个目标匹配信息,预设数值为1,对于可以选择多个目标匹配信息,预设数值为可以选择的目标匹配信息的个数。例如,对于单选题,预设数值为1,对于多选题,预设数值可以为需要选择的答案的个数,如2。
沿用上例,图2是本说明书一实施例提供的一种自动解答的处理流程示意图,如图2所示,在从网上获取到预训练的BERT模型后,对该BERT模型进行领域调整训练,然后在领域调整训练后的BERT模型后添加归一化层,得到问题解答模型,然后对该问题解答模型整体进行训练。训练完毕后,对于待解答问题“自然数中能被2整除的数都是()”,以及对应的待匹配信息“A、合数,B质数,C、偶数,D奇数”,将各个待匹配信息分别与待解答问题组合组成重构信息,得到如下4个重构信息。
重构信息1为“合数-自然数中能被2整除的数都是合数”、重构信息2为“质数-自然数中能被2整除的数都是质数”、重构信息3为“偶数-自然数中能被2整除的数都是偶数”、重构信息4为“奇数-自然数中能被2整除的数都是奇数”。
将该4个重构信息同时输入问题解答模型中,获得问题解答模型输出的重构信息1得分为0.01、重构信息2得分为0.03、重构信息3得分为0.91、重构信息4得分为0.05。然后将上述4个重构信息的得分进行排序,选择得分最高的重构信息3作为最正确的答案,由于重构信息3是待匹配信息“偶数”组合得到的重构信息,因而与待解答问题匹配的目标匹配信息为“偶数”,即“偶数”为待解答问题的正确答案。
本实施例一个可选的实施方式中,由于某些领域内的待解答问题可能是纯计算类,涉及到较多的数字,但是BERT模型对于数字的敏感性不强,也即采用基于BERT模型架构的问题解答模型确定出的纯计算题的答案可能并不准确,因而还可以进一步对模型的解答结果进行验证,也即根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息之后,还包括:
确定所述待解答问题是否符合预设字符规则;
在所述待解答问题符合所述预设字符规则的情况下,调用函数库,通过所述函数库中所述待解答问题对应的解答函数,获得所述待解答问题的计算答案;
确定所述计算答案和所述目标匹配信息是否相同;
若不相同,则将所述计算答案确定为所述待解答问题的更新匹配信息。
具体的,预设字符规则可以是指预先设置的待解答问题的筛选规则,符合该预设字符规则的待解答问题,可以通过解答函数确定出相应的答案,如预设字符规则为待解答问题中数字所占的比例大于比例阈值,其中比例阈值可以是指预先设置的数值,用于选择待解答问题中的数字是否过多。
需要说明的是,在所述待解答问题符合所述预设字符规则的情况下,说明待解答问题中的数字占比较大,该待解答问题可能为一道纯计算类的问题,因而此时可以调用预设的函数库,通过该函数库中相应的解答函数,直接通过计算,确定出待解答问题的计算答案,然后将该计算答案和基于问题解答模型确定出的目标匹配信息进行对比,若相同,则说明基于问题解答模型确定出的目标匹配信息无误,确定出的目标匹配信息可以不进行更新,若不相同,则说明基于问题解答模型确定出的目标匹配信息有误,可以将待解答问题的目标匹配信息更新为该计算答案
示例的,待解答问题为“比较大小:6*7()41+3”,对应的待匹配信息为“A、大于,B、小于,C等于”。将各个待匹配信息分别与待解答问题组成重构信息,得到重构信息1“比较大小:6*7大于41+3”、重构信息2“比较大小:6*7小于41+3”、重构信息3“比较大小:6*7等于41+3”。然后基于预设特殊字符,得到填充的重构信息4“比较大小:6*7###41+3”。将上述4个重构信息输入问题解答模型中,输出重构信息1的得分为0.30、重构信息2的得分为0.23、重构信息3的得分为0.27、重构信息4的得分为0.20。将重构信息中得分最高的重构信息1作为最正确的答案,由于重构信息1是待匹配信息“大于”组合得到的重构信息,因而与待解答问题匹配的目标匹配信息为“大于”。
然后,假设确定出待解答问题中符合预设字符规则,说明该待解答问题的数字较多,此时可以确定待解答问题对应的解答函数为:y=(a*b)-(c+d),将具体的数值带入上述解答函数中,可以计算得到y等于-2,由于计算得到的结果为负值,因而该待解答问题的计算答案为“小于”。
由于通过解答函数确定出的计算答案和基于问题解答模型确定出的目标匹配信息不同,因而说明基于问题解答模型确定出的目标匹配信息有误,此时将与待解答问题匹配的目标匹配信息由“大于”更新为“小于”,即将待解答问题的正确答案由“大于”更新为“小于”。
本实施例一个可选的实施方式中,可以基于各个重构信息的得分,预估问题解答模型的解答结果的可信度,从而决定是否执行后续的验证更新操作,也即确定所述待解答问题是否符合预设字符规则之前,还包括:
确定各个重构信息的得分中最高得分与最低得分之间的得分差值;
确定所述得分差值是否大于差值阈值;
相应地,所述确定所述待解答问题是否符合预设字符规则,包括:
若所述得分差值不大于差值阈值,则执行所述确定所述待解答问题是否符合预设字符规则的操作步骤。
具体的,差值阈值可以是指预先设置的一个数值,用于确定问题解答模型输出的各个得分中,最高的得分是否明显高于其他得分,即最高得分与最低得分之间的得分差值是否大于差值阈值。
需要说明的是,若每个待解答问题基于问题解答模型确定出对应的正确答案后,均需要再确定数字占比,从而确定是否需要对基于问题解答模型确定出的目标匹配信息进行更新,操作较为繁琐,可能会极大地浪费处理资源。由于正常情况下,问题解答模型输出的各个重构信息的得分中,目标匹配信息对应的重构信息的得分应该明显高于其他重构信息的得分,若得到的各个得分相差不大,则说明问题解答模型的解答结果可能有误,此时可以再执行后续的验证、更新过程。
实际应用,若得分差值大于差值阈值,则说明问题解答模型输出的各个得分中最高得分远远高于其他得分,此时说明问题解答模型对于重构信息的分析较为准确,不进行后续的验证、更新操作;若得分差值不大于差值阈值,则说明问题解答模型输出的各个得分较为平均,无法明显确定出目标匹配信息,此时说明问题解答模型对于重构信息的分析可能有误,此时需要进行后续的验证、更新操作。也即,在确定出得分差值不大于差值阈值时,再执行确定待解答问题是否符合预设字符规则的操作步骤,从而节省处理资源。
实际应用中,除了上述基于问题解答模型确定出正确答案后,再对符合预设字符规则的待解答问题的答案进行验证之外,还可以在获取到待解答问题后,直接基于预设字符规则,对待解答问题进行筛选,将符合预设字符规则的待解答问题直接通过解答函数,确定对应的目标匹配信息,对于不符合预设字符规则的待解答问题,再对待匹配信息和待解答问题进行重构,基于问题解答模型确定目标匹配信息。从而使得问题解答模型无需对自身无法准确识别的待解答问题进行分析处理,大大节省处理资源。
本实施例一个可选的实施方式中,通过问题解答模型,可以自动确定出待解答问题的目标匹配信息,因而还可以基于该目标匹配信息对用户输入的解答信息进行自动分析,也即获取待解答问题和至少两个待匹配信息之后,还包括:
获取所述待解答问题的解答信息;
相应地,所述确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息之后,还包括:
将所述解答信息和所述目标匹配信息进行比较,确定所述待解答问题的解答结果。
需要说明的是,在获取待解答问题和对应的待匹配信息时,还可以同时获取用户回答的解答信息,后续基于问题解答模型自动确定出待解答问题的目标匹配信息后,可以对比解答信息和目标匹配信息,从而自动确定用户回答的解答信息是否正确,给出待解答问题的解答结果,从而实现自动化确定解答结果,节省人力资源。
本说明书提供的问题解答方法,可以对待解答问题和对应的各个待匹配信息进行信息重构,然后通过问题解答模型对重构信息进行语义分析和打分,通过各个重构信息的得分,即可确定哪个重构信息较为正确,即哪个待匹配信息与待解答问题较为匹配。如此,通过信息重构正确处理了待解答问题和待匹配信息之间的语义关系,通过深度学习方法给各个待匹配信息的重构信息进行打分,从而确定出至少两个待匹配信息中与待解答问题匹配的目标匹配信息,即待解答问题的正确答案,将深度学习方法应用于问题解答过程中,实现了高精度的自动解答,大大提高了问题的解答效率和正确率。
与上述方法实施例相对应,本说明书还提供了问题解答装置实施例,图3示出了本说明书一实施例提供的一种问题解答装置的结构示意图。如图3所示,该装置包括:
获取模块302,被配置为获取待解答问题和对应的至少两个待匹配信息;
组成模块304,被配置为将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
获得模块306,被配置为将各个重构信息输入问题解答模型,获得各个重构信息的得分;
确定模块308,被配置为根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
可选地,组成模块304进一步被配置为:
针对每个待匹配信息,将所述待匹配信息填入所述待解答问题中的空缺位置处,组成所述待匹配信息的重构信息。
可选地,组成模块304进一步被配置为:
将所述待匹配信息插入在填入所述待匹配信息的待解答问题之前,并在所述待匹配信息和填入所述待匹配信息的待解答问题之间设置分隔符。
可选地,组成模块304进一步被配置为:
确定所述待匹配信息的个数是否等于预设类别阈值;
在所述待匹配信息的个数小于所述预设类别阈值的情况下,确定所述待匹配信息的个数与所述预设类别阈值之间相差的数值;
将所述数值个预设特殊字符分别与所述待解答问题组成所述数值个重构信息。
可选地,所述装置还包括更新模块,被配置为:
确定所述待解答问题是否符合预设字符规则;
在所述待解答问题符合所述预设字符规则的情况下,调用函数库,通过所述函数库中所述待解答问题对应的解答函数,获得所述待解答问题的计算答案;
确定所述计算答案和所述目标匹配信息是否相同;
若不相同,则将所述计算答案确定为所述待解答问题的更新匹配信息。
可选地,所述更新模块进一步被配置为:
确定各个重构信息的得分中最高得分与最低得分之间的得分差值;
确定所述得分差值是否大于差值阈值;
若所述得分差值不大于差值阈值,则执行所述确定所述待解答问题是否符合预设字符规则的操作步骤。
可选地,获取模块302进一步被配置为:
获取所述待解答问题的解答信息;
相应地,所述装置还包括解答模块,被配置为:
将所述解答信息和所述目标匹配信息进行比较,确定所述待解答问题的解答结果。
可选地,获得模块306进一步被配置为:
将各个重构信息输入问题解答模型的预训练语言层,获得各个重构信息的语义向量;
将各个重构信息的语义向量输入所述问题解答模型的归一化层,获得各个重构信息的得分。
可选地,所述装置还包括训练模块,被配置为:
获取第一训练样本集,基于所述第一训练样本集对所述问题解答模型的预训练语言层进行迭代训练,调整所述预训练语言层的参数,直至达到训练停止条件,获得领域调整后的预训练语言层;
获取第二训练样本集,基于所述第二训练样本集和样本标签,对所述问题解答模型的预训练语言层和归一化层进行迭代训练,调整所述预训练语言层和归一化层的参数,直至达到训练停止条件,获得训练完成的问题解答模型,所述样本标签为所述第二训练样本集中每个训练样本携带的样本标签。
可选地,所述第二训练样本集中每个训练样本包括待解答样本问题和对应的至少两个待匹配样本信息,所述训练样本携带的样本标签为所述至少两个待匹配样本信息中与所述待解答样本问题匹配的目标样本匹配信息;所述训练模块进一步被配置为:
针对第二训练样本集包括的第i个训练样本,将所述第i个训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息,所述i等于1;
将各个样本重构信息输入所述问题解答模型,并根据输出的得分确定所述训练样本的预测答案;
根据所述预测答案和所述目标样本匹配信息,计算所述问题解答模型的损失值,反向调整所述预训练语言层和归一化层的参数;
令i自增1,返回执行针对第二训练样本集包括的第i个训练样本,将所述训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息的操作步骤,直至达到训练停止条件。
本说明书提供的问题解答装置,可以对待解答问题和对应的各个待匹配信息进行信息重构,然后通过问题解答模型对重构信息进行语义分析和打分,通过各个重构信息的得分,即可确定哪个重构信息较为正确,即哪个待匹配信息与待解答问题较为匹配。如此,通过信息重构正确处理了待解答问题和待匹配信息之间的语义关系,通过深度学习方法给各个待匹配信息的重构信息进行打分,从而确定出至少两个待匹配信息中与待解答问题匹配的目标匹配信息,即待解答问题的正确答案,将深度学习方法应用于问题解答过程中,实现了高精度的自动解答,大大提高了问题的解答效率和正确率。
上述为本实施例的一种问题解答装置的示意性方案。需要说明的是,该问题解答装置的技术方案与上述的问题解答方法的技术方案属于同一构思,问题解答装置的技术方案未详细描述的细节内容,均可以参见上述问题解答方法的技术方案的描述。
图4示出了根据本说明书一实施例提供的一种计算设备400的结构框图。该计算设备400的部件包括但不限于存储器410和处理器420。处理器420与存储器410通过总线430相连接,数据库450用于保存数据。
计算设备400还包括接入设备440,接入设备440使得计算设备400能够经由一个或多个网络460通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备440可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备400的上述部件以及图4中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图4所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备400可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备400还可以是移动式或静止式的服务器。
其中,处理器420用于执行如下计算机可执行指令,以实现下述方法:
获取待解答问题和对应的至少两个待匹配信息;
将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
将各个重构信息输入问题解答模型,获得各个重构信息的得分;
根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的问题解答方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述问题解答方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于实现任意一项所述问题解答方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的问题解答方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述问题解答方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (13)
1.一种问题解答方法,其特征在于,包括:
获取待解答问题和对应的至少两个待匹配信息;
将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
将各个重构信息输入问题解答模型,获得各个重构信息的得分;
根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
2.根据权利要求1所述的问题解答方法,其特征在于,所述将获取到的各个待匹配信息分别与所述待解答问题组成重构信息,包括:
针对每个待匹配信息,将所述待匹配信息填入所述待解答问题中的空缺位置处,组成所述待匹配信息的重构信息。
3.根据权利要求2所述的问题解答方法,其特征在于,所述将所述待匹配信息填入所述待解答问题中的空缺位置处之后,还包括:
将所述待匹配信息插入在填入所述待匹配信息的待解答问题之前,并在所述待匹配信息和填入所述待匹配信息的待解答问题之间设置分隔符。
4.根据权利要求1所述的问题解答方法,其特征在于,所述将获取到的各个待匹配信息分别与所述待解答问题组成重构信息之后,还包括:
确定所述待匹配信息的个数是否等于预设类别阈值;
在所述待匹配信息的个数小于所述预设类别阈值的情况下,确定所述待匹配信息的个数与所述预设类别阈值之间相差的数值;
将所述数值个预设特殊字符分别与所述待解答问题组成所述数值个重构信息。
5.根据权利要求1-4任一项所述的问题解答方法,其特征在于,所述根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息之后,还包括:
确定所述待解答问题是否符合预设字符规则;
在所述待解答问题符合所述预设字符规则的情况下,调用函数库,通过所述函数库中所述待解答问题对应的解答函数,获得所述待解答问题的计算答案;
确定所述计算答案和所述目标匹配信息是否相同;
若不相同,则将所述计算答案确定为所述待解答问题的更新匹配信息。
6.根据权利要求5所述的问题解答方法,其特征在于,所述确定所述待解答问题是否符合预设字符规则之前,还包括:
确定各个重构信息的得分中最高得分与最低得分之间的得分差值;
确定所述得分差值是否大于差值阈值;
相应地,所述确定所述待解答问题是否符合预设字符规则,包括:
若所述得分差值不大于差值阈值,则执行所述确定所述待解答问题是否符合预设字符规则的操作步骤。
7.根据权利要求1-4任一项所述的问题解答方法,其特征在于,所述获取待解答问题和对应的至少两个待匹配信息之后,还包括:
获取所述待解答问题的解答信息;
相应地,所述确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息之后,还包括:
将所述解答信息和所述目标匹配信息进行比较,确定所述待解答问题的解答结果。
8.根据权利要求1-4任一项所述的问题解答方法,其特征在于,所述将各个重构信息输入问题解答模型,获得各个重构信息的得分,包括:
将各个重构信息输入问题解答模型的预训练语言层,获得各个重构信息的语义向量;
将各个重构信息的语义向量输入所述问题解答模型的归一化层,获得各个重构信息的得分。
9.根据权利要求1-4任一项所述的问题解答方法,其特征在于,所述问题解答模型通过如下方法训练得到:
获取第一训练样本集,基于所述第一训练样本集对所述问题解答模型的预训练语言层进行迭代训练,调整所述预训练语言层的参数,直至达到训练停止条件,获得领域调整后的预训练语言层;
获取第二训练样本集,基于所述第二训练样本集和样本标签,对所述问题解答模型的预训练语言层和归一化层进行迭代训练,调整所述预训练语言层和归一化层的参数,直至达到训练停止条件,获得训练完成的问题解答模型,所述样本标签为所述第二训练样本集中每个训练样本携带的样本标签。
10.根据权利要求9所述的问题解答方法,其特征在于,所述第二训练样本集中每个训练样本包括待解答样本问题和对应的至少两个待匹配样本信息,所述训练样本携带的样本标签为所述至少两个待匹配样本信息中与所述待解答样本问题匹配的目标样本匹配信息;
所述基于所述第二训练样本集和样本标签,对所述问题解答模型的预训练语言层和归一化层进行迭代训练,调整所述预训练语言层和归一化层的参数,直至达到训练停止条件,包括:
针对第二训练样本集包括的第i个训练样本,将所述第i个训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息,所述i等于1;
将各个样本重构信息输入所述问题解答模型,并根据输出的得分确定所述训练样本的预测答案;
根据所述预测答案和所述目标样本匹配信息,计算所述问题解答模型的损失值,反向调整所述预训练语言层和归一化层的参数;
令i自增1,返回执行针对第二训练样本集包括的第i个训练样本,将所述训练样本的各个待匹配样本信息分别与待解答样本问题组成样本重构信息的操作步骤,直至达到训练停止条件。
11.一种问题解答装置,其特征在于,包括:
获取模块,被配置为获取待解答问题和对应的至少两个待匹配信息;
组成模块,被配置为将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
获得模块,被配置为将各个重构信息输入问题解答模型,获得各个重构信息的得分;
确定模块,被配置为根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
12.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现下述方法:
获取待解答问题和对应的至少两个待匹配信息;
将获取到的各个待匹配信息分别与所述待解答问题组成重构信息;
将各个重构信息输入问题解答模型,获得各个重构信息的得分;
根据各个重构信息的得分,确定所述至少两个待匹配信息中与所述待解答问题匹配的目标匹配信息。
13.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求1至10任意一项所述问题解答方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110790942.4A CN115617959A (zh) | 2021-07-13 | 2021-07-13 | 问题解答方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110790942.4A CN115617959A (zh) | 2021-07-13 | 2021-07-13 | 问题解答方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115617959A true CN115617959A (zh) | 2023-01-17 |
Family
ID=84855010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110790942.4A Pending CN115617959A (zh) | 2021-07-13 | 2021-07-13 | 问题解答方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115617959A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116523031A (zh) * | 2023-07-05 | 2023-08-01 | 深圳须弥云图空间科技有限公司 | 语言生成模型的训练方法、语言生成方法及电子设备 |
-
2021
- 2021-07-13 CN CN202110790942.4A patent/CN115617959A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116523031A (zh) * | 2023-07-05 | 2023-08-01 | 深圳须弥云图空间科技有限公司 | 语言生成模型的训练方法、语言生成方法及电子设备 |
CN116523031B (zh) * | 2023-07-05 | 2024-05-10 | 深圳须弥云图空间科技有限公司 | 语言生成模型的训练方法、语言生成方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795543B (zh) | 基于深度学习的非结构化数据抽取方法、装置及存储介质 | |
CN113656570B (zh) | 基于深度学习模型的视觉问答方法及装置、介质、设备 | |
CN111985239A (zh) | 实体识别方法、装置、电子设备及存储介质 | |
CN112905795A (zh) | 文本意图分类的方法、装置和可读介质 | |
CN112052684A (zh) | 电力计量的命名实体识别方法、装置、设备和存储介质 | |
CN111553159B (zh) | 一种问句生成方法及系统 | |
CN111897954A (zh) | 一种用户评论方面挖掘系统、方法、及存储介质 | |
CN112417092A (zh) | 基于深度学习的智能化文本自动生成系统及其实现方法 | |
CN115759119B (zh) | 一种金融文本情感分析方法、系统、介质和设备 | |
CN113723105A (zh) | 语义特征提取模型的训练方法、装置、设备及存储介质 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN115130538A (zh) | 文本分类模型的训练方法、文本处理的方法、设备及介质 | |
CN113486174B (zh) | 模型训练、阅读理解方法、装置、电子设备及存储介质 | |
CN112349294B (zh) | 语音处理方法及装置、计算机可读介质、电子设备 | |
CN115617959A (zh) | 问题解答方法及装置 | |
CN116719920A (zh) | 动态采样的对话生成模型训练方法、装置、设备及介质 | |
CN115757723A (zh) | 文本处理方法及装置 | |
CN113792120B (zh) | 图网络的构建方法及装置、阅读理解方法及装置 | |
CN115617961A (zh) | 问题解答方法及装置 | |
CN115510230A (zh) | 一种基于多维特征融合与比较增强学习机制的蒙古语情感分析方法 | |
CN114511084A (zh) | 增强问答交互信息的自动问答系统答案抽取方法及系统 | |
CN114139535A (zh) | 一种关键词造句方法、装置、计算机设备及可读介质 | |
CN114743421A (zh) | 一种外语学习智慧教学综合考核系统及方法 | |
CN114358579A (zh) | 评阅方法、评阅装置、电子设备以及计算机可读存储介质 | |
CN112836482A (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 |