数据表示与特征工程

数据表示与特征工程

一、分类变量

1.One-Hot编码(虚拟编码)

**思想:**将一个分类变量替换成为一个或多个新特征,新特征取值为0或1。

2.数字分类

**理由:**便于存储、数据的收集方式简单

**注:**pandas中的get_dummies函数只编码字符串特征,而将数字看作是连续的,不会改变整数特征为其创建虚拟变量。

解决方案:

  • 使用scikit-learn中的OneHotEncoder(只适用于值为整数的分类变量)
  • 将(代表分类的)数字变量转变成字符串特征

二、分箱(离散化)、线性模型与树

分箱(离散化):

作用:让线性模型在连续数据上更加强大

含义:将特征的输入范围划分为固定个数的箱子,数据点可以用它所在的箱子来表示。

比较分箱后的线性模型与树

线性模型
线性模型的表现力在数据变换后得到提高分箱特征对于基于树的模型通常不会产生更好的效果
灵活性得到提高灵活性降低
针对单个特征可以同时查看多个特征

三、交互特征与多项式特征

1.交互特征

原理:线性模型既可以学习偏移也可以学习斜率

要使每个箱子都有不同的斜率,可以添加交互特征或乘积特征,用来表示数据点所在的箱子以及数据点在x轴上的位置。该特征是箱子指示符与原始特征的乘积。乘积特征可以看作每个箱子x轴特征的单独副本。它在箱子内等于原始特征,在其他位置等于零。

2.多项式特征

高次多项式在边界上或数据很少的区域可能有极端表现(好像叫龙格震荡

四、单变量非线性变换

基于树的模型只关注特征的顺序,线性模型和神经网络依赖于每个特征的尺度和分布

log、exp变换可以帮助调节数据的相对比例,从而改进线性模型和神经网络的学习效果

sin、cos变换可以用来处理具有周期性模式的数据

大部分模型都在每个特征大致遵循高斯分布时表现最好。

五、自动化特征选择

判断特征作用大小的三种策略:单变量统计基于模型的选择迭代选择

1.单变量统计

算法

计算每个特征和目标值之间的关系是否存在统计显著性,然后选择具有最高置信度的特征。

特点

速度快、不需要构建模型;完全独立于特征选择之后应用的模型

所有舍弃参数的方法都使用阈值来舍弃所有p值过大的特征。

计算阈值常用的两种方法:选择固定数量的k个特征,选择固定百分比的特征

2.基于模型的特征选择

算法

使用一个监督机器学习模型来判断每个特征的重要性,仅保留最重要的特征。用于特征选择的监督模型不需要与用于最终监督模型相同。

3.迭代特征选择

算法

构建一系列模型,每个模型都使用不同数量的特征。有两种基本方法:

  • 开始时没有特征,逐个添加特征,直到满足终止条件
  • 从所有特征开始,逐个删除特征,直到满足终止条件
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值