大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动

先说掉名次
【大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动】 比赛的一开始就有人教大家怎么probing leaderboard,如果用那些被探测到的数据,自然就很容易在LB混到好名次,所以比赛完了自然要掉名次。其次跟19%,81%没啥关系,照说本来就该用local CV的,去过拟合public board的只能说根本还没入门机器学习。
再说涨名次
这主要是数据太小,很多 minor patterns机器学习方法也分辨不出是outlier 还是真的有用的feature,所以结果大部分人的结果就是3~4个cluster

大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动


其次用r2_score对outlier 太敏感了,一个outlier能不能预测到意味着0.001的差距,而第一名和第两百名也就差3个0.001,而通过调整一个simple xgboost模型的random seed就有概率可能通过minor patterns预测出outlier,所以也就出现第六名狗屎运的情况。
就说我参赛的经历吧,我就发现X236=1的时候全是大数,然而总共也就只有两个样本,天知道是outlier还是有价值的pattern,像随机森林和线性模型基本都会忽略这种联系,但是gbdt这种对outlier敏感的会在某些random seed的情况下体现出这个联系的影响。
所以我在最后提交的时候选了一个最好local cv的,另外一个只改了一个数,就是对应X236=1的那个数据的值,很幸运,这一个值就让我提高了0.0011,拿个铜牌。
其实和第一名也就差三个outlier的预测,反正我觉得第一名应该用的也就是simple xgboost模型和一个lucky random seed number

■网友
比较低质量的一个比赛,本来是一个周末的data science hackathon 硬生生的持续了几个月,数据集本身可供分析,来feature engineering 的空间实在有限,代码完全不变,只变动一下random seed就能从排行榜上从第六名掉到1000+,所以可想而知即使是最后的几个winning solution 本身有多么的fragile... 不过通过这个比赛,特别是经历了排名大幅度下降的人以后会更加明白不要盲目迷恋Public LB,以及建立一个可靠的train-validate 策略来过去可靠的的local CV的重要性。。总的来说,这样的比赛,没必要投入太多精力,不用太去追究结果。。
■网友

大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动



大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动



大家怎样看待最近Kaggle的奔驰比赛最后排名严重波动


那些本以为奖金到手的,估计是要哭晕在厕所了。
public board才用19%的数据,结果一堆人过拟合到了这上面。
估计是Benz的人不太懂机器学习吧,才发生了这么严重的事故。

■网友
参加的第一个kaggle比赛,一觉醒来发现自己提高了700多名还是蛮开心的 : )


    推荐阅读