Datawhale 零基础入门数据挖掘二手车预测task03
作者:互联网
Detail 零基础入门数据挖掘 (心跳信号分类) 学习反馈TASK1
使用语言:python
Tas1 – Task5
Task2 特征工程分析
- 目标:数据处理
- 操作内容:异常处理、特征归一化/标准化、数据分桶、缺失值处理、特征构造、特征筛选、降维
1.学习了本次介绍的关于异常值处理的代码包装模块,感觉大佬还是强
2.关于分桶的概念与运用
定义:分桶是离散化的常用方法,将连续型特征离线化为一系列 0/1 的离散特征;当数值特征跨越不同的数量级的时候,模型可能会只对大的特征值敏感,这种情况可以考虑分桶操作。分桶操作可以看作是对数值变量的离散化,之后通过二值化进行 one-hot 编码。
优势:
- 离散后稀疏向量内积乘法运算速度更快,计算结果也方便存储,容易扩展;
- 离散后的特征对异常值更具鲁棒性,如 age>30 为 1 否则为 0,对于年龄为 200 的也不会对模型造成很大的干扰;
- LR 属于广义线性模型,表达能力有限,经过离散化后,每个变量有单独的权重,这相当于引入了非线性,能够提升模型的表达能力,加大拟合;
- 离散后特征可以进行特征交叉,提升表达能力,由 M+N 个变量编程 M*N 个变量,进一步引入非线形,提升了表达能力;
- 特征离散后模型更稳定,如用户年龄区间,不会因为用户年龄长了一岁就变化
- LightGBM 在改进 XGBoost 时就增加了数据分桶,增强了模型的泛化性
等距分桶
- 当数字跨越多个数量级时,最好用10个幂(或任何常数的幂)来分组:0-9、10-99、100-999、100-9999等。容器宽度呈指数增长,从O(10)、O(100)到O(1000)和以上。要从计数映射到bin,取计数的log值。对数变换是处理具有重尾分布的正数的有力工具。
等频分桶
- 对于等频分桶,也称为按分位数分桶,为了计算分位数和映射数据到分位数箱,我们可以使用 Pandas 库。pandas.DataFrame.quantile 和 pandas.Series.quantile 用于计算分位数。pandas.qcut 将数据映射到所需数量的分位数。
3.特征筛选
-
过滤式
-
包裹式
-
嵌入式(下一章进行学习)
需要对以上三种方法的汇总比较(下次更新)
标签:分桶,特征,Datawhale,离散,表达能力,位数,数据挖掘,task03,pandas 来源: https://blog.csdn.net/lolin99/article/details/115876188