首页 > 人工智能 > 基于随机森林的缺失值填补

基于随机森林的缺失值填补

 

1. 随机森林简介

随机森林算法在2001年由Breiman首次提出,主要的分类思想为:利用BootStrap抽样(有放回抽样)从N个训练样本中抽取m个样本集,每个样本集容量也为N,对这m个样本集分别建立m棵决策树,对一个未知的样本x,分别用这个m棵决策树进行分类,最后根据m个分类结果的投票得到x的最终分类结果。

采用随机森林对缺失数据进行填补,主要利用到随机森林在分类过程中对样本之间关系的出色的自动分析,下面就介绍下随机森林在缺失数据填补方面的应用。

2. 利用随机森林填补缺失数据

一般的数据中,常见的数据缺失情况有单变量缺失和多变量缺失两种情况。单变量缺失就是样本的某一特征有缺失,其它特征的值都是完整的;而多变量缺失是样本的多个特征都有不同程度的缺失。下面针对这两种情况分别介绍如何用随机森林进行填补。

2.1 单变量缺失的数据填补

假设有N个样本,P维特征,第i个样本的第j维特征值为基于随机森林的缺失值填补 - 第1张  | 新闻中心,样本矩阵X如下:基于随机森林的缺失值填补 - 第2张  | 新闻中心假设含有缺失数据的特征变量为基于随机森林的缺失值填补 - 第3张  | 新闻中心,据此,把数据矩阵X分为以下几个部分:

  1. 矩阵X中,特征变量基于随机森林的缺失值填补 - 第4张  | 新闻中心所在列中,未缺失的数据构成的向量,记为基于随机森林的缺失值填补 - 第5张  | 新闻中心 ,另记基于随机森林的缺失值填补 - 第6张  | 新闻中心中各数据在其基于随机森林的缺失值填补 - 第7张  | 新闻中心列中的索引序列为基于随机森林的缺失值填补 - 第8张  | 新闻中心
  2. 矩阵X中,特征变量基于随机森林的缺失值填补 - 第9张  | 新闻中心所在列中,缺失的数据构成的向量,记为基于随机森林的缺失值填补 - 第10张  | 新闻中心 ,另记基于随机森林的缺失值填补 - 第11张  | 新闻中心中各数据在其基于随机森林的缺失值填补 - 第12张  | 新闻中心列中的索引序列为基于随机森林的缺失值填补 - 第13张  | 新闻中心
  3. 矩阵X中,除了特征变量基于随机森林的缺失值填补 - 第14张  | 新闻中心所在列外其它列在索引序列基于随机森林的缺失值填补 - 第15张  | 新闻中心相应位置的数据,组成矩阵基于随机森林的缺失值填补 - 第16张  | 新闻中心
  4. 矩阵X中,除了特征变量基于随机森林的缺失值填补 - 第17张  | 新闻中心所在列外其它列在索引序列基于随机森林的缺失值填补 - 第18张  | 新闻中心相应位置的数据,组成矩阵基于随机森林的缺失值填补 - 第19张  | 新闻中心

采用基于随机森林的缺失值填补 - 第20张  | 新闻中心建立随机森林模型,并用该模型使用数据基于随机森林的缺失值填补 - 第21张  | 新闻中心预测基于随机森林的缺失值填补 - 第22张  | 新闻中心,从而可以得到特征变量基于随机森林的缺失值填补 - 第23张  | 新闻中心的缺失值。

2.2 多变量缺失的数据填补

多变量缺失的填补基本思想与单变量填补类似。首先,需要通过简单的填补(比如均值填补)对矩阵X进行初始填补,然后按照缺失数据的从少到多对矩阵X的列进行顺序调整(调整列顺序后的矩阵X第一列的缺失数据应该是最少的,最后一列的缺失数据是最多的),再按照下述方式进行迭代:

步骤1:记初始填补后得到的矩阵为基于随机森林的缺失值填补 - 第24张  | 新闻中心

步骤2:把基于随机森林的缺失值填补 - 第25张  | 新闻中心的第1列作为缺失变量列基于随机森林的缺失值填补 - 第26张  | 新闻中心,按照单变量填补方式对其进行填补,用得到的基于随机森林的缺失值填补 - 第27张  | 新闻中心更新基于随机森林的缺失值填补 - 第28张  | 新闻中心,得到更新后的矩阵基于随机森林的缺失值填补 - 第29张  | 新闻中心

步骤3:把更新得到的矩阵基于随机森林的缺失值填补 - 第30张  | 新闻中心中的第2列至最后一列,按照步骤2的方式进行填补,得到填补矩阵基于随机森林的缺失值填补 - 第31张  | 新闻中心

步骤4:判断是否满足迭代停止条件,如果满足则填补结束,否则把基于随机森林的缺失值填补 - 第32张  | 新闻中心按照步骤2和步骤3的方式继续迭代更新。

其中,满足迭代停止的条件是:如果填补得到的矩阵与之前的矩阵差别加大则停止迭代。这里提到的“差别”对于连续变量和离散(分类)变量是不同的:

连续变量时:

基于随机森林的缺失值填补 - 第33张  | 新闻中心

离散变量时(设基于随机森林的缺失值填补 - 第34张  | 新闻中心为缺失数据的数量):

基于随机森林的缺失值填补 - 第35张  | 新闻中心

3. 随机森林缺失值填补的优点

  1. 随机森林填补通过构造多棵决策树对缺失值进行填补,使得填补得到的数据具有随机性和不确定性,更能反映出这些未知数据的真实分布;
  2. 随机森林填补由于在构造决策树过程中,每个分支节点选用随机的部分特征而不是全部特征,所以能很好的应用到高维数据的填补;
  3. 随机森林算法本身就具有很好的分类精度,从而也更进一步确保了得到的填补值的准确性和可靠性。

参考文献

1. 2014年9月文章,基于随机森林模型的分类数据缺失值插补(孟杰,李春林)
2. 2012年张海玉的硕士论文,基于随机森林模型的缺失数据填补方法的研究

最后编辑:
作者:兴明
这个作者貌似有点懒,什么都没有留下。

评论墙

  1. 恒星夜不见 说:

    公式使用截图,太不友好了。wordpress应该是有mathjax插件的。

留下评论

你的email不会被公开。