一种结合主动学习的社区问答网站答案排序方法及系统技术方案

技术编号:27531657 阅读:19 留言:0更新日期:2021-03-03 11:10
一种结合主动学习的社区问答网站答案排序方法及系统,排序方法包括步骤S1进行问答数据表征和建模,步骤S2结合主动学习构建训练集以及候选问答对排序关系预测。本发明专利技术同时提供了一种结合主动学习的社区问答网站答案排序系统。本发明专利技术首先对CQA网站问答数据进行表征和建模,通过长尾因子解决社区数据长尾分布给答案排序带来的干扰,在卷积神经网络中引入注意力机制缓解问答文本间的语义鸿沟问题。然后将主动学习和答案排序相结合,在基于规则自动构建标注训练集外,还构建未标注训练集,在未标注训练集中额外选择样本进行标注,将标注结果合并之后再次训练答案排序模型,从而实现以尽可能低的标注代价换取到尽可能高的模型性能。能。能。

【技术实现步骤摘要】
一种结合主动学习的社区问答网站答案排序方法及系统


[0001]本专利技术涉及互联网技术,具体为一种结合主动学习的社区问答网站答案排序方法及系统。

技术介绍

[0002]自21世纪以来,以用户为中心的Web2.0技术飞速发展,互联网用户成为拥有网络内容消费者和网络内容生成者双重身份的新时代用户。互联网对用户生成内容(User Generate Content,UGC)的支持,使得用户间通过网络可以分享更为复杂、多样的信息,基于此,社区问答(Community Question Answering,CQA)网站应运而生。CQA网站是一类开放的知识信息交流平台,通过自然语言问答形式将有信息需求的用户和乐于分享个人经验知识的用户关联到一起,实现知识信息准确、直接的传递,并支持用户通过点赞、评论等操作表达对问答数据的态度。从2005年第一个CQA网站“Yahoo!Answers”的出现,到至今“StackExchange”、“Quora”、“知乎”、“百度知道”等各类中英文CQA网站的不断出现,吸引了大量用户,成为用户获取信息和分享经验知识的重要渠道。
[0003]CQA网站发展至今,用户在系统中获取信息的方式经历了从直接提问到优先搜索的变迁。CQA网站发展初期,没有问答数据积累,有信息需求的用户通常会选择直接提问并等待其他的用户回答,这种方式可以直接获得用户所需信息,但通常等待时间很长,甚至等待很长时间后也没有答案。近年来,CQA网站快速发展,积累了大量问答数据,其中包含着很多相似提问甚至是相同提问,所以大部分用户在提问前会优先基于自己的问题检索CQA网站的历史问答数据,当检索到的历史问答数据无法满足需求时再去提问,从而减少等待时间,提升使用体验。目前主流CQA网站的检索功能一般给用户返回相似问题列表,并分别对每个相似问题的答案根据点赞、评论等数据进行排序。这种方式在一定程度上能够帮助用户进行答案选择,但依然存在问题,例如大量问答数据的浏览和对来自不同相似问题的答案之间的优劣判断造成了用户的认知过载,降低了用户的使用体验。所以,需要对所有相似问题的答案进行统一排序,针对用户的检索目标直接返回已排序的答案列表,帮助用户进行答案选择已成为了研究热点,即CQA网站答案排序任务,也可以称为社区问答任务。然而,CQA网站问答数据的特点给CQA网站答案排序方法的研究造成了困难。首先,CQA网站问答文本长度相差较大,共现词少且分布稀疏,另外,作为用户生成文本,答案文本中包含了大量冗余、噪声甚至是错误信息,加剧了问答文本间的语义鸿沟问题,对文本建模造成了困难;其次,CQA网站相关工作一般会引入基于社区数据计算的社区特征,如基于问题下所有答案总赞同数计算某个答案的赞同数份额,基于用户回答数计算用户平均每个回答所获得的赞同数,这种计算只有在社区数据足够大时才能保证社区特征的准确性。而现实中,CQA网站社区数据呈长尾分布,大量问答数据的社区特征数据很小,导致答案排序模型偏向大量社区特征难以准确反映数据真实水平的问答数据;最后,考虑到CQA网站中问题下正确答案并不唯一,用户对某个答案的评价基于与其他候选答案的比较,所以更适合采用基于答案对的排序方法,即将答案排序问题转换为一系列二分类问题,预测目标问题下任意两个候选
答案的排序关系。相较于预测问题和答案间相关性的基于单答案的排序方法,基于答案对的排序方法在训练集标注时需要对任意两个候选答案间的排序关系进行标注,训练集规模增长且标注难度增加。
[0004]目前国内外不少CQA网站答案排序相关工作为了降低训练集标注代价采用基于单答案的排序方法,直接对问题和每一个候选答案进行建模,预测问答间相关性,忽略了CQA网站中答案间的排序关系;并且在对CQA网站问答数据进行表征时,没有考虑到问答文本数据间明显的语义鸿沟,也没有考虑到问答社区数据长尾分布给研究带来的干扰。

