结合关键词检索与孪生神经网络的目标领域问答推送方法技术

技术编号:21686228 阅读:27 留言:0更新日期:2019-07-24 14:42
本发明专利技术公开了一种结合关键词检索与孪生神经网络的目标领域问题答案推送方法。本方法基于互联网和专家知识对历史问题进行预处理,然后结合关键词检索方法和基于孪生神经网络的语义相似度模型,对用户提出的实时问题智能推送匹配度最高的答案。本方法能够较好地平衡效率和性能,同时保证方法的召回率和准确率,在智能问答系统领域具有较大的实用意义。

Target Domain Question Answer Push Method Combining Keyword Retrieval and Twin Neural Network

【技术实现步骤摘要】
结合关键词检索与孪生神经网络的目标领域问答推送方法
本专利技术涉及数据挖掘和自然语言处理领域,尤其涉及一种结合关键词检索与孪生神经网络的目标领域问答推送方法。
技术介绍
与搜索引擎系统类似,智能问答系统也是从大量数据中找到最能满足用户意图的文字信息。然而,两者的不同之处包括:首先,搜索引擎系统要求用户明确地输入关键词,而智能问答系统允许用户输入更符合人类习惯的自由问句。其次,搜索引擎系统返回大量的搜索结果,需要用户自行从中找出最符合其意图的,而智能问答系统返回一个或少量最符合用户意图的结果,能大大提高用户的信息获取效率。因此,智能问答系统比搜索引擎系统具有更高的技术挑战。根据底层技术的不同,智能问答系统大致可以分为基于信息检索的智能问答系统、基于阅读理解的智能问答系统、基于知识图谱的智能问答系统等。其中,基于信息检索的智能问答系统指在真实历史问答数据中搜索得到最符合用户当前问题的答案。由于真实历史问答数据通常由领域专家提供,因此基于信息检索的智能问答系统通常精确度较高、覆盖率较低,这种特性使得其较为适合实现专业的、对答案质量要求较高的目标领域的智能问答系统。现有基于信息检索的智能问答系统的实现技术主要包括关键词检索和语义匹配两种。关键词检索指从用户问题中抽取关键词,然后转化成一个全文检索的任务。由于全文检索可以有效地利用数据库索引,因此执行效率很高。然而,将用户问题抽象成几个关键词,丢失了问题整体的语义和关键词间的关联,导致难以找到最符合用户意图的答案。另一方面,语义匹配指将用户问题和历史问题(或历史答案)进行语义相似度计算,然后返回语义相似度最高的若干答案。语义相似度计算通常基于机器学习模型实现,因此能够较为精确地找到符合用户意图的答案。然而,由于需要计算用户问题和每个历史问题(或历史答案)的语义相似度,计算量巨大,在历史数据很大的情况下难以保证系统的实时性。
技术实现思路
为了克服上述现有技术的不足,本专利技术提供一种结合关键词检索与孪生神经网络的目标领域智能问答方法,可有效解决上述问题。本专利技术具体采用的技术方案如下:一种结合关键词检索与孪生神经网络的目标领域问答推送方法,用于根据用户提出的实时问题推送相应的答案,该方法包括以下步骤:S1:对目标领域进行知识构建和历史问题数据预处理,具体包含以下子步骤S101~S104:S101:获取并筛选出与目标领域相关的词条作为概念词,建立领域概念词表;S102:对领域概念词表中的每个概念词,给出表达方式不同的同义词,在此基础上建立领域概念词消歧表,将不同表达方式的同义领域概念词映射到同一个词;S103:将领域概念词表加入分词词表,然后对每个历史问题进行分词和去停用词处理;S104:对每个历史问题,基于领域概念词表和领域概念词消歧表将句子中出现的所有不同表达方式的领域概念词替换为同一个词;S2:基于孪生神经网络训练语义相似度模型,用以计算任意两个句子的语义相似度值,具体包含以下子步骤S201~S205:S201:收集短句样本,并根据短句表达的含义将其进行分类,构建训练集TS;所述训练集TS里的每个样本为一个三元组其中和分别为经过分词、去停用词和消歧预处理的两个短句,yi为和的关系标注,若两个短句属于同一类型则yi为1,属于不同类型则yi为0;S202:采用孪生神经网络训练语义相似度模型,网络结构包括输入层、卷积层、交互层和输出层;在所述输入层中,基于词嵌入技术将和中所有词替换为其对应的向量,对向量进行纵向拼接得到两个矩阵和然后通过尾部截断或填充全0向量的方式将和都处理成大小为l×d的输入矩阵,其中l为短句统一长度,d为词向量维度;在所述卷积层中,采用两个参数完全共享的卷积神经网络分别处理和每个卷积神经网络首先采用多个不同尺寸的卷积核对输入矩阵进行卷积操作;然后采用MaxPoolingOverTime策略对卷积结果进行池化操作;最后拼接池化结果得到卷积特征向量,记和的卷积特征向量分别为和在所述交互层中,基于余弦相似度计算和的相似度;在所述输出层中,采用对比损失函数作为训练的损失函数,输出和的预测相似度值;S3:针对用户输入的实时问题Qi,通过抽取关键词对历史问题进行全文检索,得到候选问题列表,具体包含以下子步骤S301~S304:S301:对实时问题Qi进行预处理,所述预处理包括分词、去停用词和消歧;S302:首先基于TextRank算法计算Qi中每个词的重要度权值;然后抽取Qi中所有消歧后的领域概念词,若抽取出的领域概念词数量小于等于关键词数量设定阈值k,则保留所有抽取出的领域概念词;否则保留重要度权值最高的k个抽取出的领域概念词;将最终保留的领域概念词集记为CW(Qi),其包含的词的数量为kCW;S303:若kCW<k,在Qi包含的非领域概念词中挑选重要度权值最高的(k-kCW)个词作为普通关键词,将最终保留的普通关键词集记为NW(Qi);S304:实时问题Qi的最终关键词集KW(Qi)=CW(Qi)∪NW(Qi),基于Lucene引擎检索至少包含KW(Qi)中一个词的所有预处理后的历史问题,形成候选问题列表CQ(Qi);S4:匹配度值计算和答案返回:计算实时问题Qi和候选问题列表CQ(Qi)中每个候选问题的关键词一致性和语义相似度,然后融合关键词一致性值和语义相似度值得到每个候选问题的匹配度值,按照匹配度值高低排序返回答案,具体包含以下步骤:S401:对CQ(Qi)中每个候选问题CQj,计算其包含CW(Qi)中词的数量n(CQj)和包含NW(Qi)中词的数量m(CQj),然后对n(CQj)和m(CQj)进行加权求平均计算关键词一致性值s1(Qi,CQj);S402:对CQ(Qi)中每个候选问题CQj,将实时问题Qi和CQj输入训练好的语义相似度模型,得到两者的语义相似度预测值s2(Qi,CQj);S403:对s1(Qi,CQj)和s2(Qi,CQj)加权求和计算匹配度值s(Qi,CQj);S404:从候选问题中挑选匹配度值最高的一个或多个,其对应的答案作为实时问题Qi的答案进行返回推送。基于上述技术方案,其中的部分步骤可采用如下优选方式实现。优选的,步骤S1中所述的与目标领域相关的词条,采用网络爬虫爬取百度百科词条数据,然后由领域专家人工进行筛选得到。优选的,步骤S3中对实时问题Qi的预处理与S1中对历史问题的预处理相同,均包括分词、去停用词和消歧。优选的,步骤(2)中所述的多个不同尺寸的卷积核的宽度均为w,高度则不同。优选的,步骤(2)中所述的对比损失函数L计算公式如下:ei=|yi′-yi|其中yi′为样本tsi的预测语义相似度值,yi为样本tsi包含短句的关系标注,N为训练集TS中的样本总数。优选的,步骤(4)中所述的关键词一致性值s1(Qi,CQj)计算公式如下:其中α为领域概念词权重,0<α<1;β为普通关键词权重,0<β<1,并且β<α。优选的,步骤(4)中所述的匹配度值s(Qi,CQj)计算公式如下:s(Qi,CQj)=λs1(Qi,CQj)+(1-λ)s2(Qi,CQj)其中λ为关键词一致性值权重,0<λ<1。优选的,所述的历史问题数据中。每个历史问题均具有对应的答案。本专利技术提出的一种结合关本文档来自技高网
...

