论文部分内容阅读
社区问答(Community Question Answering, CQA)是一种基于网络社区帮助用户获取信息和共享知识的新型互联网服务。问题推荐的目标是自动将社区问答中新提出的问题推荐给合适的用户回答。问题推荐不仅能有效满足提问者的信息需求和回答者共享知识的意愿,而且能够促进整个社区问答系统的不断发展。因此,问题推荐相关的研究受到了学术界和工业界的广泛关注。 与一般推荐系统中单一角色的用户不同,社区问答中的用户同时扮演着回答者和提问者两个不同的角色。大多数已有的工作并没有深入探究用户双重角色的区别以及两个角色对问题推荐的影响,基本都是采用同一模型来表示具有双重角色的用户。因此本文重点关注问题推荐中用户双重角色的建模和分析,并将探究不同的角色对问题推荐的影响。本文的工作包含以下几个方面: 本文详细描述了国内外有关问题推荐的研究现状。我们首先介绍一般推荐系统中常用的推荐算法,并分析这几类推荐算法与问题推荐之间的关系。接着,我们从表示模型和推荐算法两个角度回顾当前已有问题推荐方法。 针对社区问答用户存在的双重角色的特点,我们提出双重角色模型(Dual Role Model,DRM)来分别对用户的两个角色进行建模。基于不同的独立性假设,本文提出两种DRM的模型实例:(1)独立双重角色模型(IndependentDRM),假设用户之间相互独立,单独对每个用户的两个角色进行建模;(2)依赖双重角色模型(Dependent DRM),在用户角色建模的过程中考虑不同用户之间相互依赖关系。 本文利用Yahoo! Answers和百度知道两个实际社区问答系统中的数据,通过实验系统的分析用户的不同角色的区别及其对问题推荐的影响。角色分析的实验结果显示用户的不同角色之间涉及的领域存在较大差异。同时,我们对比了基于提问者角色、回答者角色和混合角色的问题推荐方法的效果。实验结果表明:用户回答者角色比提问者角色在问题推荐中更加有效,而且简单的在回答者角色中混合提问者角色反而会降低问题推荐的效果。由于用户双重角色之间的差异和它们对问题推荐的不同影响,我们在问题推荐的用户表示模型中需要严格区分用户的两个角色。 基于DRM中构建的用户双重角色模型,我们自然的将回答者与提问者之间的用户关联性、回答者与问题内容之间的内容相关性整合到统一的问题推荐概率框架下,提出了基于DRM的问题推荐方法。基于DRM的概率推荐方法具有更好的解释性,问题推荐的实验结果也显示该方法优于已有的仅仅考虑内容相关性的基准推荐方法。 根据本文提出的问题推荐方法,我们从实际系统的角度设计了问题推荐原型系统。我们将系统划分为多个子模块,并分别描述各个模块的设计要点。特别的,我们设计了数据存储模块中各种数据表的结构,并在重排序模块中考虑除DRM推荐算法得分以外更多实际的、有效的问题推荐因素。综合考虑这些因素能有效提升实际系统中的问题推荐效果。