0. 缺乏数据(Lack Data)
1. 太关注训练(Focus on Training)
2. 只依赖一项技术(Rely on One Technique)
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)
咦,11项错误了喔!呵呵!详情如下:
2. 只依赖一项技术(Rely on One Technique)
IDMer:这个错误和第10种错误有相通之处,请同时参照其解决方法。没有对比也就没有所谓的好坏,辩证法的思想在此体现无遗。
“当小孩子手拿一把锤子时,整个世界看起来就是一枚钉子。”要想让工作尽善尽美,就需要一套完整的工具箱。
不要简单地信赖你用单个方法分析的结果,至少要和传统方法(比如线性回归或线性判别分析)做个比较。
研究结果:按照《神经网络》期刊的统计,在过去3年来,只有1/6的文章中做到了上述两点。也就是说,在独立于训练样本之外的测试集上进行了开集测试,并与其它广泛采用的方法进行了对比。
解决方法:
使用一系列好的工具和方法。(每种工具或方法可能最多带来5%~10%的改进)。
3. 提错了问题(Ask the Wrong Question)
IDMer:一般在分类算法中都会给出分类精度作为衡量模型好坏的标准,但在实际项目中我们却几乎不看这个指标。为什么?因为那不是我们关注的目标。
大多数研究人员会沉迷于模型的收敛性来尽量降低误差,这样让他们可以获得数学上的美感。但更应该让计算机做的事情应该是如何改善业务,而不是仅仅侧重模型计算上的精度。
4. 只靠数据来说话(Listen (only) to the Data)
IDMer:“让数据说话”没有错,关键是还要记得另一句话:兼听则明,偏听则暗!如果数据+工具就可以解决问题的话,还要人做什么呢?
5. 使用了未来的信息(Accept Leaks from the Future)
IDMer:看似不可能,却是实际中很容易犯的错误,特别是你面对成千上万个变量的时候。认真、仔细、有条理是数据挖掘人员的基本要求。
预报(Forecast)示例:预报芝加哥银行在某天的利率,使用神经网络建模,模型的准确率达到95%。但在模型中却使用了该天的利率作为输入变量。
金融业中的预报示例:使用3日的移动平均来预报,但却把移动平均的中点设在今天。
10. 太相信最佳模型(Believe the Best Model)
IDMer:还是那句老话-“没有最好,只有更好!”
可解释性并不一定总是必要的。看起来并不完全正确或者可以解释的模型,有时也会有用。
“最佳”模型中使用的一些变量,会分散人们太多的注意力。(不可解释性有时也是一个优点)
一般来说,很多变量看起来彼此都很相似,而最佳模型的结构看上去也千差万别,无迹可循。但需注意的是,结构上相似并不意味着功能上也相似。
解决方法:把多个模型集装起来可能会带来更好更稳定的结果。