CN112765306A - 智能问答方法、装置、计算机设备和存储介质 - Google Patents
智能问答方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112765306A CN112765306A CN202011628642.8A CN202011628642A CN112765306A CN 112765306 A CN112765306 A CN 112765306A CN 202011628642 A CN202011628642 A CN 202011628642A CN 112765306 A CN112765306 A CN 112765306A
- Authority
- CN
- China
- Prior art keywords
- question
- text
- candidate
- target
- answered
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000012549 training Methods 0.000 claims description 96
- 230000011218 segmentation Effects 0.000 claims description 59
- 238000012545 processing Methods 0.000 claims description 49
- 238000004590 computer program Methods 0.000 claims description 33
- 239000011159 matrix material Substances 0.000 claims description 28
- 239000013598 vector Substances 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 24
- 238000013507 mapping Methods 0.000 claims description 21
- 238000012163 sequencing technique Methods 0.000 claims description 12
- 238000007781 pre-processing Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 19
- 238000004422 calculation algorithm Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 239000000284 extract Substances 0.000 description 10
- 229920001098 polystyrene-block-poly(ethylene/propylene) Polymers 0.000 description 10
- 238000000605 extraction Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000010845 search algorithm Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 235000013399 edible fruits Nutrition 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 2
- 235000001674 Agaricus brunnescens Nutrition 0.000 description 1
- 102100033814 Alanine aminotransferase 2 Human genes 0.000 description 1
- 101000779415 Homo sapiens Alanine aminotransferase 2 Proteins 0.000 description 1
- 235000008331 Pinus X rigitaeda Nutrition 0.000 description 1
- 235000011613 Pinus brutia Nutrition 0.000 description 1
- 241000018646 Pinus brutia Species 0.000 description 1
- 241001122767 Theaceae Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
-
- 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
-
- 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
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种智能问答方法、装置、计算机设备和存储介质。方法包括:接收客户端输入的待回答问题文本;从问答库中获取至少两个与待回答问题文本匹配的候选问题文本;在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本;当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表;当接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。采用本方法能够提高答案的正确率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种智能问答方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了智能问答技术,智能问答技术是计算机在获取输入的待回答问题文本以及若干目标文档时,通过理解给定的目标文档给出回复文本的技术。
传统的智能问答技术首先从给定的目标文档中抽取比较重要的部分,然后基于所抽取出的文档内容回答问题,如果文档内容抽取错误,则无法给出正确的答案,答案的正确率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高答案正确率的智能问答方法、装置、计算机设备和存储介质。
一种智能问答方法,所述方法包括:
接收客户端输入的待回答问题文本;
从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本;
在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本;
当所述目标问题文本与所述待回答问题文本间的相似度大于相似度阈值时,向所述客户端反馈所述目标问题文本对应的第一回复文本;
当所述目标问题文本与所述待回答问题文本间的相似度小于或等于所述相似度阈值时,向所述客户端反馈关键词提示列表;当接收到所述客户端在所述关键词提示列表中选取的问题关键词时,向所述客户端反馈与所述问题关键词匹配的第二回复文本。
在一个实施例中,所述从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本,包括:
对所述待回答问题文本进行分词处理,得到待检索分词;
从分词索引列表中查询与所述待检索分词对应的索引编号;
从所述问答库的问答文档中提取所述索引编号对应的候选问题文本;
计算所述候选问题文本与所述待回答问题文本间的匹配度;
将所述匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与所述待回答问题文本匹配的候选问题文本。
在一个实施例中,所述第一回复文本为答案信息、或目标文档中包含所述答案信息的句子文本、或所述句子文本在所述目标文档中所属段落的段落文本;所述方法还包括:
查找所述问答库的问答文档中与所述目标问题文本匹配的答案信息;或者,
查找所述问答库的问答文档中与所述目标问题文本匹配的句子文本;或者;
在查找到所述问答库的问答文档中与所述目标问题文本匹配的句子文本时,确定所述句子文本在所述目标文档中所属段落的段落文本。
在一个实施例中,所述方法还包括:
对所述问答文档中的每个问题文本进行分词处理,得到与每个所述问题文本对应的问题词组;
为每个所述问题词组分配对应的索引编号;
根据所述索引编号与所述问题词组构建所述分词索引列表。
在一个实施例中,每个所述问题词组包含多个问题分词;所述根据所述索引编号与所述问题词组构建所述分词索引列表,包括:
根据所述索引编号和所述问题词组构建映射列表;
在所述映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;
以所述目标索引编号对应的问题分词为键,以所述目标索引编号为值构建所述分词索引列表。
在一个实施例中,所述问答库包括问答文档;所述方法还包括:
获取目标文档,并对所述目标文档进行分段处理,得到候选段落文本;
对所述候选段落文本进行分句处理,得到候选句子文本;
通过问题生成模型对所述候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本;所述候选句子文本是所述候选答案信息在所述目标文档所属句子的文本;
构建包含所述候选问题文本、所述候选答案信息和所述候选句子文本的问答文档。
在一个实施例中,所述通过问题生成模型对所述候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本,包括:
通过所述问题生成模型对所述候选句子文本进行随机解码预测,得到所述候选答案信息;
通过所述问题生成模型对所述候选答案信息以及所述候选句子文本进行确定性解码预测,得到所述候选问题文本。
在一个实施例中,所述问题生成模型是对预训练模型进行训练所得的模型;所述对预训练模型进行训练,包括:
从文档训练集中提取训练样本;
对所述训练样本进行预处理,得到处理后样本序列;
将所述处理后样本序列输入至所述预训练模型;
通过所述预训练模型,对预设的掩码矩阵和所述处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对所述句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;
将所述处理后样本序列与所述预测文本序列错开一位,计算所述处理后样本序列和所述预测文本序列之间的交叉熵损失值,并基于所述交叉熵损失值调整所述预训练模型中的参数,得到所述问题生成模型。
在一个实施例中,所述在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本,包括:
分别提取所述待回答问题文本与各候选问题文本的特征参数;
将所述特征参数输入排序模型进行相似度计算,得到所述待回答问题文本与各候选问题文本间的相似度;
在得到的相似度中,确定最大的目标相似度;
将所述目标相似度对应的候选问题文本确定为目标问题文本。
在一个实施例中,所述方法还包括:
从目标文档的候选段落文本中,获取与所述候选问题文本对应的目标段落文本;
提取所述待回答问题文本的关键词,得到问题关键词组;以及,提取每个所述目标段落文本的关键词,得到对应的段落关键词组;
根据所述问题关键词组以及所述段落关键词组生成关键词提示列表。
在一个实施例中,所述根据所述问题关键词组以及所述段落关键词组生成关键词提示列表,包括:
分别提取所述问题关键词组和每个所述段落关键词组之间的交集,得到每个所述交集中的第一目标关键词;
当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;所述目标交集属于所述交集中的至少一个,所述目标段落关键词组是所述段落关键词组中包含所述目标交集的词组;
根据所述第一目标关键词和所述第二目标关键词构成关键词提示列表。
一种智能问答装置,其特征在于,所述装置包括:
接收模块,用于接收客户端输入的待回答问题文本;
获取模块,用于从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本;
确定模块,用于在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本;
反馈模块,用于当所述目标问题文本与所述待回答问题文本间的相似度大于相似度阈值时,向所述客户端反馈所述目标问题文本对应的第一回复文本;
所述反馈模块,还用于当所述目标问题文本与所述待回答问题文本间的相似度小于或等于所述相似度阈值时,向所述客户端反馈关键词提示列表;当接收到所述客户端在所述关键词提示列表中选取的问题关键词时,向所述客户端反馈与所述问题关键词匹配的第二回复文本。
在一个实施例中,所述获取模块,还用于:
对所述待回答问题文本进行分词处理,得到待检索分词;
从分词索引列表中查询与所述待检索分词对应的索引编号;
从所述问答库的问答文档中提取所述索引编号对应的候选问题文本;
计算所述候选问题文本与所述待回答问题文本间的匹配度;
将所述匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与所述待回答问题文本匹配的候选问题文本。
在一个实施例中,所述第一回复文本为答案信息、或目标文档中包含所述答案信息的句子文本、或所述句子文本在所述目标文档中所属段落的段落文本;所述装置还包括:
查找模块,用于查找所述问答库的问答文档中与所述目标问题文本匹配的答案信息;或者,查找所述问答库的问答文档中与所述目标问题文本匹配的句子文本;或者;在查找到所述问答库的问答文档中与所述目标问题文本匹配的句子文本时,确定所述句子文本在所述目标文档中所属段落的段落文本。
在一个实施例中,所述装置还包括:
分词处理模块,用于对所述问答文档中的每个问题文本进行分词处理,得到与每个所述问题文本对应的问题词组;
分配模块,用于为每个所述问题词组分配对应的索引编号;
构建模块,用于根据所述索引编号与所述问题词组构建所述分词索引列表。
在一个实施例中,每个所述问题词组包含多个问题分词;所述构建模块,还用于:
根据所述索引编号和所述问题词组构建映射列表;
在所述映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;
以所述目标索引编号对应的问题分词为键,以所述目标索引编号为值构建所述分词索引列表。
在一个实施例中,所述装置还包括:
所述获取模块,还用于获取目标文档,并对所述目标文档进行分段处理,得到候选段落文本;
分句处理模块,用于对所述候选段落文本进行分句处理,得到候选句子文本;
问题生成模块,用于通过问题生成模型对所述候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本;所述候选句子文本是所述候选答案信息在所述目标文档所属句子的文本;
构建模块,用于构建包含所述候选答案信息、所述候选句子文本和所述候选问题文本的问答文档。
在一个实施例中,所述问题生成模块还用于:
通过所述问题生成模型对所述候选句子文本进行随机解码预测,得到所述候选答案信息;
通过所述问题生成模型对所述候选答案信息以及所述候选句子文本进行确定性解码预测,得到所述候选问题文本。
在一个实施例中,所述问题生成模型是对预训练模型进行训练所得的模型;所述装置还包括:
提取模块,用于从文档训练集中提取训练样本;
预处理模块,用于对所述训练样本进行预处理,得到处理后样本序列;
输入模块,用于将所述处理后样本序列输入至所述预训练模型;
计算模块,用于通过所述预训练模型,对预设的掩码矩阵和所述处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对所述句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;
生成模块,用于将所述处理后样本序列与所述预测文本序列错开一位,计算所述处理后样本序列和所述预测文本序列之间的交叉熵损失值,并基于所述交叉熵损失值调整所述预训练模型中的参数,得到所述问题生成模型。
在一个实施例中,所述确定模块,还用于:
分别提取所述待回答问题文本与各候选问题文本的特征参数;
将所述特征参数输入排序模型进行相似度计算,得到所述待回答问题文本与各候选问题文本间的相似度;
在得到的相似度中,确定最大的目标相似度;
将所述目标相似度对应的候选问题文本确定为目标问题文本。
在一个实施例中,所述装置还包括:
所述获取模块,还用于从目标文档的候选段落文本中,获取与所述候选问题文本对应的目标段落文本;
所述提取模块,还用于提取所述待回答问题文本的关键词,得到问题关键词组;以及,提取每个所述目标段落文本的关键词,得到对应的段落关键词组;
生成模块,用于根据所述问题关键词组以及所述段落关键词组生成关键词提示列表。
在一个实施例中,所述生成模块,还用于:
分别提取所述问题关键词组和每个所述段落关键词组之间的交集,得到每个所述交集中的第一目标关键词;
当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;所述目标交集属于所述交集中的至少一个,所述目标段落关键词组是所述段落关键词组中包含所述目标交集的词组;
根据所述第一目标关键词和所述第二目标关键词构成关键词提示列表。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述智能问答方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述智能问答方法的步骤。
上述实施例中,服务器接收客户端输入的待回答问题文本,从问答库中获取至少两个与待回答问题文本匹配的候选问题文本,并通过排序模型确定候选问题文本中与待回答问题文本相似度最大的目标问题文本。当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表,在接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。服务器在针对待回答问题文本给出回复文本时,不需要首先从预先给定的目标文本中抽取出部分文本进行理解,不会在文本抽取错误时产生错误累积的现象,第一回复文本和第二回复文本与回答问题文本的匹配度较高,答案正确率较高。
附图说明
图1为一个实施例中智能问答方法的应用环境图;
图2为一个实施例中智能问答方法的流程示意图;
图3为一个实施例中获取候选问题文本的流程示意图;
图4为一个实施例中构建分词索引列表的方法的流程示意图;
图5为另一个实施例中构建分词索引列表的方法的流程示意图;
图6为一个实施例中获取候选问题文本的方法的流程示意图;
图7为一个实施例中Beam Search算法解码过程的示意图;
图8为一个实施例中构建问题生成模型的方法的流程示意图;
图9为一个实施例中预训练模型的结构示意图;
图10为一个实施例中掩码矩阵的示意图;
图11为一个实施例中生成关键词提示列表的方法的流程示意图;
图12为另一个实施例中生成关键词提示列表的方法的流程示意图;
图13为一个实施例中智能问答装置的结构框图;
图14为另一个实施例中智能问答装置的结构框图;
图15为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的智能问答方法,可以应用于如图1所示的应用环境中。其中,服务器102与客户端104通过网络进行通信,接收客户端输入的待回答问题文本。然后,从问答库中获取至少两个与待回答问题文本匹配的候选问题文本,并通过排序模型确定候选问题文本中与待回答问题文本相似度最大的目标问题文本。当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,服务器102向客户端104反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,服务器102向客户端104反馈关键词提示列表,在接收到客户端104在关键词提示列表中选取的问题关键词时,向客户端104反馈与问题关键词匹配的第二回复文本。
其中,服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。客户端104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图2所示,提供了一种智能问答方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202,服务器接收客户端输入的待回答问题文本。
其中,待回答问题文本是以自然语言输入的问题文本。例如,待回答问题文本可以是“白云山有多高”、“一年有多少天”、“为什么会形成台风”等。待回答问题文本可以是各种知识领域的问题文本,对待回答问题文本的领域范围不做限制。另外,待回答问题文本也不限于是用中文描述的问题文本,也可以是以其他语言描述的问题文本。客户端在获取待回答问题文本之后,可以通过网络、蓝牙、USB连接等方式将待回答问题文本上传至服务器。
S204,服务器从问答库中获取至少两个与待回答问题文本匹配的候选问题文本。
其中,问答库是存储了候选问题文本以及与候选问题文本对应的回复文本的结构化、有组织的知识库。问答库中数据可以存储在服务器中的存储区域,也可以存储在服务器本地的数据库中,也可以存储在向服务器提供数据服务的云数据库中。
与待回答问题文本匹配的候选问题文本是与待回答问题文本间的匹配度大于预设阈值的问题文本。服务器可以根据匹配度算法计算待回答问题文本与问答库中的各候选问题文本间的匹配度,从中选出匹配度大于预设阈值的候选问题文本。匹配度算法例如可以是TF-IDF(Term Frequency–Inverse Document Frequency,词频-逆文本频率指数)算法、BM25算法以及Elasticsearch检索算法。
在一个实施例中,服务器在根据匹配度算法从问答库选出与待回答问题文本匹配的候选问题文本之前,也可以先从问答库中预选出部分与待回答问题文本匹配度较高的候选问题。然后再根据匹配度算法,从预选出的候选问题文本中选出与待回答问题文本匹配的候选问题文本。
S206,服务器在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本。
其中,排序模型是以计算两个问题文本间的相似度概率为训练任务进行训练得到的机器学习模型。训练得到的排序模型用于计算候选问题文本和待回答问题文本间的相似度概率。排序模型可以是XGBOOST模型、RankSVM模型等。服务器可以从网站上爬取对排序模型进行训练的训练样本,所爬取的训练样本不限于是特定知识领域的问题文本。
在一个实施例中,服务器首先提取出待回答问题文本与候选问题文本的特征参数,然后将特征参数输入排序模型,得到待回答问题文本与各候选问题文本间的相似度。然后,从候选问题文本中选出与待回答问题文本相似度最大的目标问题文本。
S208,当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,服务器向客户端反馈目标问题文本对应的第一回复文本。
其中,相似度阈值是服务器预先设置的阈值。第一回复文本是服务器根据目标问题文本向客户端反馈的答复文本。第一回复文本例如可以是问答库中与目标问题文本对应的答案信息、或目标文档中包含答案信息的句子文本、或句子文本在目标文档中所属段落的段落文本。例如,目标问题文本是“白云山有多高”,第一回复文本是句子文本“白云山高382米”,或者可以是答案信息“382米”,或者可以是段落文本“白云山位于A省,白云山高383米,山上有温泉,是A省的著名旅游景点”。
当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,说明目标问题文本与待回答问题文本比较相似,服务器可以根据目标问题文本对待回答问题文本进行答复。
服务器向客户端反馈目标问题文本的方式可以是向客户端发送以自然语言文字描述的第一回复文本,或者服务器将第一回复文本的文字转换为语音,并且向客户端反馈语音形式的第一回复文本。
S210,当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,服务器向客户端反馈关键词提示列表;当接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。
其中,关键词提示列表是由关键词组成的列表,在服务器无法回答客户端的问题时,用于引导客户端对提出的问题进行更改。例如,关键词提示列表可以是“白云山山峰高;白云山特产是什么;黄山山高位置”等。服务器可以根据待回答问题文本以及目标问题文本中的分词得到关键词提示列表。
第二回复文本是服务器根据客户端在关键词提示列表中选取的问题关键词向客户端反馈的答复文本。第二回复文本例如可以是目标文档中的段落。例如,当客户端选取的问题关键词是“白云山特产是什么”时,服务器向客户端反馈的第二回复文本是“白云山位于A省,山上具有丰富的物产资源,主要包括茶叶、香菇等”。
上述实施例中,服务器接收客户端输入的待回答问题文本,从问答库中获取至少两个与待回答问题文本匹配的候选问题文本,并通过排序模型确定候选问题文本中与待回答问题文本相似度最大的目标问题文本。当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表,在接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。服务器在针对待回答问题文本给出回复文本时,不需要首先从预先给定的目标文本中抽取出部分文本进行理解,不会在文本抽取错误时产生错误累积的现象,第一回复文本和第二回复文本与回答问题文本的匹配度较高,答案正确率较高。
在一个实施例中,如图3所示,服务器从问答库中获取至少两个与待回答问题文本匹配的候选问题文本,包括如下步骤:
S302,服务器对待回答问题文本进行分词处理,得到待检索分词。
S304,服务器从分词索引列表中查询与待检索分词对应的索引编号。
S306,服务器从问答库的问答文档中提取索引编号对应的候选问题文本。
S308,服务器计算候选问题文本与待回答问题文本间的匹配度。
S310,服务器将匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与待回答问题文本匹配的候选问题文本。
其中,分词处理是是将连续的字序列按照一定的规范重新组合成词序列的过程。例如,对“白云山高382米”进行分词处理得到的待检索分词为“白云山高382米”。分词处理的方法包括基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法等。在一个实施例中,通过结巴分词软件对待回答问题文本进行分词处理。
分词索引列表是以分词为键,以索引编号为值的列表。例如,分词索引列表为“怎么:[0,2];转移:[0,1]”,其中,0、1、2分别为一个索引编号,如果待检索分词为“怎么”,则其对应的索引编号为0和2。如果对待回答问题文本进行分词处理后得到的待检索分词为“怎么”和“转移”,则得到的索引编号为0、1和2。
问答文档是记载候选问题文本以及与候选问题文本对应的回复文本的文档。问答文档中可以记载候选问题文本,与候选问题文本对应的答案信息,以及目标文档中包含答案信息的句子文本。
在问答库中,每个索引编号对应一个候选问题文本,服务器在得到索引编号后,查询问答库的问答文档,从问答库的问答文档中提取出索引编号对应的候选问题文本。
服务器可以通过TF-IDF(Term Frequency–Inverse Document Frequency,词频-逆文本频率指数)算法、BM25算法以及Elasticsearch检索算法等计算候选问题文本与待回答问题文本间的匹配度。
服务器通过查询分词索引列表确定与待检索分词对应的索引编号,从而在问答库中找到与待回答问题文本具有相同分词的候选问题文本。然后,再通过相似度算法计算索引编号对应的候选问题文本与待回答问题文本间的匹配度,从而可以快速的找到与待回答问题文本匹配的候选问题文本。
在一个实施例中,第一回复文本为答案信息、或目标文档中包含答案信息的句子文本、或句子文本在目标文档中所属段落的段落文本;方法还包括:服务器查找问答库的问答文档中与目标问题文本匹配的答案信息;或者,服务器查找问答库的问答文档中与目标问题文本匹配的句子文本;或者;服务器在查找到问答库的问答文档中与目标问题文本匹配的句子文本时,确定句子文本在目标文档中所属段落的段落文本。
其中,答案信息是服务器针对待回答问题文本反馈的答案。例如,待回答问题文本为“白云山多高”,答案信息为“382米”。句子文本是目标文档中以自然语言描述的,包含答案信息的句子。例如句子文本为“白云山高382米”。段落文本是句子文本在目标文档中所属段落的文本。服务器可以通过对目标文档进行分段和分句得到句子文本和段落文本。并且可以根据句子文本是由哪些段落文本进行分句得到的,建立句子文本和段落文本之间的映射关系。例如,如果段落文本A经过分句得到句子文本X1、X2和X3,则建立段落文本A和句子文本X1、X2和X3之间的映射关系。服务器在得到句子文本X1、X2或者X3时,可以通过X1、X2、X3与A之间的映射关系得到段落文本A。
由于问答文档中记载了与目标问题文本匹配的回复文本,回复文本包括答案信息和句子文本。服务器通过查询问答文档可以获得与目标问题文本匹配的答案信息或者句子文本,通过句子文本和段落文本的映射关系可以获得句子文本在目标文档中所属段落的段落文本。
服务器通过查询问答库的问答文档得到与目标问题文本匹配的第一回复文本。由于目标问题文本与待回答问题文本的相似度较高,并且第一回复文本是预先得到的目标问题文本对应的回复文本。所以,服务器通过查询问答文档可以准确的反馈的第一回复文本。
在一个实施例中,如图4所示,服务器构建分词索引列表包括如下步骤:
S402,服务器对问答文档中的每个问题文本进行分词处理,得到与每个问题文本对应的问题词组。
S404,服务器为每个问题词组分配对应的索引编号。
S406,服务器根据索引编号与问题词组构建分词索引列表。
其中,分词处理是将连续的字序列按照一定的规范重新组合成词序列的过程。服务器可以通过结巴分词等分词软件对待回答问题文本进行分词处理。服务器在得到与每个问题文本对应的问题词组后,为每个问题词组分配对应的索引编号,也即为每个问题词组分配一个索引编号。例如,问答文档中的问题文本为“怎么把他的流程转移到另外一个人”、“如何将其流程转移给其他人”、“生病了怎么休假”,经过分词处理得到的问题词组分别为“怎么把他的流程转移到另外一个人”、“如何将其流程转移给其他人”、“生病了怎么休假”,并且分别为这三个问题词组分配索引编号1、2和3。服务器根据索引编号与问题词组构建以分词为键,以索引编号为值的分词索引列表。
在一个实施例中,如图5所示,每个问题词组包含多个问题分词;服务器根据索引编号与问题词组构建分词索引列表,包括如下步骤:
S502,根据索引编号和问题词组构建映射列表。
S504,在映射列表的问题词组中,确定每个问题分词所映射的目标索引编号。
S506,以目标索引编号对应的问题分词为键,以目标索引编号为值构建分词索引列表。
其中,映射列表是以索引编号为键,以问题词组为值的列表。例如,映射列表为:0:怎么把他的流程转移到另外一个人;1:如何将其流程转移给其他人;2:生病了怎么休假。对于映射列表的问题词组中的每个问题分词,服务器根据问题分词所属的问题词组确定每个问题分词所映射的目标索引编号。例如,对于问题分词“怎么”,由于“怎么”出现在了索引编号为0和2的问题词组中,所以服务器确定的目标索引编号为0和2,也即“怎么”对应[0,2],而“转移”对应[0,1]。所以,服务器以目标索引编号对应的问题分词为键,以目标索引编号为值构建的分词索引列表为“怎么:[0,2];转移:[0,1]”。
在一个实施例中,如图6所示,问答库包括问答文档,服务器构建问答文档包括如下步骤:
S602,服务器获取目标文档,并对目标文档进行分段处理,得到候选段落文本。
S604,服务器对候选段落文本进行分句处理,得到候选句子文本。
S606,服务器通过问题生成模型对候选句子文本进行处理,得到候选答案信息和候选答案信息对应的候选问题文本。候选句子文本是候选答案信息在目标文档所属句子的文本。
S608,服务器构建包含候选问题文本、候选答案信息和候选句子文本的问答文档。
其中,目标文档是预先为服务器配置的文档,可以是从客户端输入至服务器的文档,也可以是服务器从网站或者其他网络来源中获取的文档。目标文档与文档训练集之间没有交集,目标文档不包括在文档训练集之内。文档训练集是用于对预训练模型进行训练,得到问题生成模型的训练样本集合。分段处理是将目标文档划分为不同的候选段落文本。分句处理是将候选段落文本划分为不同的候选句子文本。服务器将相互匹配的候选问题文本、候选答案信息和候选句子文本配成问答对,从而构建出问答文档。
其中,服务器在问答库的问答文档中查找到的与目标问题文本匹配的句子文本包含于候选句子文本;句子文本在目标文档中所属段落的段落文本包含于候选段落文本。
其中,问题生成模型是能够对输入的候选句子文本进行预测,得到对应的候选答案信息以及与候选答案信息对应的候选问题文本的机器学习模型。在一个实施例中,问题生成模型是通过文档训练集中的训练样本对预训练模型进行训练得到的。
服务器通过问题生成模型自动的对候选句子文本进行预测,得到对应的候选答案信息和候选问题文本,不需要人工对候选句子文本进行预处理即可得到问答文档,提高了生成问答文档的效率。
在一个实施例中,服务器通过问题生成模型对候选句子文本进行处理,得到候选答案信息和候选答案信息对应的候选问题文本,包括:通过问题生成模型对候选句子文本进行随机解码预测,得到候选答案信息;通过问题生成模型对候选答案信息以及候选句子文本进行确定性解码预测,得到候选问题文本。
其中,问题生成模型根据随机解码算法对输入的候选句子文本x={x1,x2,...,xn}进行解码,得到候选答案信息y={y1,y2,...,yn}。第一步首先计算候选的多个y1的p(y1|x),p(·)为softmax函数。然后从p(y1|x)大于预设概率阈值的k个候选y1中随机选择一个作为最终得到的y1。第二步对于候选的多个y2,计算p(y2|x,y1)。同样的,从p(y2|x,y1)大于预设概率阈值的k个候选y2中随机选择一个作为最终得到的y2。
在一个实施例中,确定性解码算法为Beam Search算法。Beam Search算法中的参数k表示每一步解码得到概率最高的k个字符序列,然后下一步用这k个字符序列继续解码生成更多的字符。假设问题生成模型的输入为x=“[CLS]白云山主峰海拔382米[SEP]382米[SEP]”,生成的候选问题文本为t={t1,t2,...,tn}。服务器将通过随机解码算法得到的候选答案信息拼接到输入x的后面,得到新输入x1,然后对x1进行确定性解码,得到候选问题文本。如图7所示为Beam Search算法生成候选问题文本的过程。假设k=2,输入的序列x={白,云,山,有,多,高}。
第一步,对于多个候选的t1,服务器计算p(t1|x1),然后保留计算出的函数值最大的两个字符,比如“白”,“主”作为t1,并记录它们的函数值。
第二步,对于多个候选的t2,分别计算p(t2|x1,白)和p(t2|x1,主),保留函数值最大的两个字符序列,例如,如图7所示的白云和主峰两个字符序列。
第三步,计算p(t3|x1,白,云)和p(t3|x1,主,峰),保留函数值最大的两个字符序列,例如,如图7所示的白云山和白云峰两个字符序列。
依次类推,直到出现[SEP]时停止,然后从最终得到的k个序列中选出最后计算出的概率值最大的序列。
由于,对于一个给定的候选句子样本,可能可以生成多个候选问题文本和候选答案信息,所以服务器采用随机解码算法生成候选答案信息,采用确定性解码算法生成候选问题文本,既可以灵活的生成多个候选答案信息又不会使生成的候选问题文本过于随机。
在一个实施例中,如图8所示,问题生成模型是对预训练模型进行训练所得的模型;服务器对预训练模型进行训练包括如下步骤:
S802,服务器从文档训练集中提取训练样本。
S804,服务器对训练样本进行预处理,得到处理后样本序列;
S806,服务器将处理后样本序列输入至预训练模型。
S808,服务器通过预训练模型,对预设的掩码矩阵和处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列。
S810,服务器将处理后样本序列与预测文本序列错开一位,计算处理后样本序列和预测文本序列之间的交叉熵损失值,并基于交叉熵损失值调整所述预训练模型中的参数,得到问题生成模型。
其中,文档训练集可以是从开源的通用的问答语料库中获取的句子样本集合。通用问答语料库中包括所有知识领域的问答预料,不限于特定知识领域。但文档训练集中不包括用于生成问答文档的目标文档。服务器将文档训练集中的训练样本构建成适合对预训练模型进行训练的格式。例如,服务器构建的训练样本格式为:{篇章,答案,问题}。其中,篇章可以是句子或者段落。服务器构建的训练样本的格式为{“篇章”:“白云山主峰海拔382米”,“答案”:“382米”,“问题”:“白云山有多高”}。
其中,预训练模型是用于训练得到问题生成模型的基线模型。预训练模型可以是BERT模型,GPT2模型,XLNET模型、ALBERT模型等。预训练模型的输入是一个序列,输出是另一个序列,通过对输入序列进行编码得到编码向量,然后对编码向量进行解码得到输出序列,完成对输入序列进行预测得到输出序列的过程。
在一个实施例中,预训练模型的结构如图9所示。服务器对训练样本进行预处理后得到处理后样本序列。服务器对训练样本进行预处理是使训练样本符合预训练模型的输入格式要求。例如,输入训练样本为“[CLS]白云山主峰海拔382米[SEP]382米[SEP]白云山有多高”,经过预处理得到对应的处理后样本序列为[0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1]。其中0表示输入,1表示输出。服务器将“[CLS]白云山主峰海拔382米”输入预训练模型,[CLS]为句子起点的标识符,[SEP]为句子间的分隔符。预训练模型对输入进行预测,输出“382米[SEP]白云山有多高[SEP]”,当预测到第一个[SEP]时,该符号之前预测得到的内容为预测得到的答案信息,当预测到第二个[SEP]时,两个[SEP]之间的是预测得到的问题文本。
其中,掩码矩阵是表示预训练模型的输入序列中的各字符对预测得到输出序列中各字符的贡献大小的矩阵。通过掩码矩阵使预训练模型在生成下一个字符时,只能利用已经得到的字符的信息,而不能利用未得到的字符的信息。
例如,掩码矩阵如图10所示,其中,掩码矩阵的列表示预训练模型的输入序列,行表示预训练模型的输出序列。带阴影方格表示这些字符被遮掩,所以阴影方格表示掩码矩阵在该方格位置的值为0,无阴影方格表示掩码矩阵在该方格位置的值为1。
其中,嵌入向量是服务器通过词嵌入算法对句子样本进行转换得到的词向量。注意力计算的公式为其中,Q和K是对嵌入向量经过不同权重矩阵处理后得到的矩阵,V为值向量矩阵,Q=xWQ,K=xWK,V=xWV,x为嵌入向量,WQ、WK和WV为不同的权重矩阵。Attention(Q,K,V)为嵌入向量的注意力,dk为常数,例如可以为64。服务器在对Q和KT点积之后,利用掩码矩阵对点积得到的矩阵进行掩码计算,然后再利用softmax函数对计算结果进行归一化。服务器在利用预训练模型对输入进行预测时,根据掩码矩阵对需要屏蔽的信息进行掩码,使经过softmax函数归一化后的屏蔽部分输出为0。
服务器在预训练模型的基础上通过构造的掩码矩阵对句子样本进行训练得到问题生成模型,简化了模型训练的过程。并且,通过构造的掩码矩阵使预测输出预测问题文本和预测答案信息的过程不依赖未来的信息,预测结果更加准确。
在一个实施例中,在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本,包括:分别提取待回答问题文本与各候选问题文本的特征参数;将特征参数输入排序模型进行相似度计算,得到待回答问题文本与各候选问题文本间的相似度;在得到的相似度中,确定最大的目标相似度;将目标相似度对应的候选问题文本确定为目标问题文本。
其中,特征参数是计算得到的表示待回答问题文本和候选问题文本特征的参数。服务器可以用余弦相似度、语义相似度、杰卡德系数以及编辑距离相似度中的一个或多个表示特征参数。排序模型可以但不限于是RankSVM模型或者XGBOOST模型等。
在一个实施例中,特征参数余弦相似度。待回答问题文本经过分词处理后得到的词组为[“怎么”,“申请”,“加班”],候选问题文本经过分词处理后得到的词组为[“如何”,“申请”,“加班”,“呢”],两个问题词组的并集为[“怎么”,“加班”,“申请”,“如何”,“呢”]。服务器根据并集得到待回答问题文本和候选问题文本的词频向量分别是A=[1,1,1,0,0],B=[0,1,1,1,1],根据 计算待回答问题文本和候选问题文本的余弦相似度cosine。
在一个实施例中,特征参数为语义相似度。服务器将待回答问题文本和候选问题文本输入一个预训练模型,例如BERT模型,分别得到待回答问题文本的语义向量A和候选问题文本的语义向量B。然后通过计算待回答问题文本和候选问题文本的语义相似度cosine1。
在一个实施例中,特征参数为杰卡德系数。服务器首先计算得到待回答问题文本的词频向量A和候选问题文本的词频向量B。然后通过 计算得到待回答问题文本和候选问题文本的杰卡德系数,其中len(·)表示取集合的长度。
在一个实施例中,特征参数为编辑距离。编辑距离用于度量两个字符串间的差异。可以认为编辑距离是通过替换、插入、删除等操作将一个字符串修改为另一个字符串时,编辑单个字符所需要的最少次数。数学上,定义两个字符串A和B间的编辑距离为levA,B(a,b),其中a,b分别为A和B的长度。编辑距离的计算公式如公式(1)所示:
编辑距离相似度为公式(2),其中similarity1为编辑距离相似度,max(a,b)为A和B的长度中的最大值。
在一个实施例中,如图11所示,服务器生成关键词提示列表包括如下步骤:
S1102,服务器从目标文档的候选段落文本中,获取与候选问题文本对应的目标段落文本。
S1104,服务器提取待回答问题文本的关键词,得到问题关键词组;以及,提取每个目标段落文本的关键词,得到对应的段落关键词组。
S1106,服务器根据问题关键词组以及段落关键词组生成关键词提示列表。
服务器在获取目标文档后,对目标文档进行分段处理,得到多个候选段落文本,然后对得到的候选段落文本进行分句处理,针对每个候选段落文本得到多个候选句子文本。服务器将候选句子文本输入问题生成模型,通过问题生成模型得到与候选句子文本对应的预测答案信息以及预测问题文本,并根据得到的预测答案信息以及预测问题文本生成问答文档。候选问题文本是问答文档中的问题文本,也即包含于通过问题生成模型得到的预测问题文本,所以目标段落文本是生成候选问题文本的候选句子文本在目标文档中所属的段落。
服务器可以通过TF-IDF算法或者TextRank算法提取待回答问题文本和目标段落文本的关键词。将提取出的待回答问题文本的关键词组成问题关键词组,将提取出的目标段落文本的关键词组成段落关键词组。
服务器根据问题关键词组以及段落关键词组生成关键词提示列表,以在服务器无法回答客户端的问题时,通过关键词提示列表对客户端进行引导,使客户端能够在获取的关键词提示列表中选择关键词,重新定位问题,避免了服务器无法回答客户端问题的情况出现。
在一个实施例中,如图12所示,服务器根据所述问题关键词组以及所述段落关键词组生成关键词提示列表,包括如下步骤:
S1202,服务器分别提取问题关键词组和每个段落关键词组之间的交集,得到每个交集中的第一目标关键词。
S1204,服务器当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;目标交集属于交集中的至少一个,目标段落关键词组是段落关键词组中包含目标交集的词组。
S1206,服务器根据第一目标关键词和第二目标关键词构成关键词提示列表。
其中,第一目标关键词是问题关键词组和段落关键词组中相同的关键词。例如,问题关键词组是[白云山,山峰,特产,水果],段落关键词组是[黄山,山峰,水果,松树],则第一目标关键词为“山峰”和“水果”。
在一个实施例中,假设问题关键词组为U=[u1,u2,...,uk],所有候选问题文本对应的目标段落文本的关键词组所组成的段落关键词列表为V={V1,V2,...,Vk},其中,Vk为段落关键词列表中的一个段落关键词组,Vk=[vk-1,vk-2,...,vk-n],vk-n为段落关键词组中的一个关键词。
服务器从首先提取出列表V中的段落关键词组V1,然后获取U和V1的交集,即u_k=U∩V1。如果u_k的个数小于或等于数量阈值,则服务器放弃V1,提取出V2进行处理。如果u_k的个数大于数量阈值,则服务器从V1中随机选取至少两个与u_k不同的关键词[v1-1,...,v1-m],然后将[v1-1,...,v1-m]和U组成关键词组[u1,u2,...,uk,v1-1,...,v1-m]。依次类推,服务器在按照上述方法处理完段落关键词列表V中的所有段落关键词组之后,将得到的所有关键词组构成关键词提示列表,所得到的关键词提示列表中的每组关键词对应一个目标文档中的目标段落文本。
例如,待回答问题文本为:如何提供全局方案?目标段落文本为:提供全局打印方案的配置管理,当没有个人设置时,全局方案可覆盖到所有用户,做到了一次设置全局生效的效果。服务器对待回答问题文本进行关键词提取得到的问题关键词组为U=[“全局”,“方案”,“如何”,“提供”],对目标段落文本进行关键词提取得到的段落关键词组为V1=[“全局”,“设置”,“配置管理”,“方案”,“打印”,“生效”,“用户”,“覆盖”,“做到”,“效果”,“个人”,“所有”,“提供”,“一次”]。服务器首先获取U和V1的交集u_k=U∩V1=[“全局”,“方案”,“提供”],然后,从V1中随机选取至少两个与u_k中关键词不同的关键词,假设为[“生效”,“打印”],则服务器得到的关键词组为[“全局”,“方案”,“提供”,“生效”,“打印”]。当服务器将关键词提示列表反馈给客户端时,如果客户端选择了该关键词组,则服务器将与该关键词组对应的目标段落文本反馈给客户端。
服务器根据问题关键词组以及和每个目标段落文本对应的段落关键词组构成关键词提示列表,以针对目标段落文本中的内容对客户端进行提示,使客户端能够基于目标段落文本中的内容选择感兴趣的提示关键词,提高了服务器和客户端进行问答的效率,并且可以避免服务器无法回答客户端问题的情况出现。
应该理解的是,虽然图2-6,8、11-12的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6,8、11-12中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图13所示,提供了一种智能问答装置,包括:接收模块1302、获取模块1304、确定模块1306和反馈模块1308,其中:
接收模块1302,用于接收客户端输入的待回答问题文本;
获取模块1304,用于从问答库中获取至少两个与待回答问题文本匹配的候选问题文本;
确定模块1306,用于在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本;
反馈模块1308,用于当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;
反馈模块1308,还用于当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表;当接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。
上述实施例中,服务器接收客户端输入的待回答问题文本,从问答库中获取至少两个与待回答问题文本匹配的候选问题文本,并通过排序模型确定候选问题文本中与待回答问题文本相似度最大的目标问题文本。当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表,在接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。服务器在针对待回答问题文本给出回复文本时,不需要首先从预先给定的目标文本中抽取出部分文本进行理解,不会在文本抽取错误时产生错误累积的现象,第一回复文本和第二回复文本与回答问题文本的匹配度较高,答案正确率较高。
在一个实施例中,获取模块1304,还用于:
对待回答问题文本进行分词处理,得到待检索分词;
从分词索引列表中查询与待检索分词对应的索引编号;
从问答库的问答文档中提取索引编号对应的候选问题文本;
计算候选问题文本与待回答问题文本间的匹配度;
将匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与待回答问题文本匹配的候选问题文本。
在一个实施例中,第一回复文本为答案信息、或目标文档中包含答案信息的句子文本、或句子文本在目标文档中所属段落的段落文本;如图14所示,装置还包括:
查找模块1310,用于查找问答库的问答文档中与目标问题文本匹配的答案信息;或者,查找问答库的问答文档中与目标问题文本匹配的句子文本;或者;在查找到问答库的问答文档中与目标问题文本匹配的句子文本时,确定句子文本在目标文档中所属段落的段落文本。
在一个实施例中,装置还包括:
分词处理模块1312,用于对问答文档中的每个问题文本进行分词处理,得到与每个问题文本对应的问题词组;
分配模块1314,用于为每个问题词组分配对应的索引编号;
构建模块1316,用于根据索引编号与问题词组构建分词索引列表。
在一个实施例中,每个问题词组包含多个问题分词;构建模块1316,还用于:
根据索引编号和问题词组构建映射列表;
在映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;
以目标索引编号对应的问题分词为键,以目标索引编号为值构建分词索引列表。
在一个实施例中,所述问答库包括问答文档,装置还包括:
获取模块1304,还用于获取目标文档,并对目标文档进行分段处理,得到候选段落文本;
分句处理模块1318,用于对候选段落文本进行分句处理,得到候选句子文本;
问题生成模块1320,用于通过问题生成模型对候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本;候选句子文本是候选答案信息在目标文档所属句子的文本;
构建模块1316,用于构建包含候选答案信息、候选句子文本和候选问题文本的问答文档。
在一个实施例中,问题生成模块1320,还用于:
通过问题生成模型对候选句子文本进行随机解码预测,得到候选答案信息;
通过问题生成模型对候选答案信息以及候选句子文本进行确定性解码预测,得到候选问题文本。
在一个实施例中,问题生成模型是对预训练模型进行训练所得的模型;装置还包括:
提取模块1322,用于从文档训练集中提取训练样本;
预处理模块1324,用于对训练样本进行预处理,得到处理后样本序列;
输入模块1326,用于将处理后样本序列输入至预训练模型;
计算模块1328,用于通过预训练模型,对预设的掩码矩阵和处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;
生成模块1330,用于将处理后样本序列与预测文本序列错开一位,计算处理后样本序列和预测文本序列之间的交叉熵损失值,并基于交叉熵损失值调整预训练模型中的参数,得到问题生成模型。
在一个实施例中,确定模块1306,还用于:
分别提取待回答问题文本与各候选问题文本的特征参数;
将特征参数输入排序模型进行相似度计算,得到待回答问题文本与各候选问题文本间的相似度;
在得到的相似度中,确定最大的目标相似度;
将目标相似度对应的候选问题文本确定为目标问题文本。
在一个实施例中,装置还包括:
获取模块1304,还用于从目标文档的候选段落文本中,获取与候选问题文本对应的目标段落文本;
提取模块1322,还用于提取待回答问题文本的关键词,得到问题关键词组;以及,提取每个目标段落文本的关键词,得到对应的段落关键词组;
生成模块1330,用于根据问题关键词组以及段落关键词组生成关键词提示列表。
在一个实施例中,生成模块1330,还用于:
分别提取问题关键词组和每个段落关键词组之间的交集,得到每个交集中的第一目标关键词;
当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;目标交集属于交集中的至少一个,目标段落关键词组是段落关键词组中包含目标交集的词组;
根据第一目标关键词和第二目标关键词构成关键词提示列表。
关于智能问答装置的具体限定可以参见上文中对于智能问答方法的限定,在此不再赘述。上述智能问答装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图15所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储智能问答数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种智能问答方法。
本领域技术人员可以理解,图15中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收客户端输入的待回答问题文本;从问答库中获取至少两个与待回答问题文本匹配的候选问题文本;在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本;当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表;当接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对待回答问题文本进行分词处理,得到待检索分词;从分词索引列表中查询与待检索分词对应的索引编号;从问答库的问答文档中提取索引编号对应的候选问题文本;计算候选问题文本与待回答问题文本间的匹配度;将匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与待回答问题文本匹配的候选问题文本。
在一个实施例中,第一回复文本为答案信息、或目标文档中包含答案信息的句子文本、或句子文本在目标文档中所属段落的段落文本;处理器执行计算机程序时还实现以下步骤:查找问答库的问答文档中与目标问题文本匹配的答案信息;或者,查找问答库的问答文档中与目标问题文本匹配的句子文本;或者;在查找到问答库的问答文档中与目标问题文本匹配的句子文本时,确定句子文本在目标文档中所属段落的段落文本。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:对问答文档中的每个问题文本进行分词处理,得到与每个问题文本对应的问题词组;为每个问题词组分配对应的索引编号;根据索引编号与问题词组构建分词索引列表。
在一个实施例中,每个问题词组包含多个问题分词;处理器执行计算机程序时还实现以下步骤:根据索引编号和问题词组构建映射列表;在映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;以目标索引编号对应的问题分词为键,以目标索引编号为值构建分词索引列表。
在一个实施例中,问答库包括问答文档;处理器执行计算机程序时还实现以下步骤:获取目标文档,并对目标文档进行分段处理,得到候选段落文本;对候选段落文本进行分句处理,得到候选句子文本;通过问题生成模型对候选句子文本进行处理,得到候选答案信息和候选答案信息对应的候选问题文本;候选句子文本是候选答案信息在目标文档所属句子的文本;构建包含候选问题文本、候选答案信息和候选句子文本的问答文档。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过问题生成模型对候选句子文本进行随机解码预测,得到候选答案信息;通过问题生成模型对候选答案信息以及候选句子文本进行确定性解码预测,得到候选问题文本。
在一个实施例中,问题生成模型是对预训练模型进行训练所得的模型;处理器执行计算机程序时还实现以下步骤:从文档训练集中提取训练样本;对训练样本进行预处理,得到处理后样本序列;将处理后样本序列输入至预训练模型;通过预训练模型,对预设的掩码矩阵和处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;将处理后样本序列与预测文本序列错开一位,计算处理后样本序列和预测文本序列之间的交叉熵损失值,并基于交叉熵损失值调整预训练模型中的参数,得到问题生成模型。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别提取待回答问题文本与各候选问题文本的特征参数;将特征参数输入排序模型进行相似度计算,得到待回答问题文本与各候选问题文本间的相似度;在得到的相似度中,确定最大的目标相似度;将目标相似度对应的候选问题文本确定为目标问题文本。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:从目标文档的候选段落文本中,获取与候选问题文本对应的目标段落文本;提取待回答问题文本的关键词,得到问题关键词组;以及,提取每个目标段落文本的关键词,得到对应的段落关键词组;根据问题关键词组以及段落关键词组生成关键词提示列表。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别提取问题关键词组和每个段落关键词组之间的交集,得到每个交集中的第一目标关键词;当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;目标交集属于交集中的至少一个,目标段落关键词组是段落关键词组中包含目标交集的词组;根据第一目标关键词和第二目标关键词构成关键词提示列表。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收客户端输入的待回答问题文本;从问答库中获取至少两个与待回答问题文本匹配的候选问题文本;在候选问题文本中,通过排序模型确定与待回答问题文本相似度最大的目标问题文本;当目标问题文本与待回答问题文本间的相似度大于相似度阈值时,向客户端反馈目标问题文本对应的第一回复文本;当目标问题文本与待回答问题文本间的相似度小于或等于相似度阈值时,向客户端反馈关键词提示列表;当接收到客户端在关键词提示列表中选取的问题关键词时,向客户端反馈与问题关键词匹配的第二回复文本。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对待回答问题文本进行分词处理,得到待检索分词;从分词索引列表中查询与待检索分词对应的索引编号;从问答库的问答文档中提取索引编号对应的候选问题文本;计算候选问题文本与待回答问题文本间的匹配度;将匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与待回答问题文本匹配的候选问题文本。
在一个实施例中,第一回复文本为答案信息、或目标文档中包含答案信息的句子文本、或句子文本在目标文档中所属段落的段落文本;计算机程序被处理器执行时还实现以下步骤:查找问答库的问答文档中与目标问题文本匹配的答案信息;或者,查找问答库的问答文档中与目标问题文本匹配的句子文本;或者;在查找到问答库的问答文档中与目标问题文本匹配的句子文本时,确定句子文本在目标文档中所属段落的段落文本。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对问答文档中的每个问题文本进行分词处理,得到与每个问题文本对应的问题词组;为每个问题词组分配对应的索引编号;根据索引编号与问题词组构建分词索引列表。
在一个实施例中,每个问题词组包含多个问题分词;计算机程序被处理器执行时还实现以下步骤:根据索引编号和问题词组构建映射列表;在映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;以目标索引编号对应的问题分词为键,以目标索引编号为值构建分词索引列表。
在一个实施例中,问答库包括问答文档;计算机程序被处理器执行时还实现以下步骤:获取目标文档,并对目标文档进行分段处理,得到候选段落文本;对候选段落文本进行分句处理,得到候选句子文本;通过问题生成模型对候选句子文本进行处理,得到候选问题文本和候选问题文本对应的候选答案信息;候选句子文本是候选答案信息在目标文档所属句子的文本;构建包含候选问题文本、候选答案信息和候选句子文本的问答文档。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:通过问题生成模型对候选句子文本进行随机解码预测,得到候选答案信息;通过问题生成模型对候选答案信息以及候选句子文本进行确定性解码预测,得到候选问题文本。
在一个实施例中,问题生成模型是对预训练模型进行训练所得的模型;计算机程序被处理器执行时还实现以下步骤:从文档训练集中提取训练样本;对训练样本进行预处理,得到处理后样本序列;将处理后样本序列输入至预训练模型;通过预训练模型,对预设的掩码矩阵和处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;将处理后样本序列与预测文本序列错开一位,计算处理后样本序列和预测文本序列之间的交叉熵损失值,并基于交叉熵损失值调整预训练模型中的参数,得到问题生成模型。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别提取待回答问题文本与各候选问题文本的特征参数;将特征参数输入排序模型进行相似度计算,得到待回答问题文本与各候选问题文本间的相似度;在得到的相似度中,确定最大的目标相似度;将目标相似度对应的候选问题文本确定为目标问题文本。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:从目标文档的候选段落文本中,获取与候选问题文本对应的目标段落文本;提取待回答问题文本的关键词,得到问题关键词组;以及,提取每个目标段落文本的关键词,得到对应的段落关键词组;根据问题关键词组以及段落关键词组生成关键词提示列表。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别提取问题关键词组和每个段落关键词组之间的交集,得到每个交集中的第一目标关键词;当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;目标交集属于交集中的至少一个,目标段落关键词组是段落关键词组中包含目标交集的词组;根据第一目标关键词和第二目标关键词构成关键词提示列表。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种智能问答方法,其特征在于,所述方法包括:
接收客户端输入的待回答问题文本;
从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本;
在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本;
当所述目标问题文本与所述待回答问题文本间的相似度大于相似度阈值时,向所述客户端反馈所述目标问题文本对应的第一回复文本;
当所述目标问题文本与所述待回答问题文本间的相似度小于或等于所述相似度阈值时,向所述客户端反馈关键词提示列表;当接收到所述客户端在所述关键词提示列表中选取的问题关键词时,向所述客户端反馈与所述问题关键词匹配的第二回复文本。
2.根据权利要求1所述的方法,其特征在于,所述从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本,包括:
对所述待回答问题文本进行分词处理,得到待检索分词;
从分词索引列表中查询与所述待检索分词对应的索引编号;
从所述问答库的问答文档中提取所述索引编号对应的候选问题文本;
计算所述候选问题文本与所述待回答问题文本间的匹配度;
将所述匹配度达到匹配阈值时对应的至少两个候选问题文本,作为与所述待回答问题文本匹配的候选问题文本。
3.根据权利要求1所述的方法,其特征在于,所述第一回复文本为答案信息、或目标文档中包含所述答案信息的句子文本、或所述句子文本在所述目标文档中所属段落的段落文本;所述方法还包括:
查找所述问答库的问答文档中与所述目标问题文本匹配的答案信息;或者,
查找所述问答库的问答文档中与所述目标问题文本匹配的句子文本;或者;
在查找到所述问答库的问答文档中与所述目标问题文本匹配的句子文本时,确定所述句子文本在所述目标文档中所属段落的段落文本。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对所述问答文档中的每个问题文本进行分词处理,得到与每个所述问题文本对应的问题词组;
为每个所述问题词组分配对应的索引编号;
根据所述索引编号与所述问题词组构建所述分词索引列表。
5.根据权利要求4所述的方法,其特征在于,每个所述问题词组包含多个问题分词;所述根据所述索引编号与所述问题词组构建所述分词索引列表,包括:
根据所述索引编号和所述问题词组构建映射列表;
在所述映射列表的问题词组中,确定每个问题分词所映射的目标索引编号;
以所述目标索引编号对应的问题分词为键,以所述目标索引编号为值构建所述分词索引列表。
6.根据权利要求1所述的方法,其特征在于,所述问答库包括问答文档;所述方法还包括:
获取目标文档,并对所述目标文档进行分段处理,得到候选段落文本;
对所述候选段落文本进行分句处理,得到候选句子文本;
通过问题生成模型对所述候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本;所述候选句子文本是所述候选答案信息在所述目标文档所属句子的文本;
构建包含所述候选问题文本、所述候选答案信息和所述候选句子文本的问答文档。
7.根据权利要求6所述的方法,其特征在于,所述通过问题生成模型对所述候选句子文本进行处理,得到候选答案信息和所述候选答案信息对应的候选问题文本,包括:
通过所述问题生成模型对所述候选句子文本进行随机解码预测,得到所述候选答案信息;
通过所述问题生成模型对所述候选答案信息以及所述候选句子文本进行确定性解码预测,得到所述候选问题文本。
8.根据权利要求6所述的方法,其特征在于,所述问题生成模型是对预训练模型进行训练所得的模型;所述对预训练模型进行训练,包括:
从文档训练集中提取训练样本;
对所述训练样本进行预处理,得到处理后样本序列;
将所述处理后样本序列输入至所述预训练模型;
通过所述预训练模型,对预设的掩码矩阵和所述处理后样本序列对应的、且经过不同权重矩阵处理后的嵌入向量进行注意力计算,以及基于计算所得的注意力矩阵对所述句子样本进行编码,并对编码所得的编码向量进行解码,得到预测文本序列;
将所述处理后样本序列与所述预测文本序列错开一位,计算所述处理后样本序列和所述预测文本序列之间的交叉熵损失值,并基于所述交叉熵损失值调整所述预训练模型中的参数,得到所述问题生成模型。
9.根据权利要求1所述的方法,其特征在于,所述在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本,包括:
分别提取所述待回答问题文本与各候选问题文本的特征参数;
将所述特征参数输入排序模型进行相似度计算,得到所述待回答问题文本与各候选问题文本间的相似度;
在得到的相似度中,确定最大的目标相似度;
将所述目标相似度对应的候选问题文本确定为目标问题文本。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从目标文档的候选段落文本中,获取与所述候选问题文本对应的目标段落文本;
提取所述待回答问题文本的关键词,得到问题关键词组;以及,提取每个所述目标段落文本的关键词,得到对应的段落关键词组;
根据所述问题关键词组以及所述段落关键词组生成关键词提示列表。
11.根据权利要求10所述的方法,其特征在于,所述根据所述问题关键词组以及所述段落关键词组生成关键词提示列表,包括:
分别提取所述问题关键词组和每个所述段落关键词组之间的交集,得到每个所述交集中的第一目标关键词;
当目标交集中第一目标关键词的数量大于数量阈值时,从目标段落关键词组的非交集部分随机选取至少一个第二目标关键词;所述目标交集属于所述交集中的至少一个,所述目标段落关键词组是所述段落关键词组中包含所述目标交集的词组;
根据所述第一目标关键词和所述第二目标关键词构成关键词提示列表。
12.一种智能问答装置,其特征在于,所述装置包括:
接收模块,用于接收客户端输入的待回答问题文本;
获取模块,用于从问答库中获取至少两个与所述待回答问题文本匹配的候选问题文本;
确定模块,用于在所述候选问题文本中,通过排序模型确定与所述待回答问题文本相似度最大的目标问题文本;
反馈模块,用于当所述目标问题文本与所述待回答问题文本间的相似度大于相似度阈值时,向所述客户端反馈所述目标问题文本对应的第一回复文本;
所述反馈模块,还用于当所述目标问题文本与所述待回答问题文本间的相似度小于或等于所述相似度阈值时,向所述客户端反馈关键词提示列表;当接收到所述客户端在所述关键词提示列表中选取的问题关键词时,向所述客户端反馈与所述问题关键词匹配的第二回复文本。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011628642.8A CN112765306B (zh) | 2020-12-30 | 2020-12-30 | 智能问答方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011628642.8A CN112765306B (zh) | 2020-12-30 | 2020-12-30 | 智能问答方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112765306A true CN112765306A (zh) | 2021-05-07 |
CN112765306B CN112765306B (zh) | 2024-06-07 |
Family
ID=75699426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011628642.8A Active CN112765306B (zh) | 2020-12-30 | 2020-12-30 | 智能问答方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112765306B (zh) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112949305A (zh) * | 2021-05-13 | 2021-06-11 | 平安科技(深圳)有限公司 | 负反馈信息采集方法、装置、设备及存储介质 |
CN113220862A (zh) * | 2021-06-10 | 2021-08-06 | 中国平安人寿保险股份有限公司 | 标准问识别方法、装置及计算机设备及存储介质 |
CN113239169A (zh) * | 2021-06-01 | 2021-08-10 | 平安科技(深圳)有限公司 | 基于人工智能的回答生成方法、装置、设备及存储介质 |
CN113342958A (zh) * | 2021-07-02 | 2021-09-03 | 马上消费金融股份有限公司 | 问答匹配方法、文本匹配模型的训练方法和相关设备 |
CN113434657A (zh) * | 2021-07-21 | 2021-09-24 | 广州华多网络科技有限公司 | 电商客服应答方法及其相应的装置、设备、介质 |
CN113569025A (zh) * | 2021-07-23 | 2021-10-29 | 上海明略人工智能(集团)有限公司 | 数据处理的方法和装置、电子设备和存储介质 |
CN113590789A (zh) * | 2021-07-30 | 2021-11-02 | 北京壹心壹翼科技有限公司 | 应用于智能问答系统的问题检索方法、装置、设备及介质 |
CN113688219A (zh) * | 2021-08-27 | 2021-11-23 | 北京小米移动软件有限公司 | 人机对话方法、装置、设备和存储介质 |
CN113722459A (zh) * | 2021-08-31 | 2021-11-30 | 平安国际智慧城市科技股份有限公司 | 基于自然语言处理模型的问答搜索方法及相关装置 |
CN113836283A (zh) * | 2021-09-24 | 2021-12-24 | 上海金仕达软件科技有限公司 | 答案的生成方法、装置、电子设备及存储介质 |
CN114020892A (zh) * | 2021-11-05 | 2022-02-08 | 中国平安人寿保险股份有限公司 | 基于人工智能的答案选取方法、装置、电子设备及介质 |
CN114358023A (zh) * | 2022-01-11 | 2022-04-15 | 平安科技(深圳)有限公司 | 智能问答召回方法、装置、计算机设备及存储介质 |
CN114925184A (zh) * | 2022-05-16 | 2022-08-19 | 阿里巴巴(中国)有限公司 | 问答对生成方法、装置及计算机可读存储介质 |
CN115129820A (zh) * | 2022-07-22 | 2022-09-30 | 宁波牛信网络科技有限公司 | 基于相似度的文本反馈方法及装置 |
CN115344679A (zh) * | 2022-08-16 | 2022-11-15 | 中国平安财产保险股份有限公司 | 问题数据的处理方法、装置、计算机设备及存储介质 |
CN116049376A (zh) * | 2023-03-31 | 2023-05-02 | 北京太极信息系统技术有限公司 | 一种信创知识检索回复的方法、装置和系统 |
WO2023147733A1 (zh) * | 2022-02-07 | 2023-08-10 | 京东科技信息技术有限公司 | 问答方法、装置、电子设备和计算机可读存储介质 |
CN116739003A (zh) * | 2023-06-01 | 2023-09-12 | 中国南方电网有限责任公司 | 电网管理智能问答实现方法、装置、电子设备及存储介质 |
CN117252600A (zh) * | 2023-09-06 | 2023-12-19 | 长沙爱德沃特网络科技有限公司 | 一种基于大数据的智能客服系统及其方法 |
CN117763116A (zh) * | 2023-12-26 | 2024-03-26 | 中数通信息有限公司 | 一种面向用户问答的知识文本抽取方法及系统 |
CN118051602A (zh) * | 2024-04-15 | 2024-05-17 | 可之(宁波)人工智能科技有限公司 | 面向信息安全领域的智能问答方法及系统、介质、设备 |
WO2024143374A1 (ja) * | 2022-12-27 | 2024-07-04 | 武田薬品工業株式会社 | 業務支援システム、業務支援方法、データ管理プログラム及び検索プログラム |
CN118396123A (zh) * | 2024-06-26 | 2024-07-26 | 苏州元脑智能科技有限公司 | 文本生成方法、装置、计算机程序产品、电子设备及介质 |
CN118627506A (zh) * | 2024-08-14 | 2024-09-10 | 北京北大软件工程股份有限公司 | 答案文段提取方法、装置、设备、介质及产品 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704506A (zh) * | 2017-08-30 | 2018-02-16 | 华为技术有限公司 | 智能应答的方法和装置 |
CN109002540A (zh) * | 2018-07-23 | 2018-12-14 | 电子科技大学 | 一种中文通告文档问题答案对自动生成方法 |
US20200117690A1 (en) * | 2018-10-15 | 2020-04-16 | Bao Tran | Smart device |
CN111177325A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 一种自动生成答案的方法和系统 |
CN111858859A (zh) * | 2019-04-01 | 2020-10-30 | 北京百度网讯科技有限公司 | 自动问答处理方法、装置、计算机设备及存储介质 |
CN112035638A (zh) * | 2020-08-28 | 2020-12-04 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、存储介质及设备 |
-
2020
- 2020-12-30 CN CN202011628642.8A patent/CN112765306B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107704506A (zh) * | 2017-08-30 | 2018-02-16 | 华为技术有限公司 | 智能应答的方法和装置 |
CN109002540A (zh) * | 2018-07-23 | 2018-12-14 | 电子科技大学 | 一种中文通告文档问题答案对自动生成方法 |
US20200117690A1 (en) * | 2018-10-15 | 2020-04-16 | Bao Tran | Smart device |
CN111858859A (zh) * | 2019-04-01 | 2020-10-30 | 北京百度网讯科技有限公司 | 自动问答处理方法、装置、计算机设备及存储介质 |
CN111177325A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 一种自动生成答案的方法和系统 |
CN112035638A (zh) * | 2020-08-28 | 2020-12-04 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、存储介质及设备 |
Non-Patent Citations (2)
Title |
---|
SHEN GAO 等: "Product-Aware Answer Generation in E-Commerce Question-Answering", 《WSDM \'19: PROCEEDINGS OF THE TWELFTH ACM INTERNATIONAL CONFERENCE ON WEB SEARCH AND DATA MINING》, 30 January 2019 (2019-01-30), pages 429, XP058705853, DOI: 10.1145/3289600.3290992 * |
颜果开: "基于深度学习的非事实型医疗问答系统关键技术研究", 《中国优秀硕士学位论文全文数据库 医药卫生科技辑》, no. 11, 15 November 2020 (2020-11-15), pages 054 - 10 * |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112949305B (zh) * | 2021-05-13 | 2021-08-13 | 平安科技(深圳)有限公司 | 负反馈信息采集方法、装置、设备及存储介质 |
CN112949305A (zh) * | 2021-05-13 | 2021-06-11 | 平安科技(深圳)有限公司 | 负反馈信息采集方法、装置、设备及存储介质 |
WO2022252636A1 (zh) * | 2021-06-01 | 2022-12-08 | 平安科技(深圳)有限公司 | 基于人工智能的回答生成方法、装置、设备及存储介质 |
CN113239169A (zh) * | 2021-06-01 | 2021-08-10 | 平安科技(深圳)有限公司 | 基于人工智能的回答生成方法、装置、设备及存储介质 |
CN113239169B (zh) * | 2021-06-01 | 2023-12-05 | 平安科技(深圳)有限公司 | 基于人工智能的回答生成方法、装置、设备及存储介质 |
CN113220862A (zh) * | 2021-06-10 | 2021-08-06 | 中国平安人寿保险股份有限公司 | 标准问识别方法、装置及计算机设备及存储介质 |
CN113342958A (zh) * | 2021-07-02 | 2021-09-03 | 马上消费金融股份有限公司 | 问答匹配方法、文本匹配模型的训练方法和相关设备 |
CN113434657A (zh) * | 2021-07-21 | 2021-09-24 | 广州华多网络科技有限公司 | 电商客服应答方法及其相应的装置、设备、介质 |
CN113569025A (zh) * | 2021-07-23 | 2021-10-29 | 上海明略人工智能(集团)有限公司 | 数据处理的方法和装置、电子设备和存储介质 |
CN113590789A (zh) * | 2021-07-30 | 2021-11-02 | 北京壹心壹翼科技有限公司 | 应用于智能问答系统的问题检索方法、装置、设备及介质 |
CN113688219A (zh) * | 2021-08-27 | 2021-11-23 | 北京小米移动软件有限公司 | 人机对话方法、装置、设备和存储介质 |
CN113722459A (zh) * | 2021-08-31 | 2021-11-30 | 平安国际智慧城市科技股份有限公司 | 基于自然语言处理模型的问答搜索方法及相关装置 |
CN113836283A (zh) * | 2021-09-24 | 2021-12-24 | 上海金仕达软件科技有限公司 | 答案的生成方法、装置、电子设备及存储介质 |
CN113836283B (zh) * | 2021-09-24 | 2024-04-12 | 上海金仕达软件科技股份有限公司 | 答案的生成方法、装置、电子设备及存储介质 |
CN114020892A (zh) * | 2021-11-05 | 2022-02-08 | 中国平安人寿保险股份有限公司 | 基于人工智能的答案选取方法、装置、电子设备及介质 |
CN114358023B (zh) * | 2022-01-11 | 2023-08-22 | 平安科技(深圳)有限公司 | 智能问答召回方法、装置、计算机设备及存储介质 |
CN114358023A (zh) * | 2022-01-11 | 2022-04-15 | 平安科技(深圳)有限公司 | 智能问答召回方法、装置、计算机设备及存储介质 |
WO2023147733A1 (zh) * | 2022-02-07 | 2023-08-10 | 京东科技信息技术有限公司 | 问答方法、装置、电子设备和计算机可读存储介质 |
CN114925184A (zh) * | 2022-05-16 | 2022-08-19 | 阿里巴巴(中国)有限公司 | 问答对生成方法、装置及计算机可读存储介质 |
CN115129820A (zh) * | 2022-07-22 | 2022-09-30 | 宁波牛信网络科技有限公司 | 基于相似度的文本反馈方法及装置 |
CN115344679A (zh) * | 2022-08-16 | 2022-11-15 | 中国平安财产保险股份有限公司 | 问题数据的处理方法、装置、计算机设备及存储介质 |
WO2024143374A1 (ja) * | 2022-12-27 | 2024-07-04 | 武田薬品工業株式会社 | 業務支援システム、業務支援方法、データ管理プログラム及び検索プログラム |
CN116049376A (zh) * | 2023-03-31 | 2023-05-02 | 北京太极信息系统技术有限公司 | 一种信创知识检索回复的方法、装置和系统 |
CN116739003A (zh) * | 2023-06-01 | 2023-09-12 | 中国南方电网有限责任公司 | 电网管理智能问答实现方法、装置、电子设备及存储介质 |
CN117252600A (zh) * | 2023-09-06 | 2023-12-19 | 长沙爱德沃特网络科技有限公司 | 一种基于大数据的智能客服系统及其方法 |
CN117763116A (zh) * | 2023-12-26 | 2024-03-26 | 中数通信息有限公司 | 一种面向用户问答的知识文本抽取方法及系统 |
CN118051602A (zh) * | 2024-04-15 | 2024-05-17 | 可之(宁波)人工智能科技有限公司 | 面向信息安全领域的智能问答方法及系统、介质、设备 |
CN118051602B (zh) * | 2024-04-15 | 2024-06-14 | 可之(宁波)人工智能科技有限公司 | 面向信息安全领域的智能问答方法及系统、介质、设备 |
CN118396123A (zh) * | 2024-06-26 | 2024-07-26 | 苏州元脑智能科技有限公司 | 文本生成方法、装置、计算机程序产品、电子设备及介质 |
CN118396123B (zh) * | 2024-06-26 | 2024-10-01 | 苏州元脑智能科技有限公司 | 文本生成方法、装置、计算机程序产品、电子设备及介质 |
CN118627506A (zh) * | 2024-08-14 | 2024-09-10 | 北京北大软件工程股份有限公司 | 答案文段提取方法、装置、设备、介质及产品 |
Also Published As
Publication number | Publication date |
---|---|
CN112765306B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112765306B (zh) | 智能问答方法、装置、计算机设备和存储介质 | |
CN110795543B (zh) | 基于深度学习的非结构化数据抽取方法、装置及存储介质 | |
CN111581229B (zh) | Sql语句的生成方法、装置、计算机设备及存储介质 | |
CN110162749B (zh) | 信息提取方法、装置、计算机设备及计算机可读存储介质 | |
KR102116518B1 (ko) | 기계 독해에 기초한 질의 응답 장치 및 이를 이용한 질의 응답 방법 | |
CN111460311A (zh) | 基于字典树的搜索处理方法、装置、设备和存储介质 | |
WO2018112696A1 (zh) | 一种内容推荐方法及内容推荐系统 | |
CN111985228B (zh) | 文本关键词提取方法、装置、计算机设备和存储介质 | |
US20150379087A1 (en) | Apparatus and method for replying to query | |
CN113705313A (zh) | 文本识别方法、装置、设备及介质 | |
CN112633003A (zh) | 一种地址识别方法、装置、计算机设备及存储介质 | |
CN112100332A (zh) | 词嵌入表示学习方法及装置、文本召回方法及装置 | |
CN111581923A (zh) | 文案生成方法、装置、设备和计算机可读存储介质 | |
CN109348262B (zh) | 一种主播相似度的计算方法、装置、设备和存储介质 | |
CN112434533B (zh) | 实体消歧方法、装置、电子设备及计算机可读存储介质 | |
CN113298197A (zh) | 数据聚类方法、装置、设备及可读存储介质 | |
CN112328759A (zh) | 自动问答方法、装置、设备及存储介质 | |
CN115062134B (zh) | 知识问答模型训练及知识问答方法、装置和计算机设备 | |
CN112632258A (zh) | 文本数据处理方法、装置、计算机设备和存储介质 | |
CN111241310A (zh) | 一种深度跨模态哈希检索方法、设备及介质 | |
CN114880991B (zh) | 知识图谱问答问句实体链接方法、装置、设备及介质 | |
CN111813923A (zh) | 文本摘要方法、电子设备及存储介质 | |
CN115203388A (zh) | 机器阅读理解方法、装置、计算机设备和存储介质 | |
CN117494815A (zh) | 面向档案的可信大语言模型训练、推理方法和装置 | |
CN116467417A (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 | ||
GR01 | Patent grant |