Modeling Random Guessing and Task Difficulty for Truth Inference in Crowdsourcing

  • 作者
  • 1 摘要
  • 2 我们的方法
    • 2.1 答案建模
    • 2.2 表述
    • 2.3 推断
  • 3 实验
  • 4 结论
  • 参考文献

作者

Yi Yang Auckland University of Technology Auckland, New Zealand yi.yang@aut.ac.nz
Quan Bai University of Tasmania Hobart, Australia quan.bai@utas.edu.au
Qing Liu Data61, CSIRO Hobart, Australia q.liu@data61.csiro.au

1 摘要

本文讨论了众包应用中真值推断的挑战。我们提出了一种将任务难度、工人能力和猜测行为联合建模的生成式方法来估计众包任务的真实性,从而使工人的能力和任务的真值得到更准确的估计。实验结果表明,与现有的方法相比,本文提出的方法能更有效地估计众包任务的真值。

关键词:众包,真值推理

在一个众包平台中,例如Amazon Mechanical Turk 1,请求者可以发布她的任务并从众包工人那里获得答案。由于工人的专业技能和能力不同,对同一任务收集到的答案通常是相互冲突的。因此,众包的一个重要任务就是解决众包工人给出的答案之间的冲突,发现每个任务的真实答案(真值)。直觉上,我们应该相信高能力员工的回答。然而,工人的能力和任务的真值通常是先验未知的。因此,真理推断[2,3,5,8,10-12]出现并通过联合估计工人的能力和任务的真值来解决这个问题。

在本文中,我们考虑了众包应用中两个重要的现象来进行众包真值推断。(1) 众包任务的难度通常不同。一个能经常正确回答简单问题的员工,并不意味着她对困难问题的回答也值得信赖。因此,通过对任务难度的建模和估计,可以提高真值推断的性能[6,7,9,13]。(2) 众包任务大多是多选任务,即每个任务有K个互斥选择,只有一个真实答案。由于众包应用程序中的工人是人,当一个工人不知道任务的真实答案时,她可以选择猜测并提交一个随机答案。

我们的贡献. 基于上述两个现象,我们提出了一种新的方法,即众包真值发现模型猜测和任务难度(Crowdsourced Truth Discovery modeling Guessing and task Difficulty,CTDGD),该方法通过对任务难度、工人能力和猜测行为的联合建模来推断多选任务的真值。具体地说,在概率生成模型中,工人的能力和答案以及任务的真实答案和难度被建模为随机变量。工人的能力和任务的真实答案和难度共同决定了工人是否知道任务的真实答案。如果工人不知道真相,她会从可用的选项中提交一个猜测的答案。通过模拟猜测,可以在不高估的情况下估计工人的能力。通过对任务难度的建模,可以更准确地估计困难任务的真实性。实验已经在真实世界的数据集上进行,并证明CTDGD优于现有的众包真值推断方法。

2 我们的方法

在本节中,我们将介绍CTDGD。

2.1 答案建模

假设有mmm个工人{wi}i=0m−1\{w_i\}^{m−1}_{i=0}{wi​}i=0m−1​,nnn个任务{tj}j=0n−1\{t_j\}^{n−1}_{j=0}{tj​}j=0n−1​。每个任务都有KKK个互斥选择,索引从111到KKK。每个工人wiw_iwi​可以选择一个选择作为任务的tjt_jtj​的答案xijx_{ij}xij​。真值推断的目的是从所观察到的答案{xij}\{x_{ij}\}{xij​}中找到中每个任务{tj}\{t_j\}{tj​}的真答案{zj}\{z_j\}{zj​}。同时,所提出的CTDGD输出估计的工人能力{ai}\{a_i\}{ai​}和任务难度{dj}\{d_j\}{dj​}。

我们将每个工人的能力aia_iai​和每个任务的难度djd_jdj​建模为取自(-∞,+∞)的实数。利用logistic函数,工人知道tjt_jtj​的真实答案的概率ϕij\phi_{ij}ϕij​为
ϕij=σ(ai−dj)=11+exp(−(ai−dj))(1)\phi_{ij}=\sigma(a_i-d_j)=\frac{1}{1+exp(-(a_i-d_j))}\tag{1}ϕij​=σ(ai​−dj​)=1+exp(−(ai​−dj​))1​(1)

