【Python】特征工程:数值特征的缩放与编码

数值特征是结构化竞赛中重要的特征,也是需要处理的特征。一般而言数值特征的操作,包括如下几个方面:

  • 离群点处理

  • 缺失值填充

  • 缩放处理

  • 编码处理

缺失值填充

如果使用非树模型,则需要考虑对数值特征进行填充。缺失值填充的基础方法包括:

  1. 使用统计值填充(均值/中位数/常数)

  2. 最近邻样本填充(行维度)

  3. 基于模型的填充

缩放处理

数值特征在归一化后直接加到深度模型中,直接对原始特征做归一化,或者通过BN层来做归一化。

RankGuass

将数值进行排序,然后将转换到[-1, 1]范围内,然后使用逆误差函数进行转换。

详细案例见:https://zhuanlan.zhihu.com/p/330333894

标准化

最大最小缩放

最大绝对值缩放

鲁邦缩放

计算数值具体的分位点Q1和Q3,

对数转换

分位点转换

计算数值分布的分位点,将分布转为均匀分布或正态分布。

幂变换

将数值转换为更加偏向正态分布的形态

  • Box-Cox 变换

  • Yeo-Johnson 变换

编码处理

原始特征

用原始的数值作为特征,或者在数值上面做一些计算。

二值化/分箱处理

对数值按照大小进行划分,可以直接使用pd.cut实现。

Rank值

统计数值具体大小次序。

离散嵌入

利用分点可以将数值进行离散化,然后作为ID类特征加到模型中,正常参与模型训练。离散化有两个好处:一是引入非线性,二是可以过滤一些异常值。

域嵌入

将一个域内的数值型特征共享一个field embedding,可以理解为使用一个向量来转换。

树编码

通过树模型节点的划分对不同特征值划分到不同的节点,从而对其进行离散化。

27a20e74b2cc1b15007adbc5881f5490.png

 
 
 
 
 
 
 
 
往期精彩回顾




适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载黄海广老师《机器学习课程》视频课黄海广老师《机器学习课程》711页完整版课件

本站qq群851320808,加入微信群请扫码:

fb816d081085276ee0ecbae89835c11a.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值