数据挖掘中易犯的几大错误

标签: 分析视角 技术前沿 | 发表时间:2013-05-09 17:28 | 作者:admin
出处:http://www.datakong.cn

按照Elder博士的总结,这几大易犯错误包括:

  1. 缺乏数据(Lack Data)
  2. 太关注训练(Focus on Training)
  3. 只依赖一项技术(Rely on One Technique)
  4. 提错了问题(Ask the Wrong Question)
  5. 只靠数据来说话(Listen (only) to the Data)
  6. 使用了未来的信息(Accept Leaks from the Future)
  7. 抛弃了不该忽略的案例(Discount Pesky Cases)
  8. 轻信预测(Extrapolate)
  9. 试图回答所有问题(Answer Every Inquiry)
  10. 随便地进行抽样(Sample Casually)
  11. 太相信最佳模型(Believe the Best Model)

     

 1. 缺乏数据(Lack Data)

对于分类问题或预估问题来说,常常缺乏准确标注的案例。

例如:

-欺诈侦测(Fraud Detection):在上百万的交易中,可能只有屈指可数的欺诈交易,还有很多的欺诈交易没有被正确标注出来,这就需要在建模前花费大量人力来修正。

-信用评分(Credit Scoring):需要对潜在的高风险客户进行长期跟踪(比如两年),从而积累足够的评分样本。

 

 2. 太关注训练(Focus on Training)

IDMer:就象体育训练中越来越注重实战训练,因为单纯的封闭式训练常常会训练时状态神勇,比赛时一塌糊涂。

实际上,只有样本外数据上的模型评分结果才真正有用!(否则的话,直接用参照表好了!)

例如:

-癌症检测(Cancer detection):MD Anderson的医生和研究人员(1993)使用神经网络来进行癌症检测,惊奇地发现,训练时间越长(从几天延长至数周),对训练集的性能改善非常轻微,但在测试集上的性能却明显下降。

-机器学习或计算机科学研究者常常试图让模型在已知数据上表现最优,这样做的结果通常会导致过度拟合(overfit)。

解决方法:

解决这个问题的典型方法是重抽样(Re-Sampling)。重抽样技术包括:bootstrap、cross-validation、jackknife、leave-one-out...等等。

 

 3. 只依赖一项技术(Rely on One Technique)

IDMer:这个错误和第10种错误有相通之处,请同时参照其解决方法。没有对比也就没有所谓的好坏,辩证法的思想在此体现无遗。

“当小孩子手拿一把锤子时,整个世界看起来就是一枚钉子。”要想让工作尽善尽美,就需要一套完整的工具箱。

不要简单地信赖你用单个方法分析的结果,至少要和传统方法(比如线性回归或线性判别分析)做个比较。

研究结果:按照《神经网络》期刊的统计,在过去3年来,只有1/6的文章中做到了上述两点。也就是说,在独立于训练样本之外的测试集上进行了开集测试,并与其它广泛采用的方法进行了对比。

解决方法:

使用一系列好的工具和方法。(每种工具或方法可能最多带来5%~10%的改进)。

 

     4. 提错了问题(Ask the Wrong Question)

IDMer:一般在分类算法中都会给出分类精度作为衡量模型好坏的标准,但在实际项目中我们却几乎不看这个指标。为什么?因为那不是我们关注的目标。

a)项目的目标:一定要锁定正确的目标

例如:

欺诈侦测(关注的是正例!)(Shannon实验室在国际长途电话上的分析):不要试图在一般的通话中把欺诈和非欺诈行为分类出来,重点应放在如何描述正常通话的特征,然后据此发现异常通话行为。

b)模型的目标:让计算机去做你希望它做的事

大多数研究人员会沉迷于模型的收敛性来尽量降低误差,这样让他们可以获得数学上的美感。但更应该让计算机做的事情应该是如何改善业务,而不是仅仅侧重模型计算上的精度。

 

 5. 只靠数据来说话(Listen (only) to the Data)

IDMer:“让数据说话”没有错,关键是还要记得另一句话:兼听则明,偏听则暗!如果数据+工具就可以解决问题的话,还要人做什么呢?

5a.   投机取巧的数据:数据本身只能帮助分析人员找到什么是显著的结果,但它并不能告诉你结果是对还是错。

5b.  经过设计的实验:某些实验设计中掺杂了人为的成分,这样的实验结果也常常不可信。

 

 6. 使用了未来的信息(Accept Leaks from the Future)

