trec 2019 fair ranking track


    最近实验室要求参加trec 2019新出的track:fair ranking track。这里整理一下该任务的思想和要求。这次track主要为学术论文数据的排序。

1 Protocol

    会给定一个query集合Q,其中$q\in Q$。对于每个请求,会有一个query q和一个文档集合$D_q$。你需要做的就是根据q来重排序(rerank)$D_q$,重排序结果是$\pi$。最后把每一个请求都处理完返回$\pi$的集合的$\Pi$。过程如下:

Algorithm 1 Evaluation protocol


$\Pi$←{}
for q,$D_q\in Q$ do
$\pi$←SYSTEM(q,$D_q$)
$\Pi$←$\Pi+[\pi]$
end for
return $\Pi$


2 Evaluation

    衡量指标主要分为两部分,相关性(revelance)和公平性(fairness)。
    所谓相关性就是document和query的相关性,公平性主要为Author Exposure即论文作者的曝光度。
    先介绍如何衡量作者的曝光度:

2.1 Measuring Fairness

2.1.1 Measuring Author Exposure for a Single Ranking

    先为单个请求的重排序结果$\pi$计算作者的曝光度,某个作者a,在结果$\pi$的曝光度计算如下:

$$e_a^\pi=\sum^n_{i=1}[\gamma^{i-1}\Pi^{i-1}_{j=1}(1-p(s|\pi_j))]I(\pi_i\in D_a)$$

    其中$\gamma$是一个给定的常数,$\gamma^{i-1}$用于表示排序后的document从上到下逐渐衰减的重要程度。$p(s|\pi_j)$表示用户看到排序的第j篇文档停下来的概率,该track假设用户停止的概率$p(s|\pi_j)$=$f(r_d)$,$f(r_d)$是用户被满足的概率,$r_d$是document和query的相关程度,f是一个单调函数。这代表着,document与query相关度越高,用户越容易被满足,所以停下来不再阅读。
    $I(\pi_i\in D_a)$是指示函数,当第i篇文档属于作者a,该函数值为1,否则为0。$e^\pi_a$是排序$\pi$中作者a的曝光度(exposure)。
    那么在所有结果中,作者a的曝光度如下:

$$e_a=\sum_{\pi\in \Pi}e^\pi_a$$

2.1.2 Measuring Author Relevance for a Single Ranking

    上一节是衡量对于作者的曝光度,这一节主要考虑作者的相关性。什么叫作者的相关性呢,它是衡量作者论文在排序中的相关性之和,也就是对作者论文重要性的考量。

$$r^\pi_a=\sum_{d\in D_a}p(s|d)$$

    $r_a^\pi$是排序$\pi$中作者a所有文章相关性的求和。

2.1.3 Measuring Group Fairness

    上面给出了单个作者的exposure和relevance,每个作者都有从属于的group,按group累加作者的fairness以及relevance就能分别得到group的exposure和relevance。

$$\epsilon_g=\frac{\sum_{a\in A_g}e_a}{\sum_{g'\in G}\sum_{a\in A_{g'}}e_a}$$

$$R_g=\frac{\sum_{a\in A_g}r_a}{\sum_{g'\in G}\sum_{a\in A_{g'}}r_a}$$

    所谓公平,就是让不同group的$\epsilon_g$和$R_g$差距尽可能一致。

$$\Delta_g=|\epsilon_g-R_g|$$

   最后对所有group求一个Gini coefficient

$\Delta=\frac{\sum_{g,g'\in G}|\Delta_g-\Delta_{g'}|}{2|G|\sum_{g\in G}\Delta_g}$

2.2 Measuring Relevance

  前面按group计算了exposure,这一节给出相关性$u_a^\pi$的计算。和$e_a^\pi$的公式几乎一样,就是把指示函数换成$p(s|\pi_i)$。

$$u_a^\pi=\sum^n_{i=1}[\gamma^{i-1}\Pi^{i-1}_{j=1}(1-p(s|\pi_j))]p(s|\pi_i)$$

$$U=\frac{1}{\Pi}\sum_{\pi\in \Pi}u^\pi$$

2.3 Trading Off Fairness and Relevance

    按作者给的文档原话说,理论上fairness和relevance能够达到最优,但是实际操作上,可能往往提高fairness会降低relevance。所以最终要按一定比例寻求一个平衡。

