量化投资:MATLAB数据挖掘技术与实践(第2版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

5.4 样本选择

5.4.1 样本选择的方法

当进行数据挖掘时,通常并不是对所有样本数据进行挖掘,而是从数据样本中选择一部分数据进行挖掘。通过对数据样本的精选,不仅能减少数据处理量,节省系统资源,而且能通过数据的筛选,使数据的规律性更加凸现出来。

为了让选择的样本能够表现总体的特征,在实际进行样本选择时有两点需要注意:一是样本的数量,选择的样本数量要能够刻画数据的特征,满足算法对数据需求量的要求,同时兼顾计算机性能和时效要求;二是要注意样本选择的平衡性,比如对于分类样本,每个类别的样本数量应尽量一致,这样就可以保证模型的均衡性。

从数据总体中如何取出样本数据呢?这就需要考虑数据挖掘的目的及数据的具体情况,通常有如下三种取样方法:

(1)随机取样法。随机取样法是指随机从样本总体中抽取数据,在实际应用中,通常采用类似产生随机数的方法抽取数据样本。随机取样法适用于样本总体基数较大,同时样本数据质量均衡的情况。

(2)顺序取样法。顺序取样法是指按照一定的顺序,从样本总体中抽取数据样本,通常直接按照编号的顺序从头开始选择样本,如选择前1 000条数据。顺序取样法适用于样本数据质量均衡的情况。

(3)监督取样法。监督取样法是指对样本总体进行监督检查之后再抽取样本。该法适用于样本数据质量较差的情况。

5.4.2 样本选择应用实例

在4.1节中已经通过衍生变量得到一部分数据,经过分析会发现,这些样本的均衡性不是很好,其中好股票和坏股票的样本较少,一般股票样本较多。如果不重新选择样本,那么用算法训练的模型将主要表现一般股票的特征,对好股票的预测是非常不利的,所以这种情况下需要进行数据的挑选。

对数据进行分析后发现,数据基数比较大,数据质量也比较均衡,用随机取样法比较合适。根据随机取样法,编写了程序P5-2。

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