如何举办一个顶会学术比赛

1. 概述

今年我和团队成员一起组织了了ECCV上的一个学术比赛。从1.31日开始准备材料开始,到前两天(10.28日) 把奖金和奖状发给选手,活动结束,整个周期持续了近9个月,真的是出乎意料。整体流程包括Workshop Proposal编写和申请、Workshop合并(多个申请团队合并成一个Workshop),网站搭建,比赛数据和baseline准备,比赛平台搭建,比赛奖金申请,比赛宣传和选手招募、比赛论文评审、参加线上Workshop介绍比赛,奖金和证书颁发等等,第一次参与组织这种比赛,学到了挺多东西,这里记录备忘,下次参考。需要说明的是,这里的分享的都是个人观点,与我所在公司无关。

2. 时间流水线记录

这里记录整个过程中的一些关键行动和一些注意事项。

2.1. 前期准备

首先要注意,要申办Workshop或者比赛的话,涉及事务多,需要一个团队来共同来负责,而且周期长,占用时间比较多,办比赛的话还需要奖金的申请,这些都需要团队Leader的理解和支持。同时需要一些学术界有声望的教授来一起参与,这样申请通过的概率会大一些。我们组内有跟学术界的长期合作,这次也是一起申办的。另一个是比赛一般需要新的数据集,有内部的数据团队或者合作的数据公司也会更好一些,分担一些数据收集和准备的任务。
有这些条件后,还是得思考Workshop或者比赛的主题,也就是为了解决学术界还是工业界的什么核心问题,来举办这样一个比赛。这样比赛意义会更重大,参赛选手的方案也许能推进某个方向的SOTA。

确定要举办Workshop或者比赛后,就需要盘点参与人员,提前联系学术界和数据公司的合作方,通通气,确认参与意向。

2.2 撰写 Workshop Proposal

接下来就需要写 Workshop Proposal给大会,大会收到后通过申请,才可以正式举办 Workshop。

Workshop Proposal 的撰写参考大会给的要求,填写workshop主体,比赛任务描述和对应的指标描述,主办者的资料等。

2.3 嘉宾邀请

为了让Workshop Proprasl更容易通过,需要邀请一些学术界有声望的教授,作为Workshop的主席。同时还需要邀请一些人来做邀请嘉宾作报告。

2.4. 合并 Workshop

Proposal 提交上去后,主办方可能会反馈workshop申请太多,需要合并某几个workshop团队,一起举办一个workshop。这时候就需要团队一起讨论来决定了。最后我们和意大利的一个大学合办workshop,他们负责regular paper的接收和评审,我们负责challenge比赛部分。除了邮件沟通外,IM采用slack,整体使用还比较方便,双方用英文沟通。

2.5. 比赛网站构建

确定负责比赛后,我们制定了比赛的流程,包括什么时候开放队伍注册,测评服务开启,第一阶段和第二阶段,技术报告什么时候提交,workshop举办日期等。还有最重要的,奖金是多少。具体金额需要和宣传和财务部分确定。同时还有参赛者的条件,比如是否允许企业参加,是否允许公司内部人士参加等。所有这些信息都发布到比赛网站上,保证在宣传开始的时候,参赛者看到的是一个日期完整、奖金和名额分布清晰的比赛。

2.6. 比赛数据准备

数据需要按照train, validation, test 集合准备好,分validation和test是为了避免参赛者过拟合,可以在第一阶段用validation集,第二阶段用test集,筛选出啊泛化性更好的方案。

如有必要,参赛选手需要签署一份数据协议才能使用数据,协议内容可以包括选手只有数据的使用权,没有分发权等等,视你们的数据要求而定。

数据准备好后上传到网盘平台,为了保证国内外选手都可以访问,可以上传国内国外的多个平台。同时如有必要,对数据进行加密,只有签署了数据协议的人才可以解压数据,避免数据的泄漏。

2.7 参赛选手审核

参赛选手需要是研究机构的,所以我们要求报名时填写学校邮箱,注明单位信息,提交数据声明。这些信息审核通过后,回复邮件确认。

2.8. 测评服务搭建与baseline准备

比赛平台可以选择公开的平台,Kaggle,CoLab,也可以选公司的平台。因为CV顶会的比赛面向的是全球的CVer,因此尽量选择中英文都支持的平台。

平台选择后,需要部署Evaluation Server,也就是参赛者上传代码或者输出,拿到分数的服务。首先需要确定输入和输出,以及最终榜单排名的评价指标,这部分需要在比赛开始的时候就在Workshop Propoal里面写出来,这里需要用具体的代码来实现出来。具体代码测评可以用平台已有的接口,因为大平台任务很多,接口都比较成熟。

然后在比赛网站写详细的教程,指导参赛者怎么下载数据、理解数据、跑baseline、提交结果、查看榜单。最好是给出一个quick start或者可以直接跑的代码,让参赛者能完整地走完流程,提交一个baseline的结果。

2.9. 比赛宣传和选手招募

比赛建立起来后,需要对比赛进行宣传,让更多的人来加入。这时候可以发表公司或部门的公众号文章来进行宣传,同时也可以针对专门的打比赛群和网站来找专门的人来宣传,比如在xxx公众号发表一篇相关的文章,不过大号价格都毕竟贵。

