再论数据科学竞赛中的Data Leakage
来源:互联网 发布:网络地板 编辑:程序博客网 时间:2024/05/13 14:21
越来越多的数据爱好者把注意力放在了数据竞赛上,像Kaggle数据竞赛。这类数据竞赛中,有时会遇到Data Leakage。而大部分人对Data Leakage的概念理解都是错误的。这次,我们来梳理一下Data Leakage,希望能让大家对数据中的因果关系更加重视。
--陈晓理
数据科学竞赛中有时会出现这样的奇特景观:某只队伍,靠着对极个别feature的充分利用,立即将对手超越,成功霸占冠军位置,而且与第二名的差距远超第二名与第十名的差距。然而,这些feature却不是在因果关系上顺利解释预测值的‘因’,反而是预测值的‘果’。
1. Data Leakage定义
存在和利用这种倒‘因’为‘果’的feature的现象,叫数据竞赛中的Data Leakage。
这里的Data Leakage 跟其他场合说的数据安全数据泄漏完全不一样。从字面上理解,我们说的Data Leakage不是数据泄漏,而是因果关系的纰漏,是由于数据准备过程中出现的失误,使模型沿着有纰漏的,甚至是颠倒的因果关系进行预测,但得到极好的预测结果。
2. Data Leakage案例
Data Leakage 在数据科学竞赛中时常发生。
INFORMS 2010 Data Mining Challenge (预测患者是否有肺炎),Kaggle里面的the IJCNN 2011 Social Network Challenge (预测人们在社交网络中的关系类型),已经男性前列腺癌数据中,都存在不同程度的Data Leakage。
案例1
在男性前列腺癌数据中,有个feature叫PROSSUG,代表着这个患者是否接受过前列腺的手术,这个feature很难说是病人患前列腺癌的‘原因’(患心脏病的原因是接受过心脏手术?),而更像是一个标记,当然与病人是否患有前列腺癌极度相关。依靠着这样的feature训练出来的模型,肯定能够得到很好的预测结果,但对实际了解男性前列腺癌的成因,没有一点帮助。
Data Leakage不仅在竞赛中会发生,在实际工作中也会出现。
案例2
Chris老师就举过一个非常经典的例子。在处理电信用户流失的时候,用原有的数据集轻轻松松就可以把AUC达到0.99以上。这让人非常警惕。于是Chris老师仔细查看了一下模型和数据,原来数据中有一个权重极高的feature是“3个月内的缴费纪录”。很多流失用户的账户内,这个feature的值是0。再进一步,他跟会计核实了一下,在会计记账中,这个feature 代表的是用户已经流失后的三个月的缴费纪录,那肯定就是0了。这是典型的因果关系颠倒。
3. Data Leakage的原因
以此我们可以看出,Data Leakage 基本都是在准备数据的时候,或者数据采样的时候出了问题,误将与结果直接相关的feature纳入了数据集。这样的纰漏,比较难以发现。
这真是让人欢喜让人忧。
竞赛选手们肯定希望自己能够找到Data Leakage, 这样排名就可以大幅度提升。但对于竞赛主办方,或者实际工作中的数据科学家,则要千方百计识别Data Leakage,要不然比赛会被引入歧途,还会影响日常工作质量。
4. 必须重视因果性
我们再把讨论往前推一步:大数据,是要相关性,还是因果性?
《大数据时代》是本大毒草 —— Professor M from Computer Science in University of Michigan
数据应用学院专门组织过讨论,集中批判一本畅销书《大数据时代》。这本书的主要观点就是,在大数据时代,要放宽对因果性的要求,充分利用相关性去挖掘数据的价值。我们上面的案例分析再一次证明,这样的观点是危险的。
而且,在数据科学家的Skillset中,为什么除了计算机技能,统计分析外,还要加一个“行业知识”?这其实是要求数据科学家能够利用行业知识来判断数据模型中的因果关系是否有价值,还是落脚到因果关系上。
- 再论数据科学竞赛中的Data Leakage
- 再论数据科学竞赛中的Data Leakage
- 再论数据科学竞赛中的Data Leakage
- 命令行中的数据科学
- 《命令行中的数据科学》
- 数据科学(data science)概览
- 转:十步制胜 Kaggle 数据科学竞赛
- 数据科学—数据科学在各行各业中的差异
- 大数据竞赛中的xgboost
- 大图数据科学: 图数据中的推理
- <DATA-轉載>【数据科学】教你成为数据科学“大咖”!
- Bash Syslog History Could Lead to Data Leakage
- 《数据科学入门》(Data Science from Scratch)读书笔记
- 数学建模与数据科学简要(Mathematical model&Data science)
- Python Data Science Cheat Sheet,数据科学总结
- 数据科学中的语言和普通平台
- Kaggle入门教程——机器学习和数据科学竞赛的大数据平台
- Cloudera数据科学平台Cloudera Data Science Workbench: Self-Service Data Science for the Enterprise
- 历届柏林科学院院士
- 蓝桥杯-基础练习 01字串
- 封装
- 0120程序练习
- uvalive 5092 - Permutation Counting
- 再论数据科学竞赛中的Data Leakage
- 历届英国伦敦皇家学会会员[蓝色为外籍会员]
- 新手小白学习OpenGL的网站
- ALSA声卡10_从零编写之数据传输_学习笔记
- Math Studio中文教程
- hdu 3665 seaside floyd
- docker push 遇到如下问题解决方法
- PowerShell 读取 Goldengate 进程转为数组插入到sql server中
- jQuery对复选框的全选,全不选,反选等的操作