【技术保护点】
1.一种结合关键词检索与孪生神经网络的目标领域问答推送方法,用于根据用户提出的实时问题推送相应的答案,其特征在于包括以下步骤:S1:对目标领域进行知识构建和历史问题数据预处理,具体包含以下子步骤S101~S104:S101:获取并筛选出与目标领域相关的词条作为概念词,建立领域概念词表;S102:对领域概念词表中的每个概念词,给出表达方式不同的同义词,在此基础上建立领域概念词消歧表,将不同表达方式的同义领域概念词映射到同一个词;S103:将领域概念词表加入分词词表,然后对每个历史问题进行分词和去停用词处理;S104:对每个历史问题,基于领域概念词表和领域概念词消歧表将句子中出现的所有不同表达方式的领域概念词替换为同一个词;S2:基于孪生神经网络训练语义相似度模型,用以计算任意两个句子的语义相似度值,具体包含以下子步骤S201~S205:S201:收集短句样本,并根据短句表达的含义将其进行分类,构建训练集TS;所述训练集TS里的每个样本为一个三元组

【技术特征摘要】
1.一种结合关键词检索与孪生神经网络的目标领域问答推送方法,用于根据用户提出的实时问题推送相应的答案,其特征在于包括以下步骤:S1:对目标领域进行知识构建和历史问题数据预处理,具体包含以下子步骤S101~S104:S101:获取并筛选出与目标领域相关的词条作为概念词,建立领域概念词表;S102:对领域概念词表中的每个概念词,给出表达方式不同的同义词,在此基础上建立领域概念词消歧表,将不同表达方式的同义领域概念词映射到同一个词;S103:将领域概念词表加入分词词表,然后对每个历史问题进行分词和去停用词处理;S104:对每个历史问题,基于领域概念词表和领域概念词消歧表将句子中出现的所有不同表达方式的领域概念词替换为同一个词;S2:基于孪生神经网络训练语义相似度模型,用以计算任意两个句子的语义相似度值,具体包含以下子步骤S201~S205:S201:收集短句样本,并根据短句表达的含义将其进行分类,构建训练集TS;所述训练集TS里的每个样本为一个三元组其中和分别为经过分词、去停用词和消歧预处理的两个短句,yi为和的关系标注,若两个短句属于同一类型则yi为1,属于不同类型则yi为0;S202:采用孪生神经网络训练语义相似度模型,网络结构包括输入层、卷积层、交互层和输出层;在所述输入层中,基于词嵌入技术将和中所有词替换为其对应的向量,对向量进行纵向拼接得到两个矩阵和然后通过尾部截断或填充全0向量的方式将和都处理成大小为l×d的输入矩阵,其中l为短句统一长度,d为词向量维度;在所述卷积层中,采用两个参数完全共享的卷积神经网络分别处理和每个卷积神经网络首先采用多个不同尺寸的卷积核对输入矩阵进行卷积操作;然后采用MaxPoolingOverTime策略对卷积结果进行池化操作;最后拼接池化结果得到卷积特征向量,记和的卷积特征向量分别为和在所述交互层中,基于余弦相似度计算和的相似度;在所述输出层中,采用对比损失函数作为训练的损失函数,输出和的预测相似度值;S3:针对用户输入的实时问题Qi,通过抽取关键词对历史问题进行全文检索,得到候选问题列表,具体包含以下子步骤S301~S304:S301:对实时问题Qi进行预处理,所述预处理包括分词、去停用词和消歧;S302:首先基于TextRank算法计算Qi中每个词的重要度权值;然后抽取Qi中所有消歧后的领域概念词,若抽取出的领域概念词数量小于等于关键词数量设定阈值k,则保留所有抽取出的领域概念词;否则保留重要度权值最高的k个抽取出的领域概念词;将最终保留的领域概念词集记为CW(Qi),其包含的词的数量为kCW;S303:若kCW<k,在Qi包含的非领域概念词中挑选重要度权值最高的(k-kCW)个词作为普通关键词,将最终保留的普通关键词集记为NW(Qi);S304:实时问题Qi的最终关键词集KW(Qi)=CW(...

【专利技术属性】
技术研发人员:安军张维碟庄铭权王琦晖吕明琪金永平张曼怡顾昀晖
申请(专利权)人:浙江爱闻格环保科技有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1