CN110222163B - 一种融合cnn与双向lstm的智能问答方法及系统 - Google Patents
一种融合cnn与双向lstm的智能问答方法及系统 Download PDFInfo
- Publication number
- CN110222163B CN110222163B CN201910497128.6A CN201910497128A CN110222163B CN 110222163 B CN110222163 B CN 110222163B CN 201910497128 A CN201910497128 A CN 201910497128A CN 110222163 B CN110222163 B CN 110222163B
- Authority
- CN
- China
- Prior art keywords
- question
- answer
- user
- vector
- word
- 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.)
- Active
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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种融合CNN与双向LSTM的智能问答方法及系统,包括以下步骤:采集智能问答系统中的问题以及回答记录,构建问答对训练集QA;采集智能问答系统中每个用户的问题回答记录,构建用户的历史回答训练集UA;步骤C:使用问答对训练集QA以及用户的历史回复训练集UA,训练融合CNN与双向LSTM的深度学习网络模型M;步骤D:智能问答系统接受用户的提问,将提问输入到训练好的深度学习网络模型M中,输出匹配的答案。本发明融合CNN与双向LSTM,能够全面准确地提取影响智能问答精度的各项特征。
Description
技术领域
本发明涉及自然语言处理与智能问答应用领域,,具体涉及一种融合CNN与双向LSTM的智能问答方法。
背景技术
问答(Question Answering,QA)系统起源于图灵测试,随着时间的发展,问答系统领域也发生了重大变革。按照处理的数据格式不同,问答系统分别经历了结构化知识库阶段、无结构文本阶段、基于问题.答案数据阶段。随着互联网的普及,网上出现了大量的文本和各种大型论坛,这为社区智能问答系统的兴起奠定了基础。2005年以来,互联网相继涌现了大量的问答社区,基于社区的问答系统逐渐成了问答系统的一个重要研究分支。
Yu等人提出了一种基于LSA(Latent Semannc Analysxs,LSA)一j的问题一答案匹配度计算方法,该方法统计分析大量问答句子,构建潜在语义空问,计算句子间的语义空间相似度,有效地解决了词的同义和多义问题。Carmel提出了一种改进的单词权重计算模型,加入了词语的词性和依赖关系等语法特性,这些特征被用来训练排序模型,验证了该方法的有效性。Bian等人提出一种针对事实类问题的答案获取框架GBrank,能够较好的从大规模的社交媒体信息中挖掘结构完好的事实类答案。Helman从句法角度探索问题和答案的相关性,将句子表示成句法树的形式,通过构造树状的编辑模型计算句子问的句法相似度。Ko等人将问题的所有答案属于最佳答案的可能性看成联合概率分布,概率分布中得分较高的候选答案被认为是该问题的最佳答案。
深度学习理论在答案抽取和排序任务上也有一定应用。Wang使用双向长短时记忆网络进行答案选择,将BILSTM与关键词匹配模型相结合,由B1LSTM输出问题答案间的匹配结果。Zhou等人将答案选择看成答案标注问题,首先使用卷积神经网络(ConvoluhonalNeural Network,CNN)抽取问题和答案的分布式表示,然后将联合表示作为循环记忆网络的输入,以学习所有答案与问题的匹配关系。
传统CQA系统使用有监督学习,训练答案排序和问题检索模型,但该方法需要抽取复杂的文本特征,特征工程需
要较多的工程经验,很难在特征构造上做到最优,并且该方法在新的数据集上泛化性能较差,对新数据集往往需求重新进行特征抽取和特征工程。目前基于深度学习的方法通常基于单一的卷积神经网络或循环神经网络,无法全面准确地提取影响智能问答精度的各项特征。
发明内容
有鉴于此,本发明的目的在于提供一种融合CNN与双向LSTM的智能问答方法,融合CNN与双向LSTM,能够全面准确地提取影响智能问答精度的各项特征。
为实现上述目的,本发明采用如下技术方案:
一种融合CNN与双向LSTM的智能问答方法,包括以下步骤:
步骤A:采集智能问答系统中的问题以及对应的回答记录,构建问答对训练集QA;
步骤B:采集智能问答系统中每个用户的问题回答记录,构建用户的历史回答训练集UA;
步骤C:根据问答对训练集QA和用户的历史回复训练集UA,训练融合CNN与双向LSTM的深度学习网络模型M;
步骤D:智能问答系统接受用户的提问,将提问输入到训练好的深度学习网络模型M中,输出匹配的答案。
进一步的,所述步骤C具体包括以下步骤:
步骤C1:将问答对训练集中QA的每个问答对输入到卷积神经网络中,得到每个问答对的联合表征向量;
步骤C2:将得到的每个问答对的联合表征向量输入到双向LSTM网络中,得到每个问答对的上下文表征向量;
步骤C3:基于用户的历史回答训练集UA,采用多注意力机制进行学习,对用户进行建模,得到用户表征向量;
步骤C4:根据用户置信水平分数与用户专业水平分数,得到用户问答信誉度,作为非文本表征向量;
步骤C5:将分别从步骤C2、C3、C4学习得到的上下文表征向量、非文本表征向量连接,并输入到全连接层,实现特征融合,得到最终表征向量;
步骤C6:将最终表征向量输入到深度学习网络模型M的全连接层,根据目标损失函数loss,利用反向传播方法计算深度网络中各参数的梯度,并利用随机梯度下降方法更新参数;
步骤C7:当深度学习网络模型M产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止神经网络模型的训练。
进一步的,所述步骤C1具体包括以下步骤:
步骤C11:遍历问答对训练集QA,对QA中的每个问答序列qa=[q,a1,...,at,...,al],其中q表示问题,{at|t=1,2,...,l}为问题q的答案集合,l为问题q对应的答案数量,由问题q和答案集合中的每个答案at构成一个问答对(q,at);
步骤C12:分别对问答对(q,at)中的问题q和答案at进行分词处理,去除停用词,之后转成词向量形式,作为卷积神经网络的输入;
其中智能问答系统中的每个问题q由问题描述qs和问题主体qB组成,qs是智能问答系统中用户输入的问题q的标题部分S=[s1,s2,...,sn],qB是用户输入的问题q的详细描述部分B=[b1,b2,...,bm],问题q由S和B连接表示,输入答案句
其中si,i=1,2,...,n为qS中第i个单词所对应的词向量,bi,i=1,2,...,m为qB中第i个单词所对应的词向量,aj,j=1,2,...,n为at中第j个单词所对应的词向量,m为qB经过分词以及去除停用词后剩余的词语数量,n为at经过分词以及去除停用词后剩余的词语数量;bi、aj通过在预训练的词向量矩阵E∈Rd×|D|中查找词语对应的分布式表征向量得到;
其中d表示词向量的维度,|D|是词典D的大小;
步骤C13:将向量化后的问题q和答案at分别输入到并行的两个带有注意力机制的卷积神经网络中,通过卷积层与池化层后分别得到问题的表征融合向量xq和答案的表征向量xat,将xq和xat用一个连接向量xt表示,输入到全连接的隐藏层来得到问答对的表示向量vt:
xt=[xq,xat]
vt=σ(Whxt+bh)
步骤C14:对问题q和答案集合{at|t=1,2,...,l}中的每个答案构成的问答对(q,at),重复步骤C12;迭代结束后得到问答序列qa=[q,a1,...,at,...,al]对应的问答对向量序列PR=[v1,...,vt,...,vl]。
进一步的,所述步骤C2具体为:对于长短期记忆网络的正向,依次输入v1,...,vt,...,vl,对于长短期记忆网络的反向,则依次输入vl,...,vt,...,v1,其中,vt表示问答对(q,at)的联合表示;计算每个问答对在正向和反向的隐层状态值,得到每个问答对的隐层向量,得到问答对序列的表征向量H:
H=[h1,...,ht,...,hl]
其中,vt为文本中第t个问答对的联合表征向量,表示问题D中第t个问答对的在正向长短期记忆网络中的隐层状态向量,表示问答对(q,at)在反向长短期记忆网络中的隐层状态向量,f为长短期记忆网络中对隐层状态的计算函数,ht为正向和反向状态向量的连接。
进一步的,所述步骤C3中具体包括以下步骤:
S=[s1,s2,...,sn]
B=[b1,b2,...,bm]
其中si表示问题描述第i个词的向量化表示,bi表示问题主题第i个词的向量化表示
步骤C32:通过全连接层计算多维注意力权重,使用tanh函数激活,然后将获得的向量归一化产生多重注意力机制,得到的输出是问题描述中的每个词向量对问题主体的权重之和,计算公式如下:
其中,Wp1和bp1为训练的参数,c为可调整的参数,是词的权重,⊙表示逐点相乘,是每个问题主题B词向量b乘上对问题描述S的第i个单词si的权重之和,S=[s1,s2,...,sl],B=[b1,b2,...,bm];
步骤C32:获取问题描述的相似向量,计算公式如下:
Fpara=σ(Wp3Semb+Wp3Sap+bp2)
Spara=Fpara⊙Semb+(1-Fpara)
其中Wp3,Wp3,b是训练参数,σ是激活函数,⊙表示逐点相乘
步骤C33:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力和加权和,计算公式如下:
步骤C34:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力和加权和,计算公式如下:
As=Ws2tanh(Ws1Sai+bs1)+bs2
其中Ws2,Ws1,bs1,bs2是可训练的参数,Csum通过同样的方法得到
步骤C35:将问题的表征向量和用户的历史回答向量连接:
U=[ssum,ccum]。
进一步的,所述步骤C4包括以下步骤:
步骤C41:计算用户的专业水平得分,用户的专业水平得分受用户在回答问题时的积极性和参与程度的影响,计算公式如下:
其中,f(uj)为用户参与程度,问题根据所提问的领域的不同有不同的问题类型,xj是用户uj提供的答案总数,μ,ub是基于用户的答案分布模式确定的阈值,用于奖励大多数活跃用户;g(uj)为用户最佳答案级别,expe(uj)表示用户专业化程度;
步骤C42:计算用户的置信水平con(uj),计算公式如下:
con(uj)=yj/xj
其中yj是用户j的最佳答案数,xj是答案总数
步骤C43:根据用户置信水平得分与用户专业水平得分,计算用户的信誉分数,计算公式如下:
sj=con(uj)·expe(uj)
其中,sj表示用户j的信誉分数,为置信水平con(uj)和用户专业水平expe(uj)的乘积。
进一步的,所述步骤C6具体包括以下步骤:
步骤C61:将特征向量输入到全连接层,并使用softmax归一化,计算答案属于各类别的概率,计算公式如下:
y=fdense(Wdense1·h+Wdense2·U+Wdense3·sj)
p(yi)=softmax(y)
其中,Wdense1,Wdense2,Wdense3为全连接层权重矩阵,,fdense为激活函数,,p(yi)为预测为类别i的概率,0≤p(yi)≤1,L为类别的总数;
步骤C62:用交叉熵作为损失函数计算损失值,通过梯度优化算法adagrad进行学习率更新,利用反向传播迭代更新模型参数,以最小化损失函数来训练模型;
其中最小化损失函数,Loss的计算公式如下,
其中D为问答对训练集。
进一步的,基于融合CNN与双向LSTM的智能问答方法的系统,其特征在于,包括:
预处理模块,对问答对数据集和用户历史回答数据集进行预处理,去除停用词,分词,词向量化;
深度网络训练模块,用于使用问答对数据集和用户历史回答数据集训练基于融合CNN与双向LSTM的深度网络;
判定模块,用于将回答输入到深度网络进行类别判定。
本发明与现有技术相比具有以下有益效果:
本发明融合CNN与双向LSTM,能够全面准确地提取影响智能问答精度的各项特征。
附图说明
图1是本发明的方法流程图。
图2是本发明系统实施例的实现流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
请参照图1,本发明提供一种融合CNN与双向LSTM的智能问答方法,包括以下步骤:
步骤A:采集智能问答系统中的问题以及对应的回答记录,构建问答对训练集QA;
步骤B:采集智能问答系统中每个用户的问题回答记录,构建用户的历史回答训练集UA;
步骤C:根据问答对训练集QA和用户的历史回复训练集UA,训练融合CNN与双向LSTM的深度学习网络模型M;
步骤D:智能问答系统接受用户的提问,将提问输入到训练好的深度学习网络模型M中,输出匹配的答案。
在本实施例中,所述步骤C具体包括以下步骤:
步骤C1:将问答对训练集中QA的每个问答对输入到卷积神经网络中,得到每个问答对的联合表征向量;
步骤C2:将得到的每个问答对的联合表征向量输入到双向LSTM网络中,得到每个问答对的上下文表征向量;
步骤C3:基于用户的历史回答训练集UA,采用多注意力机制进行学习,对用户进行建模,得到用户表征向量;
步骤C4:根据用户置信水平分数与用户专业水平分数,得到用户问答信誉度,作为非文本表征向量;
步骤C5:将分别从步骤C2、C3、C4学习得到的上下文表征向量、非文本表征向量连接,并输入到全连接层,实现特征融合,得到最终表征向量;
步骤C6:将最终表征向量输入到深度学习网络模型M的全连接层,根据目标损失函数loss,利用反向传播方法计算深度网络中各参数的梯度,并利用随机梯度下降方法更新参数;
步骤C7:当深度学习网络模型M产生的损失值迭代变化小于设定阈值不再降低或者达到最大迭代次数,则终止神经网络模型的训练。
在本实施例中,所述步骤C1具体包括以下步骤:
步骤C11:遍历问答对训练集QA,对QA中的每个问答序列qa=[q,a1,...,at,...,al],其中q表示问题,{at|t=1,2,...,l}为问题q的答案集合,l为问题q对应的答案数量,由问题q和答案集合中的每个答案at构成一个问答对(q,at);
步骤C12:分别对问答对(q,at)中的问题q和答案at进行分词处理,去除停用词,之后转成词向量形式,作为卷积神经网络的输入;
其中智能问答系统中的每个问题q由问题描述qs和问题主体qB组成,qs是智能问答系统中用户输入的问题q的标题部分S=[s1,s2,...,sn],qB是用户输入的问题q的详细描述部分B=[b1,b2,...,bm],问题q由S和B连接表示,输入答案句
其中si,i=1,2,...,n为qS中第i个单词所对应的词向量,bi,i=1,2,...,m为qB中第i个单词所对应的词向量,aj,j=1,2,...,n为at中第j个单词所对应的词向量,m为qB经过分词以及去除停用词后剩余的词语数量,n为at经过分词以及去除停用词后剩余的词语数量;bi、aj通过在预训练的词向量矩阵E∈Rd×|D|中查找词语对应的分布式表征向量得到;
其中d表示词向量的维度,|D|是词典D的大小;
步骤C12:将向量化后的问题q和答案at分别输入到并行的两个带有注意力机制的卷积神经网络中,通过卷积层与池化层后分别得到问题的表征融合向量xq和答案的表征向量xat,将xq和xat用一个连接向量xt表示,输入到全连接的隐藏层来得到问答对的表示向量vt:
xt=[xq,xat]
vt=σ(Whxt+bh)
步骤C13:对问题q和答案集合{at|t=1,2,...,l}中的每个答案构成的问答对(q,at),重复步骤C12;迭代结束后得到问答序列qa=[q,a1,...,at,...,al]对应的问答对向量序列PR=[v1,...,vt,...,vl]。
在本实施例中,所述步骤C2具体为:对于长短期记忆网络的正向,依次输入v1,...,vt,...,vl,对于长短期记忆网络的反向,则依次输入vl,...,vt,...,v1,其中,vt表示问答对(q,at)的联合表示;计算每个问答对在正向和反向的隐层状态值,得到每个问答对的隐层向量,得到问答对序列的表征向量H:
H=[h1,...,ht,...,hl]
其中,vt为文本中第t个问答对的联合表征向量,表示问题D中第t个问答对的在正向长短期记忆网络中的隐层状态向量,表示问答对(q,at)在反向长短期记忆网络中的隐层状态向量,f为长短期记忆网络中对隐层状态的计算函数,ht为正向和反向状态向量的连接。
在本实施例中,所述步骤C3中具体包括以下步骤:
S=[s1,s2,...,sn]
B=[b1,b2,...,bm]
其中si表示问题描述第i个词的向量化表示,bi表示问题主题第i个词的向量化表示
步骤C32:通过全连接层计算多维注意力权重,使用tanh函数激活,然后将获得的向量归一化产生多重注意力机制,得到的输出是问题描述中的每个词向量对问题主体的权重之和,计算公式如下:
其中,Wp1和bp1为训练的参数,c为可调整的参数,是词的权重,⊙表示逐点相乘,是每个问题主题B词向量b乘上对问题描述S的第i个单词si的权重之和,S=[s1,s2,...,sl],B=[b1,b2,...,bm];
步骤C32:获取问题描述的相似向量,计算公式如下:
Fpara=σ(Wp3Semb+Wp3Sap+bp2)
Spara=Fpara⊙Semb+(1-Fpara)
其中Wp3,Wp3,b是训练参数,σ是激活函数,⊙表示逐点相乘
步骤C33:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力和加权和,计算公式如下:
步骤C34:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力和加权和,计算公式如下:
As=Ws2tanh(Ws1Sai+bs1)+bs2
其中Ws2,Ws1,bs1,bs2是可训练的参数,Csum通过同样的方法得到
步骤C35:将问题的表征向量和用户的历史回答向量连接:
U=[ssum,ccum]。
在本实施例中,所述步骤C4包括以下步骤:
步骤C41:计算用户的专业水平得分,用户的专业水平得分受用户在回答问题时的积极性和参与程度的影响,计算公式如下:
其中,f(uj)为用户参与程度,问题根据所提问的领域的不同有不同的问题类型,xj是用户uj提供的答案总数,μ,ub是基于用户的答案分布模式确定的阈值,用于奖励大多数活跃用户;g(uj)为用户最佳答案级别,expe(uj)表示用户专业化程度;
步骤C42:计算用户的置信水平con(uj),计算公式如下:
con(uj)=yj/xj
其中yj是用户j的最佳答案数,xj是答案总数
步骤C43:根据用户置信水平得分与用户专业水平得分,计算用户的信誉分数,计算公式如下:
sj=con(uj)·expe(uj)
其中,sj表示用户j的信誉分数,为置信水平con(uj)和用户专业水平expe(uj)的乘积。
在本实施例中,所述步骤C6具体包括以下步骤:
步骤C61:将特征向量输入到全连接层,并使用softmax归一化,计算答案属于各类别的概率,计算公式如下:
y=fdense(Wdense1·h+Wdense2·U+Wdense3·sj)
p(yi)=softmax(y)
其中,Wdense1,Wdense2,Wdense3为全连接层权重矩阵,,fdense为激活函数,,p(yi)为预测为类别i的概率,0≤p(yi)≤1,L为类别的总数;
步骤C62:用交叉熵作为损失函数计算损失值,通过梯度优化算法adagrad进行学习率更新,利用反向传播迭代更新模型参数,以最小化损失函数来训练模型;
其中最小化损失函数,Loss的计算公式如下,
其中D为问答对训练集。
本发明还提供了用于实现上述方法的智能问答系统,包括:
预处理模块,对问答对数据集和用户历史回答数据集进行预处理,去除停用词,分词,词向量化;
深度网络训练模块,用于使用问答对数据集和用户历史回答数据集训练基于融合CNN与双向LSTM的深度网络;
判定模块,用于将回答输入到深度网络进行类别判定。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (6)
1.一种融合CNN与双向LSTM的智能问答方法,其特征在于,包括以下步骤:
步骤A:采集智能问答系统中的问题以及对应的回答记录,构建问答对训练集QA;
步骤B:采集智能问答系统中每个用户的问题回答记录,构建用户的历史回答训练集UA;
步骤C:根据问答对训练集QA和用户的历史回复训练集UA,训练融合CNN与双向LSTM的深度学习网络模型M;
步骤D:智能问答系统接受用户的提问,将提问输入到训练好的深度学习网络模型M中,输出匹配的答案;
所述步骤C具体包括以下步骤:
步骤C1:将问答对训练集QA中的每个问答对输入到卷积神经网络中,得到每个问答对的联合表征向量;
步骤C2:将得到的每个问答对的联合表征向量输入到双向LSTM网络中,得到每个问答对的上下文表征向量;
步骤C3:基于用户的历史回答训练集UA,采用多注意力机制进行学习,对用户进行建模,得到用户的表征向量;
步骤C4:根据用户置信水平分数与用户专业水平分数,得到用户问答信誉度,作为非文本表征向量;
步骤C5:将分别从步骤C2、C3、C4学习得到的上下文表征向量、用户的表征向量、非文本表征向量连接,并输入到全连接层,实现特征融合,得到最终表征向量;
步骤C6:将最终表征向量输入到深度学习网络模型M的全连接层,根据目标损失函数loss,利用反向传播方法计算深度网络中各参数的梯度,并利用随机梯度下降方法更新参数;
步骤C7:当深度学习网络模型M产生的损失值迭代变化小于设定阈值或者达到最大迭代次数,则终止神经网络模型的训练;
所述步骤C4包括以下步骤:
步骤C41:计算用户的专业水平得分,用户的专业水平得分受用户在回答问题时的积极性和参与程度的影响,计算公式如下:
其中,f(uj)为用户参与程度,问题根据所提问的领域的不同有不同的问题类型,xj是用户uj提供的答案总数,μ,ub均是基于用户的答案分布模式确定的阈值,用于奖励大多数活跃用户;g(uj)为用户最佳答案级别,expe(uj)表示用户专业化程度;
步骤C42:计算用户的置信水平con(uj),计算公式如下:
con(uj)=yj/xj
其中yj是用户uj的最佳答案数,xj是答案总数
步骤C43:根据用户置信水平得分与用户专业水平得分,计算用户的信誉分数,计算公式如下:
sj=con(uj)·expe(uj)
其中,sj表示用户uj的信誉分数,为置信水平con(uj)和用户专业水平expe(uj)的乘积。
2.根据权利要求1所述的一种融合CNN与双向LSTM的智能问答方法,其特征在于,包括以下步骤:所述步骤C1具体包括以下步骤:
步骤C11:遍历问答对训练集QA,对QA中的每个问答序列qa=[q,a1,…,at,…,al],其中q表示问题,{at|t=1,2,...,l}为问题q的答案集合,l为问题q对应的答案数量,由问题q和答案集合中的每个答案at构成一个问答对(q,at);
步骤C12:分别对问答对(q,at)中的问题q和答案at进行分词处理,去除停用词,转成词向量形式,作为卷积神经网络的输入;
其中智能问答系统中的每个问题q由问题描述qs和问题主体qB组成,qs是智能问答系统中用户输入的问题q的标题部分S=[s1,s2,…si…,sn],qB是用户输入的问题q的详细描述部分B=[b1,b2,…bi,…,bm],问题q由S和B连接表示,输入答案句
其中si,i=1,2,...,n为qS中第i个单词所对应的词向量,bi,i=1,2,...,m为qB中第i个单词所对应的词向量,为at中第j个单词所对应的词向量,m为qB经过分词以及去除停用词后剩余的词语数量,n为at经过分词以及去除停用词后剩余的词语数量;bi、aj通过在预训练的词向量矩阵E∈Rd×|D|中查找词语对应的分布式表征向量得到;
其中d表示词向量的维度,|D|是词典D的大小;
步骤C13:将向量化后的问题q和答案at分别输入到并行的两个带有注意力机制的卷积神经网络中,通过卷积层与池化层后分别得到问题的表征融合向量xq和答案的表征向量xat,将xq和xat用一个连接向量xt表示,输入到全连接的隐藏层来得到问答对的表示向量vt:
xt=[xq,xat]
vt=σ(Whxt+bh)
步骤C14:对问题q和答案集合{at|t=1,2,...,l}中的每个答案构成的问答对(q,at),重复步骤C12;迭代结束后得到问答序列qa=[q,a1,…,at,...,al]对应的问答对向量序列PR=[v1,...,vt,...,vl]。
3.根据权利要求1所述的一种融合CNN与双向LSTM的智能问答方法,其特征在于,所述步骤C2具体为:对于长短期记忆网络的正向,依次输入v1,...,vt,...,vl,对于长短期记忆网络的反向,则依次输入vl,...,vt,...,v1,其中,vt表示问答对(q,at)的联合表示;计算每个问答对在正向和反向的隐层状态值,得到每个问答对的隐层向量,得到问答对序列的表征向量H:
H=[h1,...,ht,...,hl]
4.根据权利要求1所述的一种融合CNN与双向LSTM的智能问答方法,其特征在于,所述步骤C3中具体包括以下步骤:
S=[s1,s2,...si...,sn]
B=[b1,b2,...bi,...,bm]
其中si表示问题描述第i个词的向量化表示,bi表示问题主题第i个词的向量化表示
步骤C32:通过全连接层计算多维注意力权重,使用tanh函数激活,然后将获得的向量归一化产生多重注意力机制,得到的输出是问题描述中的每个词向量对问题主体的权重之和,计算公式如下:
其中,Wp1和bp1为训练的参数,c为可调整的参数,是词的权重,⊙表示逐点相乘,是每个问题主题B词向量bi乘上对问题描述S的第i个单词si的权重之和,S=[s1,s2,...,sl],B=[b1,b2,...,bm];
步骤C33:获取问题描述的相似向量,计算公式如下:
Fpara=a(Wp3Semb+Wp3Sap+bp2)
Spara=Fpara⊙Semb+(1-Fpara)
其中Wp3,b是训练参数,σ是激活函数;
步骤C34:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力加权和,计算公式如下:
步骤C35:将问题和用户历史回答对齐,计算问题表征和用户历史回答表征的注意力加权和,计算公式如下:
As=Ws2tanh(Ws1Sai+bs1)+bs2
其中Ws2,Ws1,bs1,bs2是可训练的参数,Csum通过同样的方法得到
步骤C36:将问题的表征向量和用户的历史回答向量连接:
U=[Ssum,Ccum]。
5.根据权利要求4所述的一种融合CNN与双向LSTM的智能问答方法,其特征在于:所述步骤C6具体包括以下步骤:
步骤C61:将特征向量输入到全连接层,并使用softmax归一化,计算答案属于各类别的概率,计算公式如下:
y=fdense(Wdense1·H+Wdense2·U+Wdense3·sj)
p(yi)=soft max(y)
其中,Wdense1,Wdense2,Wdense3为全连接层权重矩阵,fdense为激活函数,p(yi)为预测为类别i的概率,0≤p(yi)≤1,l为类别的总数;H为问答对序列的表征向量
步骤C62:用交叉熵作为损失函数计算损失值,通过梯度优化算法adagrad进行学习率更新,利用反向传播迭代更新模型参数,以最小化损失函数来训练模型;
其中最小化损失函数,Loss的计算公式如下,
其中QA为问答对训练集。
6.根据权利要求1-5任一所述的一种融合CNN与双向LSTM的智能问答方法的系统,其特征在于,包括:
预处理模块,对问答对数据集和用户历史回答数据集进行预处理,去除停用词,分词,词向量化;
深度网络训练模块,用于使用问答对数据集和用户历史回答数据集训练基于融合CNN与双向LSTM的深度网络;
判定模块,用于将回答输入到深度网络进行类别判定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910497128.6A CN110222163B (zh) | 2019-06-10 | 2019-06-10 | 一种融合cnn与双向lstm的智能问答方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910497128.6A CN110222163B (zh) | 2019-06-10 | 2019-06-10 | 一种融合cnn与双向lstm的智能问答方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110222163A CN110222163A (zh) | 2019-09-10 |
CN110222163B true CN110222163B (zh) | 2022-10-04 |
Family
ID=67816061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910497128.6A Active CN110222163B (zh) | 2019-06-10 | 2019-06-10 | 一种融合cnn与双向lstm的智能问答方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110222163B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825857B (zh) * | 2019-09-24 | 2023-07-21 | 平安科技(深圳)有限公司 | 多轮问答识别方法、装置、计算机设备及存储介质 |
CN110853626B (zh) * | 2019-10-21 | 2021-04-20 | 成都信息工程大学 | 基于双向注意力神经网络的对话理解方法、装置及设备 |
CN111026854A (zh) * | 2019-12-05 | 2020-04-17 | 电子科技大学广东电子信息工程研究院 | 一种答案质量的评估方法 |
CN111159366A (zh) * | 2019-12-05 | 2020-05-15 | 重庆兆光科技股份有限公司 | 一种基于正交主题表示的问答优化方法 |
CN111078854B (zh) * | 2019-12-13 | 2023-10-27 | 北京金山数字娱乐科技有限公司 | 问答预测模型的训练方法及装置、问答预测方法及装置 |
CN111125330A (zh) * | 2019-12-19 | 2020-05-08 | 厦门快商通科技股份有限公司 | 一种基于人机对话的智能问答方法和装置以及设备 |
CN111143527A (zh) * | 2019-12-19 | 2020-05-12 | 厦门快商通科技股份有限公司 | 一种基于人机对话的自动问答方法和装置以及设备 |
CN111414461B (zh) * | 2020-01-20 | 2022-06-14 | 福州大学 | 一种融合知识库与用户建模的智能问答方法及系统 |
CN111353032B (zh) * | 2020-02-27 | 2022-06-14 | 福州大学 | 面向社区问答的问题分类方法及系统 |
CN111368058B (zh) * | 2020-03-09 | 2023-05-02 | 昆明理工大学 | 一种基于迁移学习的问答匹配方法 |
CN111459927B (zh) * | 2020-03-27 | 2022-07-08 | 中南大学 | Cnn-lstm开发者项目推荐方法 |
CN111259668B (zh) * | 2020-05-07 | 2020-08-18 | 腾讯科技(深圳)有限公司 | 阅读任务处理方法、模型训练方法、装置和计算机设备 |
CN112101406A (zh) * | 2020-07-31 | 2020-12-18 | 北京交通大学 | 一种多智能体网络的智能水平量化方法 |
CN113806474A (zh) * | 2020-08-24 | 2021-12-17 | 北京沃东天骏信息技术有限公司 | 数据匹配方法及装置、电子设备、存储介质 |
CN112800203B (zh) * | 2021-02-05 | 2021-12-07 | 江苏实达迪美数据处理有限公司 | 一种融合文本和知识表征的问答匹配方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562792A (zh) * | 2017-07-31 | 2018-01-09 | 同济大学 | 一种基于深度学习的问答匹配方法 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN108829719A (zh) * | 2018-05-07 | 2018-11-16 | 中国科学院合肥物质科学研究院 | 一种非事实类问答答案选择方法及系统 |
JP2019020893A (ja) * | 2017-07-13 | 2019-02-07 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答装置 |
CN109766423A (zh) * | 2018-12-29 | 2019-05-17 | 上海智臻智能网络科技股份有限公司 | 基于神经网络的问答方法及装置、存储介质、终端 |
-
2019
- 2019-06-10 CN CN201910497128.6A patent/CN110222163B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019020893A (ja) * | 2017-07-13 | 2019-02-07 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答装置 |
CN107562792A (zh) * | 2017-07-31 | 2018-01-09 | 同济大学 | 一种基于深度学习的问答匹配方法 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN108829719A (zh) * | 2018-05-07 | 2018-11-16 | 中国科学院合肥物质科学研究院 | 一种非事实类问答答案选择方法及系统 |
CN109766423A (zh) * | 2018-12-29 | 2019-05-17 | 上海智臻智能网络科技股份有限公司 | 基于神经网络的问答方法及装置、存储介质、终端 |
Non-Patent Citations (1)
Title |
---|
question condensing networks for answer selection in commuinty question answering;Wei Wu等;《ACL 2018》;20180720;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110222163A (zh) | 2019-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110222163B (zh) | 一种融合cnn与双向lstm的智能问答方法及系统 | |
CN108595632B (zh) | 一种融合摘要与主体特征的混合神经网络文本分类方法 | |
CN110609891B (zh) | 一种基于上下文感知图神经网络的视觉对话生成方法 | |
CN107291693B (zh) | 一种改进词向量模型的语义计算方法 | |
CN108363743B (zh) | 一种智能问题生成方法、装置和计算机可读存储介质 | |
CN108549658B (zh) | 一种基于语法分析树上注意力机制的深度学习视频问答方法及系统 | |
CN111414461B (zh) | 一种融合知识库与用户建模的智能问答方法及系统 | |
CN107943784B (zh) | 基于生成对抗网络的关系抽取方法 | |
CN107025284A (zh) | 网络评论文本情感倾向的识别方法及卷积神经网络模型 | |
CN110516245A (zh) | 细粒度情感分析方法、装置、计算机设备及存储介质 | |
CN110826338B (zh) | 一种单选择门与类间度量的细粒度语义相似识别的方法 | |
CN108829662A (zh) | 一种基于条件随机场结构化注意力网络的对话行为识别方法及系统 | |
CN111966812B (zh) | 一种基于动态词向量的自动问答方法和存储介质 | |
CN111898374A (zh) | 文本识别方法、装置、存储介质和电子设备 | |
CN108647191A (zh) | 一种基于有监督情感文本和词向量的情感词典构建方法 | |
Jin et al. | Combining cnns and pattern matching for question interpretation in a virtual patient dialogue system | |
Zheng et al. | A deep learning approach for expert identification in question answering communities | |
CN110597968A (zh) | 一种回复选择方法及装置 | |
CN111914553A (zh) | 一种基于机器学习的金融信息负面主体判定的方法 | |
Arora et al. | Comparative question answering system based on natural language processing and machine learning | |
CN111581364A (zh) | 一种面向医疗领域的中文智能问答短文本相似度计算方法 | |
Polignano et al. | Identification Of Bot Accounts In Twitter Using 2D CNNs On User-generated Contents. | |
CN114282592A (zh) | 一种基于深度学习的行业文本匹配模型方法及装置 | |
CN111353032B (zh) | 面向社区问答的问题分类方法及系统 | |
CN113239678B (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 | ||
GR01 | Patent grant |