技术实现思路

[0005]本专利技术的目的在于针对上述现有技术中CQA网站答案排序时问答文本数据间语义鸿沟以及问答社区数据长尾分布带来的问题,提供一种结合主动学习的社区问答网站答案排序方法及系统,减少答案排序过程中的干扰,降低文本建模的难度以及样本标注代价。
[0006]为了实现上述目的,本专利技术有如下的技术方案:
[0007]一种结合主动学习的社区问答网站答案排序方法,包括以下步骤:
[0008]S1、问答数据表征和建模:首先抽取问答数据文本特征,将分词以及去停用词后的问题标题和答案内容表示为词向量矩阵;然后基于问答相关社区数据计算问答数据社区特征,通过问题长尾因子和用户长尾因子将问题下答案总赞同数和用户回答数映射到(0,1)之间,将所述的问答数据社区特征乘以问题长尾因子和用户长尾因子代替原先的问答数据社区特征;最后将问答数据社区特征输入QQA-CNN模型将问答数据表征为分布式向量;
[0009]S2、结合主动学习构建训练集以及候选问答对排序关系预测:首先对问答数据集进行统计分析,将统计结果形式化为规则,基于规则自动构建初步的标注训练集;然后基于QQA-CNN模型构建答案排序模型并预测任意两个候选答案间的排序关系;最后构建未标注训练集,结合主动学习从中选择额外样本进行人工标注,将标注结果合并进初步的标注训练集再次训练答案排序模型,利用再次训练后的答案排序模型进行社区问答网站答案排序。
[0010]优选的,所述的步骤S1首先对问答数据中目标问题的标题、候选答案的内容和候选答案对应原问题的标题进行分词和去停用词,然后利用word2vec分别将文本表示为词向量矩阵。
[0011]优选的,所述的步骤S1中问答相关社区数据包括问题答案数、答案赞同份额、用户回答数、用户平均赞同数、用户平均喜欢数、用户答案平均被收藏数以及用户关注者数;
[0012]所述的问题答案数指问题下的答案总数,所述的用户回答数指用户在网站中提供的答案总数,所述的用户关注者数指用户被关注的总人次;所述的答案赞同份额指答案获得的赞同数在问题所有答案获得的总赞同数中的比例,答案赞同份额的计算方式如下:
[0013][0014]式中:表示答案的赞同份额;表示答案获得的赞同数;表示问
题q
i
下所有答案的赞同数之和;m
i
表示问题q
i
下的答案总数;
[0015]所述的用户平均赞同数、用户平均喜欢数以及用户答案平均被收藏数分别指的是用户平均每个回答获得的赞同数、喜欢数和被收藏数,其计算方式如下:
[0016][0017][0018][0019]式中:uac
i
表示用户u
i
的回答数;uvc
i
表示用户u
i
所有回答获得的总赞同数,即用户赞同数;ula
i
表示用户u
i
的平均喜欢数;ulc
i
表示用户u
i
所有回答获得的喜欢数总和,即用户喜欢数。
[0020]优选的,所述的步骤S1的问题长尾因子和用户长尾因子计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种结合主动学习的社区问答网站答案排序方法,其特征在于,包括以下步骤:S1、问答数据表征和建模:首先抽取问答数据文本特征,将分词以及去停用词后的问题标题和答案内容表示为词向量矩阵;然后基于问答相关社区数据计算问答数据社区特征,通过问题长尾因子和用户长尾因子将问题下答案总赞同数和用户回答数映射到(0,1)之间,将所述的问答数据社区特征乘以问题长尾因子和用户长尾因子代替原先的问答数据社区特征;最后将问答数据社区特征输入QQA-CNN模型将问答数据表征为分布式向量;S2、结合主动学习构建训练集以及候选问答对排序关系预测:首先对问答数据集进行统计分析,将统计结果形式化为规则,基于规则自动构建初步的标注训练集;然后基于QQA-CNN模型构建答案排序模型并预测任意两个候选答案间的排序关系;最后构建未标注训练集,结合主动学习从中选择额外样本进行人工标注,将标注结果合并进初步的标注训练集再次训练答案排序模型,利用再次训练后的答案排序模型进行社区问答网站答案排序。2.根据权利要求1所述结合主动学习的社区问答网站答案排序方法,其特征在于:所述的步骤S1首先对问答数据中目标问题的标题、候选答案的内容和候选答案对应原问题的标题进行分词和去停用词,然后利用word2vec分别将文本表示为词向量矩阵。3.根据权利要求1所述结合主动学习的社区问答网站答案排序方法,其特征在于:所述的步骤S1中问答相关社区数据包括问题答案数、答案赞同份额、用户回答数、用户平均赞同数、用户平均喜欢数、用户答案平均被收藏数以及用户关注者数;所述的问题答案数指问题下的答案总数,所述的用户回答数指用户在网站中提供的答案总数,所述的用户关注者数指用户被关注的总人次;所述的答案赞同份额指答案获得的赞同数在问题所有答案获得的总赞同数中的比例,答案赞同份额的计算方式如下:式中:表示答案的赞同份额;表示答案获得的赞同数;表示问题q
i
下所有答案的赞同数之和;m
i
表示问题q
i
下的答案总数;所述的用户平均赞同数、用户平均喜欢数以及用户答案平均被收藏数分别指的是用户平均每个回答获得的赞同数、喜欢数和被收藏数,其计算方式如下:平均每个回答获得的赞同数、喜欢数和被收藏数,其计算方式如下:平均每个回答获得的赞同数、喜欢数和被收藏数,其计算方式如下:式中:uac
i
表示用户u
i
的回答数;uvc
i
表示用户u
i
所有回答获得的总赞同数,即用户赞同数;ula
i
表示用户u
i
的平均喜欢数;ulc
i
表示用户u
i
所有回答获得的喜欢数总和,即用户喜欢数。4.根据权利要求1所述结合主动学习的社区问答网站答案排序方法,其特征在于,所述
的步骤S1的问题长尾因子和用户长尾因子计算方式如下:的步骤S1的问题长尾因子和用户长尾因子计算方式如下:式中:qv
i
表示问题q
i
下所有答案的赞同数之和,即m
i
为问题下的答案总数;ω
q
=0.1,φ
q
=0.6均表示问题长尾因子计算参数;uac
i
表示用户u
i
的回答数;ω
u
=0.1,φ
u
=1均表示用户长尾因子计算参数。5.根据权利要求1所述结合主动学习的社区问答网站答案排序方法,其特征在于:所述的步骤S1中的QQA-CNN模型的结构包括针对目标问题的深度网络、针对候选答案的深度网络,以及两个深度网络间的注意力机制模块和特征连接层;针对目标问题的深度网络包括两个卷积层和两个池化层,针对候选答案的深度网络包含三个卷积层和三个池化层,QQA-CNN模型在两个深度网络前、两个池化层间分别引入了两个注意力机制模块,最终在特征连接层中将学习得到的目标问题和候选答案的高层语义特征、社区特征以及目标问题和候选答案对应原问题相似度特征四部分进行连接,得到CQA网站问答数据的表征。6.根据权利要求5所述结合主动学习的社区问答网站答案排序方法,其特征在于:所述的卷积层中,QQA-CNN模型采用宽卷积提取连续的若干个词语的语义特征;池化层中,QQA-CNN模型采用两种池化策略,对于中间池化层QQA-CNN模型采取部分池化,即对一定长度窗口内的特征进行平均池化;对于网络中的最后一个池化层,QQA-CNN模型采用全部池化,即对卷积结果在句长维度上进行平均池化;注意力机制模块基于两个深度模型卷积层输出的特征图计算注意力权重,将结果应用于池化层中进行加权池化,对于目标问题和候选答案文本特征经过卷积层得到的特征图和注意力矩阵A计算表达式如下:式中:|
·
|表示欧几里得距离;注意力矩阵A中,在每行和每列上对元素进行求和即为单词的权重;所述的特征连接层进行特征的合并,包括目标问题文本的高层语义特征、候选答案文本的高层语义特征、问答数据相关社区特征以及目标问题和候选答案原问题文本特征矩阵的余弦相似度,最终通过QQA-CNN模型将问答数据表征为分布式向量。7.根据权利要求1所述结合主动学习的社区问答网站答案排序方法,其特征在于:所...

【专利技术属性】
技术研发人员:刘均任若清曾宏伟马昆明
申请(专利权)人:西安交通大学
类型:发明
国别省市:

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

1