回答一下Nirvana兄提的问题,原文地址(user1/105/archives/2006/928.html):
当数据集的目标变量值的分布不均匀的时候可以使用Oversampling帮助解决问题。
假设有20000条数据,客户流失率是1%,也就是200个流失客户。用此数据集训练出来的模型是基本没有用处的。因为大多数算法都是为了提高综合判断的准确率,而不是只判断流失的准确率。在这种情况下,简单地把所有客户都判断为忠实就能达到99%的准确率了!
解决问题的方法是保留所有的这200个流失客户,再在其余那19800个忠实客户里随机抽取800个客户。这样一来就组成了一个有1000个客户的数据集,流失率是20%。(一般来说20%~30%能达到较好的效果)用这个数据集训练出来的模型才是真正有用的模型。
以上只是Oversampling最简单的一个演示,有兴趣的朋友可以查阅相关的统计或者是数据挖掘的书籍得到更准确更全面的信息。