本文主以一场数据挖掘比赛为例,从几个点来评价数据挖掘比赛的优劣。顺便总结下数据挖掘比赛中需要注意的地方,从出题步骤到最终的比赛评测。
1. 找准办比赛的目标
几年来随着数据挖掘比赛的风潮,很多互联网公司都办起了比赛。但很多公司在办比比赛之前并没有考虑到自己举办比赛的目的,而只是更风凑热闹。这种方式举办的比赛,自然质量不高,企业自身不重视。
总体说来,企业举办数据挖掘比赛,无外乎以下几个目标:
- 用比赛来宣传自己公司,宣称公司的技术;
- 用比赛来吸引专项人才,打造公司形象;
- 更具上级领导思想,或者被安排举办比赛;
上述的第三条其实在国内还是比较常见,比如在一些政府或者教育相关组织的比赛,被领导安排来做一场比赛。
2. 找准比赛的题目和立意
一个比赛注重要的就是比赛的立意,所以一个比赛的背景和所提供的数据也是要相符合的。其次比赛的题目最好与举办方公司内部需要解决的业务问题相符合,是举办方需要解决的问题,或者急需解决的问题。
国内的数据挖掘比赛,其实进一步可细分为算法比赛和创意创业比赛。前者算法赛题可以通过具体的评价指标来评价,而后者则难以定量评价。所以在比赛出题阶段,就需要找准比赛的立意和目的,且找到一个合适的评价标准。
3. 比赛数据和评价指标
数据挖掘比赛,核心就是数据。而对于一个合格的数据挖掘比赛,赛题数据又需要从各个方面进行考量:
- 数据是否公开:数据是非常宝贵和具有商业机密的,举办方应该考虑如何选择比赛数据;
- 数据字段是否匿名:数据字段是够包含敏感信息,是否需要匿名处理;
- 数据是否规整:赛题数据是够完备,是否存在缺失情况;数据是否规整,是否还需要选手进行清洗;
- 数据标签是否完备:数据训练标签是否完备,是否需要选手进行标注等;
- 数据量是否足够大:数据量是否足够满足数据挖掘的要求;
4. 明确比赛规则
比赛既然是比赛,就需要考虑如何进行评价,也应该明确一些比赛规则。
- 评价指标:在进行比赛立意和准备工程中,就需要考虑如何来设计评价指标。评价指标也应该和具体的赛题目标进行符合,例如分类问题可以使用分类正确率或者信息熵,二分类问题可以使用AUC或KS指标,回归问题可以用均方差等。评价指标应该具体明确,最好可以量化可解释;
- 数据规则:比赛在数据使用上应该考虑,比赛数据是否可分享、是否允许使用外部数据(模型)等;
- 初赛和复赛:一般的比赛可分为初赛和复赛两个阶段,并通过最终的复赛来决定最终的排名。但在这两个阶段需要注意的是,不要轻易改变比赛的评价指标,也不要轻易改变数据的整体分布,同时也要明确最终的排名的规则;
5. 简化交流机制
比赛在举办工程中,选手肯定会对比赛的数据和规则等存在很多疑问,这就需要举办方进行答疑。所以在准备比赛过程中,竟可能提前把选手会遇到的问题想清楚,通过注意事项等方式进行表达告知,通过比赛规则提前明确提高的方式(包含如何提交、提交的格式)和合并队伍的方法。
现在在国内外存在很多数据挖掘平台,举办方可以选择与这些平台进行合作,可以得到更多曝光度和推广。而且此类比赛平台有历史举办比赛的经验,可以协助更好进行比赛。但此时需要注意的是,如果和此类平台合作,则需要明确双方具体的责任,和具体应急相应的流程,以免耽误比赛进度。