机器学习之特征工程

特征工程(Feature Engineering):将数据转换为能更好表示潜在问题的特征,从而提高机器学习性能

主要包括以下几个内容;

一、数据理解

目的:探索数据,了解数据,在EDA阶段完成

1、定性数据:描述性质

a)定类:按名称分类-血型,城市

b)定序:有序分类-成绩(A B C)

2、定量数据:描述数量

a)定距:可以加减-温度,日期

b)定比:可以乘除-价格,重量

注意:定距和定比有时无太大区分,例如温度可以算温差,也可以算温度之间的倍数

数据层->描述层->解读层->结论层

二、数据清洗(最重要)

目的:提高数据质量,降低算法用错误数据建模的风险

1、特征变换:模型无法处理或不适合处理

a)定性变量编码:Label Encoder;Onehot Encoder;Distribution Encoder

b)标准化和归一化:z-score标准化(标准正态分布),min-max归一化

2、缺失值处理:增加不确定性,可能会导致不可靠输出

a)不处理:少量样本缺失

b)删除:大量样本缺失0

c)补全:(同类)均值/中位数/众数补全;高纬映射(One-hot);模型预测(最近邻补全);矩阵补全(R-SVD)

3、异常值处理:减少脏数据

a)简单统计:describe()描述统计,散点图

b)3****法则(正态分布)/箱型图删除/截断

c)利用模型进行离群点检测:聚类,k近邻,One Class SVM,lsolation Forest

4、其他:删除无效列、更改dtypes、删除列中字符串、时间类型转换

三、特征构造

目的:增强数据表达,添加先验知识

1、统计量特征:计数、求和、比例、标准差
2、时间特征:绝度时间、相对数据、节假日、双休日
3、地理信息:分桶
4、非线性变换:取log/平方/根号
5、数据分桶:等频/等距分桶、Best-KS分桶、卡方分桶
6、特征组合/特征交叉

四、特征选择

目的:平衡预测能力和计算复杂度;降低噪声,增强模型预测性能

1、过滤式(Filter):先用特征选择方法对初始特征进行过滤,再训练学习器,特征选择过程与后续学习器无关

Reilef、方差选择、相关系数、卡方检验、互信息法

2、包裹式(Wrapper):  直接把最终要使用学习器的性能作为衡量特征子集的评价准则,其目的在于为给定学习器选择最有利于其性能的特征子集

Las Vegas Wrapper(LVM)

3、嵌入式(Embedding):结合过滤式和包裹式方法,将特征选择与学习器训练过程融为一体、两者在优化过程中完成,即学习器训练过程中自动进行了特征选择

lR+L1或决策树

 

五、类别不平衡

缺点:少类别提供信息太少,没有学会如何判断少数类

1、扩充数据集

2、尝试其他评价指标:AUC

3、调整\theta

4、重采样:过采样、欠采样

5、合成样本:SMOTE

6、选择其他模型:决策树等

7、加权少类别的样本错分代价

8、将大类分解成多个小类    将小类视为异常点,用异常值检测建模

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值