「自然语言处理(NLP)论文解读」网络社区问题分类与难易评估(含源码)

来源:AINLPer微信公众号
编辑: ShuYini
校稿: ShuYini
时间: 2019-8-24

引言

    本次为大家分享是关于网络社区问答相关的两篇文章。第一篇主要针对网络社区提交问题,提出相似性分类算法来判断该问题是否清楚,进而帮助提问者优化自己提出的问题让回答者更加明确提问者的意图。第二篇主要评估网络社区提交问题的难易程度,来帮助优化网络社区建设。

ps:关于 「自然语言处理(NLP)论文解读」系列文章,作者首先会更新到 AINLPer 微信公众号中,想要第一时间看到更新,可以关注一下。

First Blood

TILE: Identifying Unclear Questions in Community Question Answering Websites.
Contributor : 特文特大学(University of Twente)
Paper: https://arxiv.org/pdf/1901.06168v1.pdf
Code: https://github.com/jantrienes/ecir2019-qac

文章摘要

    社区网站上有很多提交的问题(CQA)都不是很清楚,没有专家社区成员的进一步澄清该问题是无法回答的。为此本文首次探讨将一个问题划分为清楚或不清楚的复杂任务。为此我们构造了一个新的数据集,提出了一种基于相似问题概念的分类方法。这种方法与最先进的文本分类基线进行了比较,发现本文方法是一种可行的替代方法。

模型方法介绍

    不明确的问题检测任务可以看作是一个二分类问题。给定一个包含N个问题的数据集, Q = q 1 q N Q = {q1,…,qN} ,其中每个问题都属于clear类或unclear类,预测一个新的(不可见的)问题q的类标签。在本节中,我们提出了一个利用相似问题特征作为分类特征的模型。我们将一个问题定义为,如果它收到了澄清问题,那么它就是不清楚的;如果在没有澄清请求的情况下提供了答案,那么它是清楚的。为了支持用户提出问题,并提高问题的质量,我们设想了以下两步系统:(1)确定一个问题是否需要澄清(2)自动生成和提出澄清问题,引出缺失的信息。本文主要论述了第一步。如下图所示:

相似问题模型

     相似问题模型的核心思想是,现有相似问题可能提供有关信息存在与否的有用指标。 例如,考虑表1中的两个问题。可以看出,在提出澄清问题之后,现有的问题增加了具体额外信息。分类系统可以从澄清问题中提取关键短语(如操作系统),并检查该信息是否存在于给定的问题中(如图1)。换句话说,系统会检查新问题是否缺少之前类似问题中缺少的信息。结果表明,该方法可以成功地用于澄清问题的寻找和排序。
    类似的问题模型可以形式化如下。给定一个新的问题q,我们首先寻找一组k个类似的问题 Q = q 1 , Q 2 q k Q^{'} = {q_{1}^{'}, Q_{2}^{'},…,q{k}^{'}} ,以及它们清晰和不清晰的标签。根据我们对不清楚的定义,不清楚问题Q0不清楚的子集有一组M个对应的澄清问题 C Q = c q 1 , c q 2 c q M CQ^{'}= {cq_{1}^{'}, cq_{2}^{'},…,cq_{M}^{'}} 。在这个框架中,我们设计了一些新的指示性特征,然后用来训练分类器来区分这两个类。如下所示:

特征(Feature)

    相似问题模型使用的特征可以分为三类:
    (i)基于q的特征;
    (ii)基于相似问题Q0集的特征;
    (iii)基于澄清问题CQ0集的特征。
    具体可见下表。

实验结果

    unclear问题检测结果
    在实际社区网上的模型效果    本文模型和BoW LR分类器对比

Double Kill

TILE: DiffQue: Estimating Relative Difficulty of Questions in Community Question Answering Services.
Contributor : Amazon私人有限公司(印度)
Paper: https://arxiv.org/pdf/1906.00145v1.pdf
Code: https://github.com/LCS2-IIITD/DiffQue-TIST

