【069】连续特征离散化

内容目录

一、工业界连续特征离散化二、离散化处理的一般过程三、离散化的优点四、连续特征和离散特征的处理原文见公众号:python宝

一、工业界连续特征离散化

  在工业界,很少直接将连续值作为逻辑回归模型的特征输入,而是将连续特征离散化为一系列0、1特征交给逻辑回归模型,这样做的优势有以下几点:

       1)离散特征的增加和减少都很容易,易于模型的快速迭代;
        2)稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;
        3)离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰;
        4)逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力,加大拟合;
        5)离散化后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力;
        6)特征离散化后,模型会更稳定,比如如果对用户年龄离散化,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人。当然处于区间相邻处的样本会刚好相反,所以怎么划分区间是门学问;
        7)特征离散化以后,起到了简化了逻辑回归模型的作用,降低了模型过拟合的风险。

二、离散化处理的一般过程

  不同模型对数据要求不一样,就需要对数据做相应的处理。对于一般的线性回归模型,要求自变量的数据类型为连续型,故需要对离散的数据连续化,一般对有序离散采取0、1、2、3…这类编码,对无序离散变量生成多个哑变量。对于决策树模型,需要将连续数据离散化;为了展现连续数据的分布特征,绘制直方图时,也需对连续数据离散化。

        1)对连续特征值按照某种指定的规则进行排序
        2)初步确定连续属性的划分断点
        3)按照某种给定的判断标准继续分割断点或合并断点
        
4)如果第三步得到判断标准的终止条件,则终止整个连续特征离散化的过程,否则继续               按第三步执行

三、离散化的优点

  数据离散化是指将连续的数据进行分段,使其变为一段段离散化的区间。分段的原则有基于等距离、等频率或优化的方法。比如决策树、朴素贝叶斯等算法,都是基于离散型的数据展开的。如果要使用该类算法,必须将离散型的数据进行。有效的离散化能减小算法的时间和空间开销,提高系统对样本的分类聚类能力和抗噪声能力。

        1)易于模型的快速迭代
        2)稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展
        3)离散化后的特征对异常数据有很强的鲁棒性
        4)提升了逻辑回归模型的表达能力,加大拟合
        5)模型更稳定
        6)简化逻辑回归模型,降低其过拟合风险 

四、连续特征和离散特征的处理

1、连续特征的处理

  • z-score标准化:这是最常见的特征预处理方式,基本所有的线性模型在拟合的时候都会做 z-score标准化。具体的方法是求出样本特征x的均值mean和标准差std,然后用(x-mean)/std来代替原特征。

  •  max-min标准化:也称为离差标准化,预处理后使特征值映射到[0,1]之间。具体的方法是求出样本特征x的最大值max和最小值min,然后用(x-min)/(max-min)来代替原特征。注:这种方法的问题就是如果测试集或者预测数据里的特征有小于min,或者大于max的数据,会导致max和min发生变化,需要重新计算。所以实际算法中, 除非你对特征的取值区间有需求,否则max-min标准化没有 z-score标准化好用。

  • L1/L2范数标准化

    https://blog.csdn.net/u010986753/article/details/97373789?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158399772919724839259586%2522%252C%2522scm%2522%253A%252220140713.130056874..%2522%257D&request_id=158399772919724839259586&biz_id=0&utm_source=distribute.pc_search_result.none-task

2、离散特征的处理

  • 对于离散的特征基本就是按照one-hot编码,该离散特征有多少取值,就用多少维来表示该特征。

3、总结

        虽然大部分机器学习模型都需要做标准化和归一化,也有不少模型可以不做做标准化和归一化,主要是基于概率分布的模型,比如决策树大家族的CART,随机森林,bagging和boosting等。当然此时使用标准化也是可以的,大多数情况下对模型的泛化能力也有改进。基于参数的模型或基于距离的模型,都要进行标准化和归一化。

【069】连续特征离散化

About Me:小婷儿

 本文作者:小婷儿,专注于python、数据分析、数据挖掘、机器学习相关技术,也注重技术的运用

● 作者博客地址:https://blog.csdn.net/u010986753

 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

 版权所有,欢迎分享本文,转载请保留出处

 微信:tinghai87605025 联系我加微信群

 QQ:87605025

 QQ交流群py_data 483766429

 公众号:python宝 或 DB宝

 提供OCP、OCM和高可用最实用的技能培训

● 题目解答若有不当之处,还望各位朋友批评指正,共同进步

【069】连续特征离散化

如果你觉得到文章对您有帮助,欢迎赞赏哦!有您的支持,小婷儿一定会越来越好!

相关文章: