当前位置: 首页 > 专利查询>浙江大学专利>正文

一种利用非对称的多面排序网络学习解决社区问答任务的方法技术

技术编号:18204185 阅读:27 留言:0更新日期:2018-06-13 06:18
本发明专利技术公开了一种利用非对称的多面排序网络学习解决社区问答任务的方法。主要包括如下步骤:1)针对于一组用户、问题、答案数据集,构建用户、问题、答案之间相互关系的网络,并且针对于形成的网络,利用非对称的多面排序网络学习形成多面排序标准函数。2)根据得到的多面排序标准函数,对于某一问题针对于不同用户的答案进行排序。相比于一般的问题答案推荐解决方案,本发明专利技术利用了非对称的多面排序网络学习的方法,能够综合利用问题答案之间的语义相关性与用户之间的相互关系。本发明专利技术在社交问答网站问题答案预测中所取得的效果相比于传统的方法更好。

【技术实现步骤摘要】
一种利用非对称的多面排序网络学习解决社区问答任务的方法
本专利技术涉及社区问答任务,尤其涉及一种利用非对称的多面排序网络学习解决社区问答任务的方法。
技术介绍
随着以社区为基础的问答网站的蓬勃发展,以社区为基础的问答网站服务已经成为一项重要的网络服务,该服务可以针对于用户提出的问题,让其余用户进行解答并显示在网站上,而针对于每一个问题,通常会有许多用户提出不同的答案,则对于不同答案的排序便成为了该类型网站的重要任务之一,但是目前问答网站中已有该项功能的效果并不是很好。现有的技术主要是将问题答案匹配作为一种问答语义匹配的任务来做,该方法主要是通过学习出问题与答案的语义表达,从而将与问题相关度最高的答案排在前面,该方法仅仅考虑到了问题与答案的语义关联度,并没有利用到社区问答网站中的用户相互关系。为了克服这个缺陷,本方法将同时利用到问题答案的语义匹配信息与社区网站中的用户关系。本专利技术将首先利用已有的用户、问题、答案之间的关系及用户之间的相互关系构建异质的非对称社区问答网络,之后通过LSTM网络来获取问题及答案的语义表达,利用随机初始化得到用户表达,之后结合用户表达及问题答案的语义表达得到关于用户问答语义映射相关性的损失值。之后通过构建的非对称社交问答网络中的用户之间相互关注的关系,得到用户之间相互影响矩阵,并利用该矩阵与用户表达得到反映用户之间相互关系的损失项值。将用户问答语义映射相关的损失值与反映用户相互关系的损失值结合,得到最终的损失目标函数,经过训练,得到最终社区问答网站中问题答案之间的相关程度信息。
技术实现思路
本专利技术的目的在于解决现有技术中的问题,为了克服现有技术中仅仅关注到问题答案之间的语义关联程度没有关注到社区问答网站中用户之间相互关系的问题,本专利技术提供一种利用非对称的多面排序网络学习解决社区问答任务的方法。本专利技术所采用的具体技术方案是:利用非对称的多面排序网络学习解决社区问答任务的方法,包含如下步骤:1、针对于一组社交网络用户及其提出的问题与相关答案,构建包含用户、问题与答案之间相互关系的异质的非对称社区问答网络。2、利用单词映射网络及LSTM网络获取问题与答案的语义表达,利用随机初始化获取用户的映射表达。之后结合用户表达及问题答案的语义表达获取反映用户问答语义映射相关性的损失值。利用步骤1构建的非对称社区问答网络中的用户之间相互关注的关系,得到用户之间相互影响矩阵,并利用该矩阵与用户表达得到反映用户之间相互关系的损失项值。两者结合得到最终的损失函数。3、经过训练,得到最终的多面排序标准函数,根据该函数可以对于任意问题及用户提出的答案进行排序,将更适合问题的答案排在前列。上述步骤可具体采用如下实现方式:1、对于所给出的用户、用户提出的问题、用户提出的答案及相互之间关系集合,形成异质的非对称社区问答网络。2、对于所给出的问题、答案,利用如下方法获得每个问题与答案的映射表达:首先利用预训练好的单词映射方法获得问题答案中单词的对应映射,对于问题xi的第t个单词,得到其映射为xit。之后将问题的单词映射序列{xi1,...,xin}作为LSTM的输入,将所有问题的单词全部输入之后,进行训练,将最后一层的输出作为问题的语义表达,记为qi。对于答案yi,将答案中的每一句话的所有单词的单词映射序列{yi1,...,yin}输入到LSTM网络中,将每一句话的最后一层的输出作为该句话的语义表达,之后在该答案的所有句子的语义表达输出上面增加一最大池化层,将最大池化层的输出作为该答案的语义表达,记为ai。3、通过随机初始化得到用户的映射矩阵U={u1,u2,...,ul},根据步骤1获得的异质的非对称社区问答网络,获得关于问题及相关答案和用户的限制集合R={(i,j,k,o,p)},该集合中的每一条数据(i,j,k,o,p)代表的含义为“针对于问题i而言,由用户k提出的答案j可以比由用户p提出的答案o获得更多的支持,更加符合问题的要求。”针对于R={(i,j,k,o,p)}中的每一条数据,按照如下公式构建反映用户问答语义映射相关性的损失函数Lr:其中,c代表提前定义好的权衡最大距离值的参数,0为与进行最大值比较防止结果小于0的限定值;代表高质量答案对应的问答对的多面排序函数,代表低质量答案对应的问答对的多面排序函数,与的计算公式如下:其中,qi为问题i的对应映射表达,ak为答案k的对应映射表达,uj为用户j的对应映射表达,ap为答案p的对应映射表达,uo为用户o的对应映射表达,M∈Rd*d为用来计算问题与答案映射之间的语义关联程度的排序度量矩阵。4、根据步骤1获得的异质的非对称社区问答网络中用户之间相互关注的关系,构建非对称的用户相互关系矩阵Sl*l,其中,l为总体的用户数目,且若用户i在社区问答网络中关注了用户j,则sij=1,否则,sij=0。根据步骤1获得的异质的非对称社区问答网络中用户之间相互关注的关系,构建对角矩阵F=diag(|F1|,|F2|,...,|Fl|),对角矩阵中的元素|Fi|代表用户i所关注的用户数目。根据矩阵S与矩阵F构建矩阵W=F-1S。5、利用步骤4构建的矩阵W与用户的映射U={u1,u2,...,ul},按照如下公式构建反映用户之间相互关系的损失项值:其中,代表2阶范数,wij代表矩阵W的第ij号元素。则再结合步骤3所得到的反映用户问答语义映射相关性的损失函数Lr,得到最终的损失函数如下式所示:其中,λ为用来平衡反映用户问答语义映射相关性的损失函数与反映用户之间相互关系的损失项的权衡参数。6、将模型中所有的参数集合设为θ,以如下公式作为最终的目标函数:其中,α代表模型损失函数与模型参数的权衡参数。本专利技术采用随机梯度下降的方式对于模型进行优化,且斜率变量以AdaGrad的方法进行更新。7、经过模型优化之后,得到能够反映一组问题答案对相关程度的多面排序标准函数fM(q,u,a),通过该函数便可比较对于相同问题,不同用户提出的不同答案与该问题的相关程度。附图说明图1是本专利技术使用的利用所给出的用户、用户提出的问题、用户提出的答案及相互之间关系集合,形成的异质非对称社区问答网络的整体示意图。图2是本专利技术所使用的用来进行社区网络问答的异质非对称多面排序网络示意图。具体实施方式下面结合附图和具体实施方式对本专利技术做进一步阐述和说明。如图1所示,本专利技术一种利用非对称的多面排序网络学习解决社区问答任务的方法包括如下步骤:1)针对于一组社交网络用户及其提出的问题与相关答案,构建包含用户、问题与答案之间相互关系的异质的非对称社区问答网络;2)利用单词映射网络及LSTM网络获取问题与答案的语义表达,利用随机初始化获取用户的映射表达,之后结合用户表达及问题答案的语义表达获取反映用户问答语义映射相关性的损失值,利用步骤1)构建的非对称社区问答网络中的用户之间相互关注的关系,得到用户之间相互影响矩阵,并利用该矩阵与用户表达得到反映用户之间相互关系的损失项值,两者结合得到最终的损失函数,利用该损失函数进行训练,得到最终的多面排序标准函数;3)利用步骤2)学习得到的最终的多面排序标准函数对于关于任意问题不同用户提出的对该问题的答案进行相关性排序预测。所述的步骤2)采用非对称的多面排序网络获得多面排序标准函数本文档来自技高网...
一种利用非对称的多面排序网络学习解决社区问答任务的方法

