论文部分内容阅读
问答社区(Community Question Answering)为互联网用户提供了提问和回答的知识共享平台,如Quora、Yahoo!Answers和Stack Exchange等。这些问答社区满足了用户获取和发布知识的需求,因此吸引了各行各业的大量用户,并得到了快速的发展。在问答社区中,用户提出自己的问题并等待他人回答,如果问题不能及时的被解答,提问者很可能对问答社区失去信任感,从而造成用户的流失,影响社区的进一步发展。同时问答社区中用户的擅长领域各有不同,专业知识水平也参差不齐。因此,问答社区需要一种方法为提出的问题寻找到能提供高质量回答的专家。本文针对问答社区中的专家发现方法进行了研究,主要工作如下:1)针对因用户在创建标签过程中难以获得完美的统一而导致的标签过于细化问题和多命名问题,提出一种标签相似度衡量的方法,并结合马尔可夫聚类算法融合相似的标签,该标签聚类方法的有效性在Stack Exchange数据集上进行了实验验证。然后进一步探讨用户与标签之间的关系,构建出一种以用户和标签作为节点的网络,并应用网络嵌入方法生成用户向量,使得用户向量能同时含有标签信息和网络结构信息。2)针对问题设有最佳回答的问答场景,提出一种基于深度学习的专家发现方法。首先将问题的标题、正文和标签组合起来建立问题文本,并对问题文本进行若干数据清洗步骤得到了仅由重要词干组成的词序列,利用word2vec词向量模型训练生成问题向量。然后构造两个结构相同、参数不同的DNN分别从用户向量和问题向量提取特征,通过这二者的余弦相似度大小预测专家列表。最后在Stack Exchange数据集上进行实验,证明了提出的方法的有效性。3)针对在开放问答模式下问题有多个高质量答案的场景,本文将专家发现任务视为专家排序任务,并提出一种基于强化排序学习的专家发现方法。首先将专家发现任务形式化为马尔科夫决策过程,然后利用策略梯度方法学习模型的参数。最后在Stack Exchange问答数据集上进行了全方面的实验对比,证明了提出的方法的有效性。