IDMer:看似不可能,却是实际中很容易犯的错误,特别是你面对成千上万个变量的时候。认真、仔细、有条理是数据挖掘人员的基本要求。

预报(Forecast)示例:预报芝加哥银行在某天的利率,使用神经网络建模,模型的准确率达到95%。但在模型中却使用了该天的利率作为输入变量。

金融业中的预报示例:使用3日的移动平均来预报,但却把移动平均的中点设在今天。

解决方法:

要仔细查看那些让结果表现得异常好的变量,这些变量有可能是不应该使用,或者不应该直接使用的。

给数据加上时间戳,避免被误用。

 

 

 7. 抛弃了不该忽略的案例(Discount Pesky Cases)

IDMer:到底是“宁为鸡头,不为凤尾”,还是“大隐隐于市,小隐隐于野”?不同的人生态度可以有同样精彩的人生,不同的数据也可能蕴含同样重要的价值。

异常值可能会导致错误的结果(比如价格中的小数点标错了),但也可能是问题的答案(比如臭氧洞)。所以需要仔细检查这些异常。

研究中最让激动的话语不是“啊哈!”,而是“这就有点奇怪了……”

数据中的不一致性有可能会是解决问题的线索,深挖下去也许可以解决一个大的业务问题。

例如:

在直邮营销中,在对家庭地址的合并和清洗过程中发现的数据不一致,反而可能是新的营销机会。

解决方法:

可视化可以帮助你分析大量的假设是否成立。

 

     8. 轻信预测(Extrapolate)

IDMer:依然是辩证法中的观点,事物都是不断发展变化的。

人们常常在经验不多的时候轻易得出一些结论。

即便发现了一些反例,人们也不太愿意放弃原先的想法。

维度咒语:在低维度上的直觉,放在高维度空间中,常常是毫无意义的。

解决方法:

进化论。没有正确的结论,只有越来越准确的结论。

 

 9. 试图回答所有问题(Answer Every Inquiry)

IDMer:有点像我爬山时鼓励自己的一句话“我不知道什么时候能登上山峰,但我知道爬一步就离终点近一步。”

“不知道”是一种有意义的模型结果。

模型也许无法100%准确回答问题,但至少可以帮我们估计出现某种结果的可能性。

 

 10. 随便地进行抽样(Sample Casually)

10a   降低抽样水平。例如,MD直邮公司进行响应预测分析,但发现数据集中的不响应客户占比太高(总共一百万直邮客户,其中超过99%的人未对营销做出响应)。于是建模人员做了如下抽样:把所有响应者放入样本集,然后在所有不响应者中进行系统抽样,即每隔10人抽一个放入样本集,直到样本集达到10万人。但模型居然得出如下规则:凡是居住在Ketchikan、Wrangell和Ward Cove Alaska的人都会响应营销。这显然是有问题的结论。(问题就出在这种抽样方法上,因为原始数据集已经按照邮政编码排序,上面这三个地区中不响应者未能被抽取到样本集中,故此得出了这种结论)。

解决方法:“喝前摇一摇!”先打乱原始数据集中的顺序,从而保证抽样的随机性。

10b   提高抽样水平。例如,在信用评分中,因为违约客户的占比一般都非常低,所以在建模时常常会人为调高违约客户的占比(比如把这些违约客户的权重提高5倍)。建模中发现,随着模型越来越复杂,判别违约客户的准确率也越来越高,但对正常客户的误判率也随之升高。(问题出在数据集的划分上。在把原始数据集划分为训练集和测试集时,原始数据集中违约客户的权重已经被提高过了)

解决方法:先进行数据集划分,然后再提高训练集中违约客户的权重。

 

11. 太相信最佳模型(Believe the Best Model)

IDMer:还是那句老话-“没有最好,只有更好!”

可解释性并不一定总是必要的。看起来并不完全正确或者可以解释的模型,有时也会有用。

“最佳”模型中使用的一些变量,会分散人们太多的注意力。(不可解释性有时也是一个优点)

一般来说,很多变量看起来彼此都很相似,而最佳模型的结构看上去也千差万别,无迹可循。但需注意的是,结构上相似并不意味着功能上也相似。

解决方法:把多个模型集装起来可能会带来更好更稳定的结果。

转载自 数据挖掘者IDMer

数据挖掘中易犯的几大错误,首发于 互联网分析

相关 [数据挖掘 错误] 推荐:

数据挖掘中易犯的10大错误