【技术保护点】
一种利用非对称的多面排序网络学习解决社区问答任务的方法,其特征在于包括如下步骤:1)针对于一组社交网络用户及其提出的问题与相关答案,构建包含用户、问题与答案之间相互关系的异质的非对称社区问答网络;2.1)对于步骤1)形成的社区问答网络,利用单词映射网络及LSTM网络形成问题答案的映射,再结合用户映射获取反映用户问答语义映射相关性的损失值;2.2)对于步骤1)形成的社区问答网络,利用其中含有的用户关系,与用户映射矩阵相结合,得到反映用户之间相互关系的损失项值;2.3)利用步骤2.1)获得的反映用户问答语义映射相关性的损失值与步骤2.2)获得的反映用户之间相互关系的损失项值,得到最终的损失函数及目标函数;3)经过训练,得到最终的多面排序标准函数,根据该函数可以对于任意问题及用户提出的答案进行排序,将更适合问题的答案排在前列。

【技术特征摘要】
1.一种利用非对称的多面排序网络学习解决社区问答任务的方法,其特征在于包括如下步骤:1)针对于一组社交网络用户及其提出的问题与相关答案,构建包含用户、问题与答案之间相互关系的异质的非对称社区问答网络;2.1)对于步骤1)形成的社区问答网络,利用单词映射网络及LSTM网络形成问题答案的映射,再结合用户映射获取反映用户问答语义映射相关性的损失值;2.2)对于步骤1)形成的社区问答网络,利用其中含有的用户关系,与用户映射矩阵相结合,得到反映用户之间相互关系的损失项值;2.3)利用步骤2.1)获得的反映用户问答语义映射相关性的损失值与步骤2.2)获得的反映用户之间相互关系的损失项值,得到最终的损失函数及目标函数;3)经过训练,得到最终的多面排序标准函数,根据该函数可以对于任意问题及用户提出的答案进行排序,将更适合问题的答案排在前列。2.根据权利要求1所述利用非对称的多面排序网络学习解决社区问答任务的方法,其特征在于所述的步骤2.1)具体为:对于所给出的问题、答案,利用如下方法获得每个问题与答案的映射表达:首先利用预训练好的单词映射方法获得问题答案中单词的对应映射,对于问题xi的第t个单词,得到其映射为xit;之后将问题的单词映射序列{xi1,...,xin}作为LSTM的输入,将所有问题的单词全部输入之后,进行训练,将最后一层的输出作为问题的语义表达,记为qi;对于答案yi,将答案中的每一句话的所有单词的单词映射序列{yi1,...,yin}输入到LSTM网络中,将每一句话的最后一层的输出作为该句话的语义表达,之后在该答案的所有句子的语义表达输出上面增加一最大池化层,将最大池化层的输出作为该答案的语义表达,记为ai;通过随机初始化得到用户的映射矩阵U={u1,u2,...,ul},根据步骤1)获得的异质的非对称社区问答网络,获得关于问题及相关答案和用户的限制集合R={(i,j,k,o,p)},该集合中的每一条数据(i,j,k,o,p)代表的含义为“针对于问题i而言,由用户k提出的答案j可以比由用户p提出的答案o获得更多的支持,更加符合问题的要求;”针对于R={(i,j,k,o,p)}中的每一条数据,按照如下公式构建反映用户问答语义映射相关性的损失函数Lr:其中,c代表提前定义好的权衡最...

【专利技术属性】
技术研发人员:赵洲孟令涛林志杰蔡登何晓飞庄越挺
申请(专利权)人:浙江大学
类型:发明
国别省市:浙江,33

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

1