计算机领域有哪些常见的比赛

公众号关注 “五分钟学算法”
设为 “星标”,每天带你学算法

计算机领域有哪些常见的比赛

入了计算机这一行,写代码便是我们安身立命的本领,夜以继日勤学苦练,希望早日成为编程高手。


和其他行业相比,计算机领域的实验成本是比较低的,毕竟,我们程序员的练习,通常是在电脑上敲击下一行行代码,然后执行查看结果。而很多行业,是需要真真切切的进入实际工作环境,加以学习实操。例如,医学生想要积攒经验,需要和真正的病人打交道;土木建筑行业的同学,学校都会安排亲自去工地体验一番,感受一下面向黄土背朝天的辛劳。


相对低廉的实验成本,就促进了行业的快速发展,同时的,也为比赛的开展提供了很好的土壤。每年,计算机领域的各类赛事层出不穷,年景好的时候,奖金数目也是让人瞠目咋舌。


这些比赛大多数是由企业和科研机构举办的,企业是想通过赛事,提高在学生群体中的知名度,希望能将优秀学生招揽进来。科研机构举办比赛,多了一些公益的味道,会提供一些机构内部的数据集,让学生们能够有机会接触到前沿的科学研究,促进行业的发展。


虽然同属一个领域,细分一下的话,赛事还是有所区别的。基本属于两大类:经典算法比赛,数据挖掘及 AI 比赛。



经典算法比赛


所谓经典算法,我们从事计算机领域的,基本都是从数据结构学起的,经典算法注重程序的执行效率、时间和空间复杂度。这一类的比赛最为出名的是 ACM-ICPC 竞赛。由于我自己也参与其中一段时间,这里会着重介绍一下。


这是由国际计算机协会举办的国际大学生程序设计竞赛。在求职的时候,我们可能会发现,有些面向学生的招聘需求上,可能会加上一条:有论文或 ACM 比赛获奖经历者优先。这不是个例,说明很多企业认同了 ACM 选手的实力,从侧面表明了这个比赛的重要性。


简单科普一下,准备面试时我们或多或少会做一点 Leetcode 上的题目,其中等级分为容易题、中等题和难题三种程度。但通常来说,Leetcode 上的难题才是 ACM 比赛的入门题。该比赛的形式,是一支人数为 3 人的队伍,在 5 个小时的时间里,去解决若干道编程题目。最终的成绩与尝试提交次数、解题数目、解题时间密切相关。这种比赛,极其考验队友之间的沟通、协作能力。


像打怪升级一样,比赛通常分为网络赛,区域现场赛,和全球总决赛。通过网络赛,可以拿到区域赛的名额,区域赛中前三名的队伍,才有较大概率能够进入全球总决赛。


由于能够进入全球总决赛的人太少了,区域赛的成绩就已经被很多企业关注了。通常会有金牌奖,银牌奖和铜牌奖。铜牌选手一般受不到太多关注,银牌及以上就能够为面试提供加分项了,能够在保研、找工作中受到青睐。


除了 ACM-ICPC 比赛之外,在经典算法领域的赛事,国外比较知名的还有谷歌每年举办的 Google Code Jam,简称 GCJ;Facebook 举办的 hackercup,还有 Topcoder 举办的 TCO 比赛。国内也有类似的比赛,百度每年举办的百度之星,微软举办的编程之美。


华为每年都会举办一个全国性的软件精英挑战赛,我参加过一次,题目的类型比较偏资源预测和规划,我有点做不动,感兴趣可以看看。



数据挖掘及 AI 比赛


近几年,是幸运也是不幸,在沉寂了很久之后,AI 又被炒得火热,有些时候,特别火不一定是好事,毕竟慢工出细活。但不管怎么说,这一波发展,的确大大促进了整体数据挖掘比赛、AI比赛的数目和水平。


以前也有数据挖掘比赛,但通常数量少、数据规模小,有点像学生之间的小打小闹,大家都不怎么当回事。但现在的比赛,往往会发现,哇,怎么奖金这么高,总额超过百万了。不要觉得夸张,百万奖金比赛每年都有。哇,怎么数据这么大,几十个 G,乌龟网速得下载个几天。当然,也不是所有的比赛数据都这么大,数据挖掘和视觉类的数据通常比文本类数据要大。


这些比赛,我是很推荐去做的,因为它的确能够给我们带来很多好处。


首先,不管能不能获奖,只看数据本身,它们是机构或者企业辛辛苦苦整理出来的真实、宝贵的数据,平时我们是不可能有机会接触到的。这个时代,数据真的很贵。在比赛中,我见过淘宝、京东、知乎、腾讯真实的数据,虽然已经脱敏处理过,但价值还是非常高的。


其次,如果通过一番努力获奖了,首先能够得到出题方的青睐,一些出题公司给出直通终面的福利。我总觉得,一线互联网大厂的面试少了几道关,算是一件幸福的事情。


常见的数据挖掘比赛平台和赛事有:


Kaggle 比赛平台,上面有很多赛事,也有很多前人的参赛经验、代码分享,对新手十分友好。


天池比赛平台,这是阿里云旗下的大数据平台,经常举办各类数据挖掘赛事,获奖还是挺有分量的。


AI Challenger,是李开复牵头组织的赛事平台,已经举办了几届,赛题和数据的质量都非常硬核,可惜 2019 年没有再办了。对了,2018 年的奖金总额有三百万之巨,十分诱人,希望今年可以重新启动。


DataFountain,每年举办拥有多个赛道的百万奖金赛事 CCF-BDCI,之前我在这里开启了人生第一个比赛。


腾讯广告算法大赛,腾讯官方提供了很多广告点击的数据,奖金丰厚,水平挺高。


之江杯,之江实验室每年举办的比赛,奖金还是挺多的。


KDD-CUP,每年由 ACM 的数据挖掘及知识发现专委会主办的数据挖掘研究领域的国际顶级赛事。


DataCastle,注重大数据和人工智能的竞赛平台,成立于 2016 年。


FlyAI,提供 GPU 训练资源的 AI 竞赛平台。


工业大数据产业创新平台,赛题和工业的真实业务结合的更为紧密一些。


JDDC,京东举办的和多伦对话系统相关的比赛。


CTF,神秘的网络安全大赛。


暂且列举这么多,其他的竞赛平台也有不少,类型与这些基本相同,就不赘述了。



结语


以前很多比赛的参赛群体主要是学生,但近些年,由于赛题质量的升级,奖金的提高,也吸引了很多互联网工作者前来同台竞技。比赛的难度和有趣程度,同步提升。如果想要多一些锻炼机会,和同龄人进行技术交流,提升自己的实习,参加比赛,对我们来说,不失为一个好的选择。


END



计算机领域有哪些常见的比赛

● 一文学会「回溯搜索算法」解题技巧

● 如何利用寒假的时间来准备2020年的蓝桥杯?

● 一片面包,带你理解洗手的重要性

数据结构和算法学习指南


计算机领域有哪些常见的比赛


点“在看你懂得 

计算机领域有哪些常见的比赛

原文始发于微信公众号(五分钟学算法):计算机领域有哪些常见的比赛

本文由 程序员小吴 创作,采用 CC BY 3.0 CN协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在先添加作者公众号二维码。
五分钟学算法 » 计算机领域有哪些常见的比赛

我还会在以下平台发布内容

GitHub 哔哩哔哩