- yoyou - IDMer (数据挖掘者)
原文标题为“Top 10 Data Mining Mistakes”,作者是John F. 编译:IDMer(数据挖掘者). 按照Elder博士的总结,这10大易犯错误包括:. 缺乏数据(Lack Data). 太关注训练(Focus on Training). 只依赖一项技术(Rely on One Technique).

数据挖掘中易犯的几大错误

- - 互联网分析
按照Elder博士的总结,这几大易犯错误包括:. 缺乏数据(Lack Data). 太关注训练(Focus on Training). 只依赖一项技术(Rely on One Technique). 提错了问题(Ask the Wrong Question). 只靠数据来说话(Listen (only) to the Data).

数据挖掘是神马?

- - 互联网分析
1、数据挖掘需要‘神马样’的流程.  2、哥,有没有详细点的,来个给力的. 4、数据在统计意义上有哪些类型. 9、知道这些工具不知道如何在工作中用呀. 11、还有没有更人性化、智能化的展现. 12、上面这图看起来很给力,背后很复杂吧.  16、转载的留个来源 ,毕竟是我辛苦收集和想出来的,谢谢. 忘记“大数据”,从“中数据”开始.

这就是数据挖掘

- - 互联网分析
当今数据库的容量已经达到上万亿的水平(T)— 1,000,000,000,000个字节. 在这些大量数据的背后隐藏了很多具有决策意义的信息,那么怎么得到这些“知识”呢. 也就是怎样通过一颗颗的树木了解到整个森林的情况. 计 算机科学对这个问题给出的最新回答就是:数据挖掘,在“数据矿山”中找到蕴藏的“知识金块”,帮助企业减少不必要投资的同时提高资金回报.

关于数据挖掘

- - 牛国柱
以下内容来自网络,关于数据挖掘的一些最基本的知识. 数据挖掘是对一系列数据进行分析和挖掘的方法的统称,在精准营销领域,最常用的数据挖掘方法主要包括以下三类:分类、聚类、关联. 分类(Classify)属于预测性模型. 分类模型的构建需要“训练样本”,训练样本中的每一个个体的类别必须是明确的. 分类模型的特征变量一般称为“自变量”,又叫“预测变量”,类别变量称为“目标变量”.

数据挖掘与Taco Bell编程

- everfly - 译言-每日精品译文推荐
来源Data Mining and Taco Bell Programming. Programmer Ted Dziuba suggests an alternative to traditional program that he called "Taco Bell Programming." The Taco Bell chain creates multiple menu items from about eight different ingredients.

使用Weka进行数据挖掘

- - 搜索研发部官方博客
数据挖掘、机器学习这些字眼,在一些人看来,是门槛很高的东西. 诚然,如果做算法实现甚至算法优化,确实需要很多背景知识. 但事实是,绝大多数数据挖掘工程师,不需要去做算法层面的东西. 他们的精力,集中在特征提取,算法选择和参数调优上. 那么,一个可以方便地提供这些功能的工具,便是十分必要的了. 而weka,便是数据挖掘工具中的佼佼者.

数据挖掘 - 分类算法比较

- - IBM developerWorks 中国 : 文档库
随着计算能力、存储、网络的高速发展,人类积累的数据量正以指数速度增长. 对于这些数据,人们迫切希望从中提取出隐藏其中的有用信息,更需要发现更深层次的规律,对决策,商务应用提供更有效的支持. 为了满足这种需求,数据挖掘技术的得到了长足的发展,而分类在数据挖掘中是一项非常重要的任务,目前在商业上应用最多.

数据挖掘分类技术

- - CSDN博客云计算推荐文章
从分类问题的提出至今,已经衍生出了很多具体的分类技术. 下面主要简单介绍四种最常用的分类技术,不过因为原理和具体的算法实现及优化不是本书的重点,所以我们尽量用应用人员能够理解的语言来表述这些技术. 而且我们会在第4章再次给读者讲述分类算法和相关原理. 在我们学习这些算法之前必须要清楚一点,分类算法不会百分百准确.

数据挖掘之R与SQL

- Wolf - 刘思喆 @ 贝吉塔行星
今天看到老同学@JulieJulieJulieJulie 的浪漫求婚,真的很浪漫、很唯美、很感动. 正如评论说的,我们又相信爱情了. 于是,小兴奋,睡不着,爬起来补一篇文章. 最近在数据挖掘专业网站 KDnuggets 上刊出了2011年度关于数据挖掘/分析语言流行度的调查,不出意料R、SQL、Python果然排在了前三位.