
5.4 样本选择
5.4.1 样本选择的方法
当进行数据挖掘时,通常并不是对所有样本数据进行挖掘,而是从数据样本中选择一部分数据进行挖掘。通过对数据样本的精选,不仅能减少数据处理量,节省系统资源,而且能通过数据的筛选,使数据的规律性更加凸现出来。
为了让选择的样本能够表现总体的特征,在实际进行样本选择时有两点需要注意:一是样本的数量,选择的样本数量要能够刻画数据的特征,满足算法对数据需求量的要求,同时兼顾计算机性能和时效要求;二是要注意样本选择的平衡性,比如对于分类样本,每个类别的样本数量应尽量一致,这样就可以保证模型的均衡性。
从数据总体中如何取出样本数据呢?这就需要考虑数据挖掘的目的及数据的具体情况,通常有如下三种取样方法:
(1)随机取样法。随机取样法是指随机从样本总体中抽取数据,在实际应用中,通常采用类似产生随机数的方法抽取数据样本。随机取样法适用于样本总体基数较大,同时样本数据质量均衡的情况。
(2)顺序取样法。顺序取样法是指按照一定的顺序,从样本总体中抽取数据样本,通常直接按照编号的顺序从头开始选择样本,如选择前1 000条数据。顺序取样法适用于样本数据质量均衡的情况。
(3)监督取样法。监督取样法是指对样本总体进行监督检查之后再抽取样本。该法适用于样本数据质量较差的情况。
5.4.2 样本选择应用实例
在4.1节中已经通过衍生变量得到一部分数据,经过分析会发现,这些样本的均衡性不是很好,其中好股票和坏股票的样本较少,一般股票样本较多。如果不重新选择样本,那么用算法训练的模型将主要表现一般股票的特征,对好股票的预测是非常不利的,所以这种情况下需要进行数据的挑选。
对数据进行分析后发现,数据基数比较大,数据质量也比较均衡,用随机取样法比较合适。根据随机取样法,编写了程序P5-2。


运行程序,就可以发现样本中好股票、坏股票、一般股票的样本量都一样,这样的数据对于训练模型比较好。