机器学习实战-特征选择之过滤法

目录

数据加载及展示

低方差特征过滤

单变量特征过滤


上一篇:机器学习实战-特征选择

上一篇文章里面,我们主要介绍了特征选择的三种方法,这篇文章小编就来介绍过滤法。

考虑到很多同学刚开始学,这里不会介绍算法公式,相比与高校或者实验室里面,很多同学应该都懂,但是没接触过的同学,又看不懂,所以小编直接不讲,这里只讲怎么用,以便同学可以更快上手,如果有兴趣研究算法内容的同学,自行百度即可,都是公式的。

备注:算法中的数据,我会采用真实现网的中的部分数据来实现

机器学习实战-特征选择之过滤法

 

本文章节

1、数据加载及展示

2、低方差特征过滤

3、单变量特征过滤

数据加载及展示

为什么会直接把这个东西放在这里,有以下两个原因

1、数据是取自生产上的数据,更接近真实性,目前网上的数据千篇一律,你看不出个所以然来。

2、数据我做了一次简单的清洗,对于后面的分类有比较好的效果。

3、数据如图1所示,目前主要是做分类,包含后面的特征选择也会针对分类来做,有13个特征,1个标签,这里是二分类的做法。

机器学习实战-特征选择之过滤法

图1:数据

低方差特征过滤

低方差特征过滤算是最简单的做法,怎么去理解这个东西?

我模拟个场景,假定图1的特征3,里面都是0,此时对于我们业务来说,是不是无用的?因为无论怎么做,这个数据还是不变的,对业务没有任何影响,此时的做法是直接删掉。

低方差特征过滤的做法与这个类似,我们给定个标准,也加阈值,但是这里有个地方需要注意一下:使用这种方法的时候,特征值必须都是离散型变量才可以,此时如果是连续型,那就需要先进行离散化,这算是一个需要注意的点。

其实这种方法在现实中不会很好用,因为需要的条件太过于极端,基本很少出现,出现的时候基本上肉眼能看出来,就给业务方干掉了,不过我们还是来实验一下。实验结果如图2

机器学习实战-特征选择之过滤法

图2:低方差特征过滤

这里小编设定阈值为0.8,但是经过计算啊计算啊计算啊,特征没变。

其实这个很正常,毕竟是生产上面的数据,经过业务方筛选得到的,基本上都是有价值的数据,所以大伙对这个结果不要太惊讶,平常心,正常的。

单变量特征过滤

单变量特征过滤这个又是啥?直接从字面上来理解,我们的图1中有13个特征,采用某一种算法,独立来计算每一种特征的指标,根据指标的值来判断哪些指标重要?哪些指标不重要,然后删除笑掉这些指标即可。

其中,在进行单变量特征选择的时候,我们有两个问题需要注意采用不同算法

1、针对分类问题,目前我们的实验就是分类问题,可以采用卡方检验、f_classif、 mutual_info_classif、互信息来进行特征提取。

2、针对回归问题,可以采用皮尔森相关系数、f_regression、 mutual_info_regression、最大信息系数进行特征提取

接下来,我们来做个实验,采用卡方检验、f_classif、 mutual_info_classif来实验,其他的可以自行官网查找即可,基本类似。

机器学习实战-特征选择之过滤法

图3:验证

从这个实验中,我们采用了三种不同方式来进行特征提取,只留下10个特征,展示一下第一条数据,数据上都是一样的,虽然计算方式不一样,但是本质是一样的,那些不重要的数据,已经通通被干掉了,算是一个意料中,满意的结果。

--END--

作者:溪云阁

原创作品,抄袭必究。

部分图片来源网络,如侵权请联系删除,谢谢!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章