数据挖掘过程中绝不能犯这11大错误

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)

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

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

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

    更多详细信息,请您微信关注“计算网”公众号: