python随机森林变量重要性_利用随机森林对特征重要性进行评估

  • Post author:
  • Post category:python


前言

随机森林是以决策树为基学习器的集成学习算法。随机森林非常简单,易于实现,计算开销也很小,更令人惊奇的是它在分类和回归上表现出了十分惊人的性能,因此,随机森林也被誉为“代表集成学习技术水平的方法”。

本文是对随机森林如何用在特征选择上做一个简单的介绍。

随机森林(RF)简介

只要了解决策树的算法,那么随机森林是相当容易理解的。随机森林的算法可以用如下几个步骤概括:

用有抽样放回的方法(bootstrap)从样本集中选取n个样本作为一个训练集

用抽样得到的样本集生成一棵决策树。在生成的每一个结点:

随机不重复地选择d个特征

利用这d个特征分别对样本集进行划分,找到最佳的划分特征(可用基尼系数、增益率或者信息增益判别)

重复步骤1到步骤2共k次,k即为随机森林中决策树的个数。

用训练得到的随机森林对测试样本进行预测,并用票选法决定预测的结果。

下图比较直观地展示了随机森林算法:

1e2562f3e33b

图1:随机森林算法示意图

没错,就是这个到处都是随机取值的算法,在分类和回归上有着极佳的效果,是不是觉得强的没法解释~

然而本文的重点不是这个,而是接下来的特征重要性评估。

特征重要性评估

sklearn 已经帮我们封装好了一切,我们只需要调用其中的函数即可。 我们以UCI上葡萄酒的例子为例,首先导入数据集。

import pandas as pd

url



版权声明:本文为weixin_32256355原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。