另外可以让实习生或者同学、学弟学妹在学校的论坛、BBS、系里面的群、实验室的群里面进行宣传。

2.10. 选手答疑

针对选手的问题,需要及时回复,如果是有共性的问题,要在论坛上或者网站上进行通知,让所有人都知道,也避免每个人都来问一遍。

2.11. 论文评审与代码查重

比赛结束后,参赛队伍需要提交一份比赛方案介绍的Report,来描述他们的方法,同时为了避免作弊,可能还需要参赛者上传一份代码,这里就涉及到对Report的评审和代码的查重。代码查重好做,利用查重软件或者类似工具就可以,Report的评审还需要花比较多时间来做。

我认为比赛Report评审的核心是比赛方案的介绍是否清楚,包括输入输出是否符合规范,网络细节、训练测试过程、超参是否描述清楚,数值对比和ablation study是否充分等等。与常规论文不同,比赛Report的创新性的占比其实不是太高的。

评审完后需要写反馈意见,确定论文是否被接收。是否接收需要综合考虑论文的质量和比赛的排名。尽可能写一些有用的comments给作者,然后参赛者写Camera Ready版本。

如果比赛论文走大会的proceeding的话,需要提醒作者注册大会,尽早购买早鸟票,因为作者不注册的话论文不能正常发表。一般一篇论文有一个作者注册大会就可以,所以在Camera Ready版本中可以添加中了正会论文的作者进来。

2.12. 比赛名次确定

在论文评审完后,需要根据是否存在违规和论文来确定最终的名次,不符合规定的团队不参与最终的排名,由后面的队伍补上。名次确定后需要在比赛网站上公示,让所有参赛者周知。

2.13. Workshop比赛介绍与Winner Talk Host

在Workshop召开的时候,需要有一个人来做演讲介绍整个比赛,可以包括Organizers介绍,比赛背景,数据集情况,任务介绍,参与情况,以及获奖团队的介绍。这个部分的Slides组织可以参考历年CV顶会上的比赛介绍视频,学习他们做的比较好的地方。

比赛介绍完后,会议的主持人可能还会让你主持Winner Talk,所以提前准备下,介绍一下演讲团队,提一些问题,Move to next speaker等,讲完后对比赛做一个总结。

这里有一个细节,就是不需要比赛主办的所有成员都需要注册大会(注册大会费用很高),只要一个人注册,在大会网站上拿到zoom会议的链接后,可以发送给别的主办者,让他们加入zoom会议来演讲或者观看。

2.14. 奖金与证书颁发

奖金发放需要获奖者填写一张银行卡信息来收钱。这里需要保证团队的所有人都知情,避免一个队员填写自己的银行卡信息而未经别的组员同意,产生的纠纷。一些解决办法是大家签署奖金发放同意书,或者邮件抄送所有队员。

证书颁发涉及到证书制作,证书制作需要一个证书模板,可以采用Office网站上的证书模板,选择喜欢的来修改。具体内容可以搜索一下CVPR,ICCV和ECCV这些大会往年的证书图片,自己参考下,或者让公司的设计团队来制作一个。制作好后可以发送电子版,如果可以线下举办的话,制作一份纸质版颁发给参赛者。

3. 感想

3.1 举办 Workshop的意义

对于公司来说,如果能举办一个受欢迎的Workshop或者比赛,既可以宣传公司,也可以招揽一些参赛选手,同时如果比赛的方案如果能对业务中的难题有一些启发,那就更好了。
对于个人来说,参与举办Workshop绝对是一次受益颇多的经历。首先是锻炼沟通能力。此次过程中,沟通的团队包括自己团队、国内国外高校老师、合作公司、公司内部宣传部门、比赛平台部门、网盘部门、参赛选手,如何有效沟通,在规定的时间里高效地完成既定目标,如何避免突发事故,都很考验我们的沟通能力。同时是锻炼组织能力,比赛消息怎么传递给参赛者,面对参赛者的延期请求怎么处理,都是之前做research写代码没有遇到过的问题。最后还是英文的文档撰写和交流能力的提升,以及参与Workshop时对自身学术能力的提升。我觉得通过这样一次活动,对以后怎么组织类似的活动有信心了,也相信以后能组织好同样的活动。

3.2 一些经验总结

  • 决定尽早做,涉及到某些流程和方案修改的,需要尽早决定,不拖延,因为拖延意味着某些人还在按之前的方案进行,浪费了时间和精力,做了无用功
  • 信息公布尽量做到公开透明,让需要了解的各方都了解变更,因为各方的意见可能不同,或者有更好的解决办法
  • 每支队伍要设置一个固定的联络人,从始至终保持不变(特殊情况除外),并保证联络人能联系上,也就是有联络人的钉钉微信邮箱和电话,保证紧急情况下能联系上ta,由ta来进一步联络队员
  • 对于参赛者的一些请求,如延长比赛时间,需要站在大多人参赛者的角度考虑,同时避免修改后影响后续流程。实际上每个修改在某些方面都是有积极意义的,这里需要做一些符合大家利益的取舍