数据挖掘中最容易犯的几个错误,你知道吗?

按照Elder博士的总结,这10大易犯错误包括:程序员

0. 缺少数据(Lack Data)面试

1. 太关注训练(Focus on Training)算法

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

3. 提错了问题(Ask the Wrong Question)网络

4. 只靠数据来讲话(Listen (only) to the Data)机器学习

5. 使用了将来的信息(Accept Leaks from the Future)分布式

6. 抛弃了不应忽略的案例(Discount Pesky Cases)工具

7. 轻信预测(Extrapolate)性能

8. 试图回答全部问题(Answer Every Inquiry)学习

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

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

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

详情以下:

0. 缺少数据(Lack Data)

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

例如:欺诈侦测(Fraud Detection)——在上百万的交易中,可能只有屈指可数的欺诈交易,还有不少的欺诈交易没有被正确标注出来,这就须要在建模前花费大量人力来修正;信用评分(Credit Scoring)——须要对潜在的高风险客户进行长期跟踪(好比两年),从而积累足够的评分样本。

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

IDMer:就象体育训练中愈来愈注重实战训练,由于单纯的封闭式训练经常会训练时状态神勇,比赛时一塌糊涂。实际上,只有样本外数据上的模型评分结果才真正有用!(不然的话,直接用参照表好了!)

例如:癌症检测(Cancer detection)——MD Anderson的医生和研究人员(1993)使用神经网络来进行癌症检测,惊奇地发现,训练时间越长(从几天延长至数周),对训练集的性能改善很是轻微,但在测试集上的性能却明显降低;机器学习或计算机科学研究者经常试图让模型在已知数据上表现最优,这样作的结果一般会致使过分拟合(overfit)。欢迎加入大数据学习交流分享群: 658558542   一块儿吹水交流学习(☛点击便可加入群聊

解决方法:

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

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

IDMer:这个错误和第10种错误有相通之处,请同时参照其解决方法。没有对比也就没有所谓的好坏,辩证法的思想在此体现无遗。“当小孩子手拿一把锤子时,整个世界看起来就是一枚钉子。”要想让工做尽善尽美,就须要一套完整的工具箱。不要简单地信赖你用单个方法分析的结果,至少要和传统方法(好比线性回归或线性判别分析)作个比较。

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

解决方法:

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

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

IDMer:通常在分类算法中都会给出分类精度做为衡量模型好坏的标准,但在实际项目中咱们却几乎不看这个指标。为何?由于那不是咱们关注的目标。

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

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

b)模型的目标:让计算机去作你但愿它作的事

大多数研究人员会沉迷于模型的收敛性来尽可能下降偏差,这样让他们能够得到数学上的美感。但更应该让计算机作的事情应该是如何改善业务,而不是仅仅侧重模型计算上的精度。欢迎加入大数据学习交流分享群: 658558542   一块儿吹水交流学习(☛点击便可加入群聊

4. 只靠数据来讲话(Listen (only) to the Data)

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

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

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

5. 使用了将来的信息(Accept Leaks from the Future)

IDMer:看似不可能,倒是实际中很容易犯的错误,特别是你面对成千上万个变量的时候。认真、仔细、有条理是数据挖掘人员的基本要求。预报(Forecast)示例:预报芝加哥银行在某天的利率,使用神经网络建模,模型的准确率达到95%。但在模型中却使用了该天的利率做为输入变量。金融业中的预报示例:使用3日的移动平均来预报,但却把移动平均的中点设在今天。

解决方法:

要仔细查看那些让结果表现得异常好的变量,这些变量有多是不该该使用,或者不该该直接使用的。给数据加上时间戳,避免被误用。

6. 抛弃了不应忽略的案例(Discount Pesky Cases)

IDMer:究竟是“宁为鸡头,不为凤尾”,仍是“大隐隐于市,小隐隐于野”?不一样的人生态度能够有一样精彩的人生,不一样的数据也可能蕴含一样重要的价值。异常值可能会致使错误的结果(好比价格中的小数点标错了),但也多是问题的答案(好比臭氧洞)。因此须要仔细检查这些异常。研究中最让激动的话语不是“啊哈!”,而是“这就有点奇怪了……”数据中的不一致性有可能会是解决问题的线索,深挖下去也许能够解决一个大的业务问题。

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

解决方法:

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

7. 轻信预测(Extrapolate)

IDMer:依然是辩证法中的观点,事物都是不断发展变化的。人们经常在经验很少的时候轻易得出一些结论。即使发现了一些反例,人们也不太愿意放弃原先的想法。维度咒语:在低维度上的直觉,放在高维度空间中,经常是毫无心义的。

解决方法:进化论。没有正确的结论,只有愈来愈准确的结论。

8. 试图回答全部问题(Answer Every Inquiry)

IDMer:有点像我登山时鼓励本身的一句话“我不知道何时能登上山峰,但我知道爬一步就离终点近一步。”“不知道”是一种有意义的模型结果。模型也许没法100%准确回答问题,但至少能够帮咱们估计出现某种结果的可能性。

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

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

解决方法:“喝前摇一摇!”先打乱原始数据集中的顺序,从而保证抽样的随机性。9b提升抽样水平。例如,在信用评分中,由于违约客户的占比通常都很是低,因此在建模时经常会人为调高违约客户的占比(好比把这些违约客户的权重提升5倍)。建模中发现,随着模型愈来愈复杂,判别违约客户的准确率也愈来愈高,但对正常客户的误判率也随之升高。(问题出在数据集的划分上。在把原始数据集划分为训练集和测试集时,原始数据集中违约客户的权重已经被提升过了)

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

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

IDMer:仍是那句老话-“没有最好,只有更好!”可解释性并不必定老是必要的。看起来并不彻底正确或者能够解释的模型,有时也会有用。“最佳”模型中使用的一些变量,会分散人们太多的注意力。(不可解释性有时也是一个优势)通常来讲,不少变量看起来彼此都很类似,而最佳模型的结构看上去也千差万别,无迹可循。但需注意的是,结构上类似并不意味着功能上也类似。

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

结语

感谢您的观看,若有不足之处,欢迎批评指正。

若是有对大数据感兴趣的小伙伴或者是从事大数据的老司机能够加群:

658558542    (☛点击便可加入群聊

里面整理了一大份学习资料,全都是些干货,包括大数据技术入门,海量数据高级分析语言,海量数据存储分布式存储,以及海量数据分析分布式计算等部分,送给每一位大数据小伙伴,这里不止是小白汇集地,还有大牛在线解答!欢迎初学和进阶中的小伙伴一块儿进群学习交流,共同进步!

最后祝福全部遇到瓶颈的大数据程序员们突破本身,祝福你们在日后的工做与面试中一切顺利。

相关文章
相关标签/搜索