trec 2019 fair ranking track的更多相关文章

  1. China International Industry Fair 2019

    Today i visit the CIIF 2019, as a "professional visitor"  since i have made an appointment ...

  2. 2019.02.14 codechef Chef at the Food Fair(线段树+泰勒展开)

    传送门 题意:现在有nnn个位置,每个位置上有一个值aia_iai​. 要求支持如下两种操作: 区间乘vvv 求区间的(1−ai)(1-a_i)(1−ai​)之积 思路: 考虑转换式子: Ans=∏i ...

  3. COSC2309/2347 Semester 1, 2019

    Mobile Application DevelopmentCOSC2309/2347 Semester 1, 2019Movie Night PlannerAssignment 1 (20 mark ...

  4. Fair Scheduler中的Delay Schedule分析

    延迟调度的主要目的是提高数据本地性(data locality),减少数据在网络中的传输.对于那些输入数据不在本地的MapTask,调度器将会延迟调度他们,而把slot分配给那些具备本地性的MapTa ...

  5. Making every developer more productive with Visual Studio 2019

    Today, in the Microsoft Connect(); 2018 keynote, Scott Guthrie announced the availability of Visual ...

  6. Ultimate Facebook Messenger for Business Guide (Feb 2019)

    Ultimate Facebook Messenger for Business Guide (Updated: Feb 2019) By Iaroslav Kudritskiy November 2 ...

  7. CSc 352 (Spring 2019): Assignment

    CSc 352 (Spring 2019): Assignment 11Due Date: 11:59PM Wed, May 1The purpose of this assignment is to ...

  8. 2019 AI CITY CHALLENGE

    官网:    https://www.aicitychallenge.org/ 基于来自交通,信号系统,基础设施和运输的传感器数据,存在使运输系统更智能的巨大机会.不幸的是,由于几个原因,进展受到限制 ...

  9. 12 Best Live Chat Software for Small Business Compared (2019) 最佳的wordpress在线聊天工具推荐插件 来帮你和潜在客户互动

    12 Best Live Chat Software for Small Business Compared (2019)     Did you know that more than 67% of ...

随机推荐

  1. 理解vue-loader

    事情的起源是被人问到,一个以.vue结尾的文件,是如何被编译然后运行在浏览器中的?突然发现,对这一块模糊的很,而且看mpvue的文档,甚至小程序之类的都是实现了自己的loader,所以十分必要抽时间去 ...

  2. Java编程思想:XML

    /* 本次实验需要在www.xom.nu上下载XOM类库 */ import nu.xom.*; import java.io.BufferedOutputStream; import java.io ...

  3. Postgresql_fdw

    Postgresql_fdw 测试环境 Ubuntu 16.04 LTS云主机2台,主机名为pg1(192.168.0.34)和pg2(192.168.0.39). 安装postgresql 下面这个 ...

  4. 【栈-例题】网页跳转-C++

    描述 蒜头君每天都在用一款名为 "蒜厂浏览器" 的软件.在这个浏览器中,一共三种操作:打开页面.回退和前进.它们的功能如下: 打开页面:在地址栏中输入网址,并跳转到网址对应的页面: ...

  5. [蓝桥杯] Fibonacci数列 入门

    原题链接 import java.util.Scanner;//导入Scanner类 public class Main { public static void main(String[] args ...

  6. python黑帽子学习笔记1:pyqt5 designer+wmi实现进程监视器

    环境说明:python3.6 所需要模块:wmi.pyqt5.pythonMagick 先放上一张成品效果图,如图所示: 界面利用pyqt5的designer实现,画好界面如下图所示: 画好后,保存好 ...

  7. windows无法执行 git reset head^版本回退操作的正确打开方式

    ^是cmd.exe的escape字符,属于特殊字符,命令里要用到文字 ^ 时必须用双引号把它夹起来,因此只要如下就可以正确执行: git reset head"^"或者git re ...

  8. js异步解决方法

    在浏览器端,耗时很长的操作都应该异步执行,避免浏览器失去响应,最好的例子就是Ajax操作.在服务器端,"异步模式"甚至是唯一的模式,因为执行环境是单线程的,如果允许同步执行所有ht ...

  9. 敏捷和DevOps:是敌是友?

    DevOps是敏捷在软件开发团队的另一应用.那么相比之下,哪个更胜一筹? 一边,有业界认可的scrum master,它的朋友极限编程者,以及由其衍生的 LeSS.SAFe.DAD等,是敏捷. 另一边 ...

  10. 【iOS】NSLog 打印 BOOL 类型值

    这个问题以前没在意,刚偶然打印,发现有些问题,上网查了下,发现是这么搞的: NSLog(@"%@", isEqual?@"YES":@"NO" ...