文章摘要

    在社区问答服务中,一对问题相对难度的自动估计是一个重要而又具有挑战性的问题。针对这个问题,提出了一个新的系统DiffQue,它将这个问题映射到一个基于网络辅助的边缘方向性预测问题上。首先构建了一个新颖的网络结构,用于捕捉问题对之间的不同;然后,通过预测网络中连接这两个问题的(虚拟)边缘方向来测量两个问题的相对难度。它利用了网络结构的特征提取、用户/帖子的元数据和问答的文本描述。对来自两个CQA站点(进一步分为四个数据集)的数据集进行测试,与最佳基线相比,DiffQue的性能显著优于四种最先进的方法(F1得分高28.77%,AUC高28.72%)。除此之外与其他基线不同,(i) DiffQue能够对训练噪声做出适当的响应,(ii) DiffQue能够适应多个领域(CQA数据集),(iii) DiffQue能够有效地处理由于新发布的问题或新到达的用户缺乏信息而可能出现的“冷启动”问题。

本文四大看点

    1、提出了一种利用CQA服务中可用的用户交互和时间信息来构建网络的新方法。该网络根据难易程度对问题进行相对排序;
    2、我们将问题的相对难度估计问题映射到边缘定向预测问题,据我们所知,这是此类问题的首次尝试。我们提出的方法利用了CQA服务的三个基本属性——用户信息、时间信息和文本内容;
    3、DiffQue被证明是最好方法——它在精确度上不仅比其他基线好,而且也能对训练噪音和冷启动问题做出适当的反应。;
    4、我们生成了大量的CQA数据集,并根据困难程度手工标注了问题对,为研究界提供了可用的数据资源。

本文模型方法介绍

    下图显示了如何在不同场景中使用DiffQue:(a)问题路由:为了节省相应用户的时间和速度,专家会遇到更严格的问题而不是业余爱好者; (b)激励机制:如果用户回答了更棘手的问题,他应该在系统中的声誉方面获得更多激励。
    DiffQue模型首先将给定的cqa数据映射到一个有向和纵向的5个网络,其中每个节点对应一个问题,并且从一个问题指向另一个问题的边缘表示,后一个问题比前一个问题更难。一旦网络构造完成,DiffQue将训练一个边缘在给定网络上的方向预测模型,并预测连接两个给定问题的虚拟边缘的方向性。 DiffQue的架构示意图 如下所示
网络构建
    DiffQue将整个数据集建模为有向和纵向网络 G = V E G=(V,E) ,其中V表示一组顶点,每个顶点对应一个队列;E是一组边。每个边可以是下面提到的三种类型之一 。
    类型一: 某一主题的专家不会在CQA网站上发布琐碎的问题,而且他/她会回答那些他/她有专长的问题。我们在假设1中捕捉到这两个概念。** 假设1:** 如果鲍勃正确回答了罗宾在某个话题上提出的问题Q,那么鲍勃稍后在该话题上提出的问题将被认为比Q更困难。
    类型二: 值得注意的是,类型1的边缘只假设Bob的问题很难处理,稍后将发布。这并没有考虑到鲍勃的当前所有问题(最近在过去发表在同一主题上)可能比罗宾的当前问题困难,即使前一个问题可能比后一个问题稍早发表。我们在假设中捕获这个概念2。假设2: 如果Bob正确地回答了与主题相关的问题,那么Bob最近发布的关于主题的问题将比Q更困难。
    类型三: 我们进一步考虑了单个用户在某个主题超时时发布的问题,并提出假设3。 假设3: 随着时间的推移,用户对某个主题的专业知识将不断增加,因此他/她将来会提出的与该主题相关的问题将变得越来越困难。

实验结果

    四种不同数据集的准确性结果(以f1和auc计)
    基线性能对比

    随着SO3数据集上(a)噪声1和(b)噪声2的增加,diffque、rcm和trueskill的准确度(F1分数由最大值归一化)发生变化。
    不同训练和测试集组合的DiffQue 的F1得分

ACED

Attention

更多自然语言处理相关知识,还请关注AINLPer公众号,极品干货即刻送达。

发布了43 篇原创文章 · 获赞 3 · 访问量 3820

猜你喜欢

转载自blog.csdn.net/yinizhilianlove/article/details/100087995