python关联分析sklearn_转: sklearn学习——特征工程(特征选择)

特征选择方法总结

什么是特征工程?

定义:特征工程是将原始数据转化为特征,更好表示预测模型处理的实际问题,提升对于未知数据的准确性。它是用目标问题所在的特定领域知识或者自动化的方法来生成、提取、删减或者组合变化得到特征。

为什么要特征工程?

简单的说,你给我的数据能不能直接放到模型里?显然不能,第一,你的数据可能是假(异常值);

第二,你的数据太脏了(各种噪声);第三,你的数据可能不够,或者数据量不平衡(数据采样);第三,清洗完数据能直接用吗?显然不能!输入模型的数据要和模型输出有关系,没关系的那是噪声!(特征提取或处理);第四,特征之间属于亲戚关系,你们是一家,不能反映问题!(特征选择)。

特征工程有何意义?

这里用七月在线寒老师的PPT做解释: a4c26d1e5885305701be709a3d33442f.png

 a4c26d1e5885305701be709a3d33442f.png

如何特征进行工程?

a4c26d1e5885305701be709a3d33442f.png

本文重点叙述特征选择(Feature

selection)

方法一:过滤型(Fillter)

评估单个特征和结果值之间的相关程度,排序留下Top相关的特征部分。

Person相关系数法:

import numpy as np

from scipy.stats import pearsonr#引入数值计算包的统计函数(scipy.stats)

np.random.seed(0)#保证每次随机取值相同

size = 300

x = np.random.normal(0, 1, size)#正态分布

print ("Lower noise", pearsonr(x, x + np.random.normal(0, 1, size)))

print ("Higher noise", pearsonr(x, x + np.random.normal(0, 10, size)))

1

2

3

4

5

6

7

Person相关系数的缺点:

作为特征排序机制,他只对线性关系敏感。如果关系是非线性的,即便两个变量具有一一对应的关系,Pearson相关性也可能会接近0。

x = np.random.uniform(-1, 1, 100000)

print pearsonr(x, x**2)[0]

1

2

互信息和最大信息系数

Mutual information and maximal information coefficient (MIC)

a4c26d1e5885305701be709a3d33442f.png

import numpy as np

from minepy import MINE#minepy包——基于最大信息的非参数估计

m = MINE()

x = np.random.uniform(-1, 1, 10000)#均匀分布

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值