㈠ 机器学习中常用的数据集处理方法
机器学习中常用的数据集处理方法
1.离散值的处理: 因为离散值的差值是没有实际意义的。比如如果用0,1,2代表红黄蓝,1-0的差值代表黄-红,是没有意义的。因此,我们往往会把拥有d个取值的离散值变为d个取值为0,1的离散值或者将
其映射为多维向量。
2.属性归一化: 归一化的目标是把各位属性的取值范围放缩到差不多的区间,例如[-0.5,0.5]。这里我们使用一种很常见的操作方法:减掉均值,然
后除以原取值范围。 做归一化至少有以下3个理由: - 过大或过小的数值范围会导致计算时的浮点上溢或下溢。 - 不同的数值范围会导致不同属性对模型的重要性不同(至少在训练的初始阶段如此),而这个隐含的假设常常是不合理的。这会对优化的过程造成困难,使训练时间大大的加长。 - 很多的机器学习技巧/模型(例如L1,L2正则项,向量空间模型-Vector Space Model)都基于这样的假设:所有的属性取值都差不多是以0为均值
且取值范围相近的
。 3.分割数据集 一般把数据集分为两部分,一部分为训练集,用于训练数据,一部分为测试集,用于测试训练的数据,测试集不应过多或过少,数据较少时训练集:测试集可以为8:2,较多时比
例可以达到9:1 。