其中σ\sigmaσ是logistic函数。从方程式(1)我们可以看出,如果(ai−dj)(a_i-d_j)(ai​−dj​)较大,工人知道tjt_jtj​真相的概率很高。因此,如果一个工人的能力比任务的难度小,那么她更可能对简单的任务给出一个真实的答案,而对一个困难的任务则不太可能正确回答。

如果工人不知道真相,她可以猜测并提交一个随机选择作为她的答案。因此,观察到的答案xij{x_{ij}}xij​的概率为真值zjz_jzj​是:

p(xij=k∣zj=k,dj,ai)=ϕij+(1−ϕij)1K(2)p(x_{ij}=k|z_j=k,d_j,a_i)=\phi_{ij}+(1-\phi_{ij})\frac{1}{K}\tag{2}p(xij​=k∣zj​=k,dj​,ai​)=ϕij​+(1−ϕij​)K1​(2)

我们使用“一枚硬币模型”[13]来模拟工人提交错误答案的情况。因此,对于所有k′≠kk'\neq kk′​=k,观察到的答案xijx_{ij}xij​错误的概率是:

p(xij=k′∣zj=k,dj,ai)=(1−ϕij)1K(3)p(x_{ij}=k'|z_j=k,d_j,a_i)=(1-\phi_{ij})\frac{1}{K}\tag{3}p(xij​=k′∣zj​=k,dj​,ai​)=(1−ϕij​)K1​(3)

结合方程式(2)和(3),被观察工人回答的条件概率为:

p(xij∣zj=k,dj,ai)=(ϕij+(1−ϕij)1K)δij((1−ϕij)1K)1−δij(4)p(x_{ij}|z_j=k,d_j,a_i)=(\phi_{ij}+(1-\phi_{ij})\frac{1}{K})^{\delta_{ij}}((1-\phi_{ij})\frac{1}{K})^{1-\delta_{ij}}\tag{4}p(xij​∣zj​=k,dj​,ai​)=(ϕij​+(1−ϕij​)K1​)δij​((1−ϕij​)K1​)1−δij​(4)

其中δij\delta_{ij}δij​表示克罗内克(Kronecker delta)函数。

2.2 表述

CTDGD是一个生成模型。工人的能力aia_iai​,任务的难度djd_jdj​和真值zjz_jzj​和工人的答案xijx_{ij}xij​被建模为随机变量。这些随机变量之间的关系如图1所示。每个随机变量的生成过程如下所述。


图1:图形模型

真实的答案来自一个范畴分布:p(zj)=Cat(K,α)p(z_j)=Cat(K,α)p(zj​)=Cat(K,α)。工人的答案由一个范畴分布产生,概率质量函数在等式(4)中定义。djd_jdj​由正态分布产生:p(dj)=N(μj,σj2)p(d_j)=N(\mu_j,\sigma^2_j)p(dj​)=N(μj​,σj2​)。工人的能力由正态分布产生:p(ai)=N(μi,σi2)p(a_i)=N(\mu_i,\sigma^2_i)p(ai​)=N(μi​,σi2​)。ααα、μj\mu_jμj​,σj2\sigma^2_jσj2​,μi\mu_iμi​和σi2\sigma^2_iσi2​是超参数。

2.3 推断

我们使用期望最大化(EM)算法来估计{zj}\{z_j\}{zj​}、{dj}\{d_j\}{dj​}和{ai}\{a_i\}{ai​}的最优值。具体地,我们将真答案Z={zj}Z= \{z_j\}Z={zj​}作为潜变量,Θ={dj}∩{ai}\Theta=\{d_j\}\cap\{a_i\}Θ={dj​}∩{ai​}作为模型参数,并且X={xij}X=\{x_{ij}\}X={xij​}作为观测值。似然函数在方程(5)中表示。

L(Θ;X,Z)=p(X,Z∣Θ)=∏j(p(zj)∏ip(xij∣zj,dj,ai))(5)L(\Theta;X,Z)=p(X,Z|\Theta)=\prod_j(p(z_j)\prod_i p(x_{ij}|z_j,d_j,a_i))\tag{5}L(Θ;X,Z)=p(X,Z∣Θ)=j∏​(p(zj​)i∏​p(xij​∣zj​,dj​,ai​))(5)

EM算法通过迭代执行E-步骤和M-步骤找到LLL的最大似然值和ZZZ和Θ\ThetaΘ的最优值。在E-步骤中,我们计算pjk(t)p^{(t)}_{jk}pjk(t)​,其定义为当前ttt迭代下的条件概率p(zj=k∣Θ(t),X)p(z_j=k|\Theta^{(t)},X)p(zj​=k∣Θ(t),X):

pjk(t)=p(zj=k)∏ip{xij∣zj=k,dj,ai}∑k′=1Kp(zj=k′)∏ip(xij∣zj=k′,dj,ai)(6)p^{(t)}_{jk}=\frac{p(z_j=k)\prod_i p\{x_{ij}|z_j=k,d_j,a_i\}}{\sum_{k'=1}^Kp(z_j=k')\prod_i p(x_{ij}|z_j=k',d_j,a_i)}\tag{6}pjk(t)​=∑k′=1K​p(zj​=k′)∏i​p(xij​∣zj​=k′,dj​,ai​)p(zj​=k)∏i​p{xij​∣zj​=k,dj​,ai​}​(6)

在M-步骤中,我们通过最大化辅助函数Q(Θ∣Θ(t))=EZ∣Θ(t),X[ln⁡L(Θ;X,Z)]Q(\Theta|\Theta^{(t)})=E_{Z|\Theta^{(t)},X}[\ln{L(\Theta;X,Z)}]Q(Θ∣Θ(t))=EZ∣Θ(t),X​[lnL(Θ;X,Z)]来重新估计下一次t+1t+1t+1迭代的模型参数Θ\ThetaΘ。没有直接计算aia_iai​和djd_jdj​来最大化QQQ的封闭形式,因此我们采用梯度上升法来最大化QQQ,QQQ的梯度可以通过QQQ相对于aia_iai​和djd_jdj​的微分来构造:

∂Q∂ai=∑j∑k=1Kpjk(t)[δijK(K−1)+1ϕij−ϕij](7)\frac{\partial Q}{\partial a_i}=\sum_j \sum_{k=1}^K p^{(t)}_{jk}[\delta_{ij}\frac{K}{(K-1)+\frac{1}{\phi_{ij}}}-\phi_{ij}]\tag{7}∂ai​∂Q​=j∑​k=1∑K​pjk(t)​[δij​(K−1)+ϕij​1​K​−ϕij​](7)

∂Q∂dj=∑i∑k=1Kpjk(t)[δijK(K−1)+1ϕij−ϕij](8)\frac{\partial Q}{\partial d_j}=\sum_i \sum_{k=1}^K p^{(t)}_{jk}[\delta_{ij}\frac{K}{(K-1)+\frac{1}{\phi_{ij}}}-\phi_{ij}]\tag{8}∂dj​∂Q​=i∑​k=1∑K​pjk(t)​[δij​(K−1)+ϕij​1​K​−ϕij​](8)

在上述推导条件下,EM算法迭代进行E-步骤和M-步骤直到收敛。在EM算法终止后,我们可以用上一次迭代中的参数来估计工人的能力和任务的难度。同时,我们可以通过选择pjk(t)p^{(t)}_{jk}pjk(t)​中概率最高的第k个选择来计算估计真值zj^\hat{z_j}zj​^​,即zj^=arg⁡max⁡kpjk(t)\hat{z_j}=\arg\max_k{p^{(t)}_{jk}}zj​^​=argmaxk​pjk(t)​。

3 实验

我们在真实世界的数据集Game[1]上进行了实验,以比较CTDGD与最先进的真值推断方法。游戏数据集包含1908个独特的问题,有12个难度等级。37332名工人回答了1891个问题,回答了214.658个问题。成绩是衡量准确度的,准确度是正确推断出的问题数除以问题总数的百分比。

由于篇幅的限制,我们将问题分为简单、中等和困难三类,结果如表1所示。我们在括号中列出每一级的问题数。从表1可以看出,CTDGD的整体性能最好。对于简单的任务,我们可以看到所有的方法都有很高的准确率,即使是多数投票也可以达到90%以上的准确率。但对于中、难任务,所有方法的准确率都低于90%。这是因为许多工人不能正确回答难题。在所有的方法中,CTDGD在偏难任务上的性能最好,这表明CTDGD通过对任务难度和工人的猜测行为进行联合建模的优越性。


表1:实验结果

4 结论

在本文中,我们提出了众包真值发现模型猜测和任务难度(CTDGD),它将任务难度、工人的猜测行为和对任务真值的估计能力联合建模。在真实世界数据集上的实验表明,CTDGD比最先进的真值发现方法更有效地估计众包任务的真实性,特别是在任务困难的情况下。

参考文献

[1] Bahadir Ismail Aydin, Yavuz Selim Yilmaz, and Murat Demirbas. 2017. A crowdsourced “Who wants to be a millionaire?” player. Concurrency and Computation: Practice and Experience (2017), e4168.

[2] Alexander Philip Dawid and Allan M Skene. 1979. Maximum likelihood estimation of observer error-rates using the EM algorithm. Applied statistics (1979), 20–28.

[3] Gianluca Demartini, Djellel Eddine Difallah, and Philippe Cudré-Mauroux. 2012. ZenCrowd: leveraging probabilistic reasoning and crowdsourcing techniques for large-scale entity linking. In Proceedings of the 21st international conference on World Wide Web. ACM, 469–478.

[4] Alban Galland, Serge Abiteboul, Amélie Marian, and Pierre Senellart. 2010. Corroborating information from disagreeing views. In Proceedings of the third ACM international conference on Web search and data mining. ACM, 131–140.

[5] Qi Li, Yaliang Li, Jing Gao, Bo Zhao, Wei Fan, and Jiawei Han. 2014. Resolving conflicts in heterogeneous data by truth discovery and source reliability estimation. In Proceedings of the 2014 ACM SIGMOD international conference on Management of data. ACM, 1187–1198.

[6] Fenglong Ma, Yaliang Li, Qi Li, Minghui Qiu, Jing Gao, Shi Zhi, Lu Su, Bo Zhao, Heng Ji, and Jiawei Han. 2015. Faitcrowd: Fine grained truth discovery for crowdsourced data aggregation. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 745–754.

[7] Jermaine Marshall, Munira Syed, and Dong Wang. 2016. Hardness-aware truth discovery in social sensing applications. In Distributed Computing in Sensor Systems (DCOSS), 2016 International Conference on. IEEE, 143–152.

[8] Vikas C Raykar, Shipeng Yu, Linda H Zhao, Gerardo Hermosillo Valadez, Charles Florin, Luca Bogoni, and Linda Moy. 2010. Learning from crowds. Journal of Machine Learning Research 11, Apr (2010), 1297–1322.

[9] Jacob Whitehill, Ting-fan Wu, Jacob Bergsma, Javier R Movellan, and Paul L Ruvolo. 2009. Whose vote should count more: Optimal integration of labels from labelers of unknown expertise. In Advances in neural information processing systems. 2035–2043.

[10] Yi Yang, Quan Bai, and Qing Liu. 2018. On the Discovery of Continuous Truth: A Semi-supervised Approach with Partial Ground Truths. In International Conference on Web Information Systems Engineering. Springer, 424–438.

[11] Yi Yang, Quan Bai, and Qing Liu. 2019. A probabilistic model for truth discovery with object correlations. Knowledge-Based Systems 165 (2019), 360–373.

[12] Xiaoxin Yin, Jiawei Han, and S Yu Philip. 2008. Truth discovery with multiple conflicting information providers on the web. IEEE Transactions on Knowledge and Data Engineering 20, 6 (2008), 796–808.

[13] Yudian Zheng, Guoliang Li, Yuanbing Li, Caihua Shan, and Reynold Cheng. 2017. Truth inference in crowdsourcing: Is the problem solved? Proceedings of the VLDB Endowment 10, 5 (2017), 541–552.

众包中真值推断的随机猜测和任务难度建模相关推荐

  1. CCAI 2017 演讲实录 | 周登勇:众包中的统计推断与激励机制

    美国微软雷德蒙研究院首席研究员周登勇 7 月 22 - 23 日,在中国科学技术协会.中国科学院的指导下,由中国人工智能学会.阿里巴巴集团 & 蚂蚁金服主办,CSDN.中国科学院自动化研究所承 ...

  2. 读后感和机翻《他们在看哪里,为什么看?在复杂的任务中共同推断人类的注意力和意图》

    以下是研究朱松纯FPICU概念中I(intent)的相关论文记录: 读后感: 作者干了什么事? 算法可以从视频中预估人类的注意力位置和意图. 怎么实现的? 提出了一个人-注意力-对象(HAO)图来联合 ...

  3. python随机产生100个整数二进制_PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。...

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  4. 纵向联邦线性模型在线推理过程中成员推断攻击的隐私保护研究

    纵向联邦线性模型在线推理过程中成员推断攻击的隐私保护研究 尹虹舒, 周旭华, 周文君 中国电信股份有限公司研究院安全技术研究所,上海 201315 摘要:随着大数据的发展以及数据安全相关法规的出台,人 ...

  5. ICDE-2020 论文简析:空间众包中的预测任务分配 : 一种数据驱动的方法 Predictive Task Assignment in Spatial Crowdsourcing

    ICDE-2020 论文简析:空间众包中的预测任务分配:一种数据驱动的方法 Predictive Task Assignment in Spatial Crowdsourcing: A Data-dr ...

  6. ICDE-2020 论文简析:依赖感知空间众包中的任务分配 - Task Allocation in Dependency-aware Spatial Crowdsourcing

    ICDE-2020 论文简析:依赖感知空间众包中的任务分配 - Task Allocation in Dependency-aware Spatial Crowdsourcing 研究背景 研究目标 ...

  7. python让用户输入一个整数_PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。...

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  8. 在C#中怎样推断线程当前所处的状态

    在C#中怎样推断线程当前所处的状态 老帅    在C#中.线程对象Thread使用ThreadState属性指示线程状态.它是带Flags特性的枚举类型对象.    ThreadState 为线程定义 ...

  9. Computer Science Theory for the Information Age-3: 高维空间中的高斯分布和随机投影

    Computer Science Theory for the Information Age-3: 高维空间中的高斯分布和随机投影 高维空间中的高斯分布和随机投影 (一)在高维球体表面产生均匀分布点 ...

  10. Boost:GPU上的2D图像中绘制最终的随机“walk”,并使用OpenCV进行显示

    Boost:GPU上的2D图像中绘制最终的随机"walk",并使用OpenCV进行显示 实现功能 C++实现代码 实现功能 Boost的compute模块,Boost:GPU上的2 ...

最新文章

  1. Python 字典(Dictionary) get()方法
  2. flutter 导航页面转换动画效果
  3. (最新合集)计算机网络谢希仁第七版 第一章课后答案
  4. 为什么选择angular?-学习笔记
  5. java.util.Date和java.sql.Date 一点区别
  6. 查看进程占用,并kill掉
  7. 帮助您快速开始下一个移动APP应用模板、UI设计
  8. 智能汽车产业148页深度研究报告:汽车智能开启,拥抱产业变革.pdf(附下载链接)...
  9. 忘记VSS admin密码了
  10. Fundamentals of speech signal processing
  11. PHP字符串作为字节数组,哈希hash然后base64编码
  12. 王者荣耀空白代码_在线空白昵称代码复制
  13. 气象报告是什么计算机领域,计算机辅助翻译系统在亚运气象服务方面的应用报告...
  14. Linux源码编译即黑客帝国屏保cmatrix安装
  15. 利用QGIS提取天地图矢量底图中的建筑模型边界线
  16. SketchUp 更新插件,不用重启让更新生效
  17. PreparedStatement 用法
  18. C语言实现英文句子单词提取并分离
  19. Golang:后台管理系统Revel搭建教程
  20. 色盲悖论_关于被色盲

热门文章

  1. SEO工具:免费快速排名软件大全!
  2. 2020.7.25 PAT甲级7-2 The Judger (25分)
  3. 基于JSP的美食论坛系统毕业设计
  4. 关于java的文件操作
  5. C++ 排列组合问题
  6. python 读取网络位置的文件
  7. javascript引入方式:嵌入式,外链式,行内式
  8. Vue学习之旅----vuex不同组件间数据共享-状态一致
  9. 【毕业设计】基于单片机的心率血氧健康监测手表 - 物联网 嵌入式
  10. 基于.Net Core3.1 与signalR实现一个即时通讯工具(一)