一、离散化原因
数据离散化是指将连续的数据进行分段,使其变为一段段离散化的区间。分段的原则有基于等距离、等频率或优化的方法。数据离散化的原因主要有以下几点:

  • 算法需要
    比如决策树、朴素贝叶斯等算法,都是基于离散型的数据展开的。如果要使用该类算法,必须将离散型的数据进行。有效的离散化能减小算法的时间和空间开销,提高系统对样本的分类聚类能力和抗噪声能力。
  • 离散化的特征相对于连续型特征更易理解,更接近知识层面的表达
    比如工资收入,月薪2000和月薪20000,从连续型特征来看高低薪的差异还要通过数值层面才能理解,但将其转换为离散型数据(底薪、高薪),则可以更加直观的表达出了我们心中所想的高薪和底薪。
  • 可以有效的克服数据中隐藏的缺陷,使模型结果更加稳定

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

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

三、离散化的方法
1、无监督学习方法

  • 1.1等宽法

等宽法即是将属性值分为具有相同宽度的区间,区间的个数k根据实际情况来决定。比如属性值在[0,60]之间,最小值为0,最大值为60,我们要将其分为3等分,则区间被划分为[0,20] 、[21,40] 、[41,60],每个属性值对应属于它的那个区间
  缺点是对离群点比较敏感,不均匀地分布数据。

  • 1.2等频法

将相同数量的记录放进每个区间。

缺点是可能将相同的数据分到不同的区间。

  • 1.3基于聚类的方法
    基于聚类的方法分为两个步骤,即:
    选定聚类算法将其进行聚类
    将在同一个簇内的属性值做为统一标记。
    注:基于聚类的方法,簇的个数要根据聚类算法的实际情况来决定,比如对于k-means算法,簇的个数可以自己决定,但对于DBSCAN,则是算法找寻簇的个数。

2、有监督学习方法:

  • 1R方法
  • 基于信息熵的方法
  • 基于卡方的方法

四、总结
模型是使用离散特征还是连续特征,其实是一个“海量离散特征+简单模型” 同 “少量连续特征+复杂模型”的权衡。既可以离散化用线性模型,也可以用连续特征加深度学习。就看是喜欢折腾特征还是折腾模型了。通常来说,前者容易,而且可以n个人一起并行做,有成功经验;后者目前看很赞,能走多远还须拭目以待。

大多数人都以为是才智成就了科学家,他们错了,是品格。—爱因斯坦

连续变量离散化的原因相关推荐

  1. 机器学习特征工程之连续变量离散化:聚类法进行分箱

    机器学习特征工程之连续变量离散化:聚类法进行分箱 离散化,就是把无限空间中有限的个体映射到有限的空间中: 根据用户的听音乐的数据来预测哪些歌曲更受欢迎. 假设大部分人听歌都很平均,会不停的听新的歌曲, ...

  2. 机器学习特征工程之连续变量离散化:等频分箱

    机器学习特征工程之连续变量离散化:等频分箱 离散化,就是把无限空间中有限的个体映射到有限的空间中: 根据用户的听音乐的数据来预测哪些歌曲更受欢迎. 假设大部分人听歌都很平均,会不停的听新的歌曲,但是有 ...

  3. 机器学习特征工程之连续变量离散化:连续变量二值化(Binarizer)

    机器学习特征工程之连续变量离散化:连续变量二值化(Binarizer) 离散化,就是把无限空间中有限的个体映射到有限的空间中: 根据用户的听音乐的数据来预测哪些歌曲更受欢迎. 假设大部分人听歌都很平均 ...

  4. 机器学习特征工程之连续变量离散化:等宽分箱

    机器学习特征工程之连续变量离散化:等宽分箱 离散化,就是把无限空间中有限的个体映射到有限的空间中: 根据用户的听音乐的数据来预测哪些歌曲更受欢迎. 假设大部分人听歌都很平均,会不停的听新的歌曲,但是有 ...

  5. 连续变量离散化的几种方法

    连续变量离散化有三种方法 1.等宽离散化 2.等频离散化 3.利用聚类进行离散化 import numpy as np import pandas as pd #参数初始化 datafile = '. ...

  6. 进行数据离散化的原因_数据离散化及其KMeans算法实现的理解

    摘要 这篇文章尝试借用数据离散化这个事给大家讲明白K-Means算法的含义. 数据离散化的理解 数据离散化是数据预处理的一个非常重要的步骤,就是将连续的数据分成几个段. 举个简单例子,好比我们一个班上 ...

  7. 连续变量离散化类别变量

    R内置函数实现数组变量转为因子变量有:cut.split.quantile.bincode,本文主要介绍ggplot提供的几个分组函数. *cut_interval()*按照相同范围分为n组:, cu ...

  8. 离散化处理的原因及优势

    离散化处理的原因及优势 在机器学习中,我们在处理数据的时候,经常把连续性特征离散化,那么我们为什么要进行离散化处理,进行离散化处理的好处是什么? 离散化处理的原因 数据离散化是指将连续的数据进行分段, ...

  9. 数据预处理之数据离散化

    数据离散化的意义 数据离散化是指将连续的数据进行分段,使其变为一段段离散化的区间.分段的原则有基于等距离.等频率或优化的方法.数据离散化的原因主要有以下几点: 1**.算法需要:** 比如决策树.朴素 ...

最新文章

  1. 在OpenWrt中上传文件至路由器
  2. anaconda在ubuntu中安装后没有_你的大数据平台中病毒了!!!记一次HDP安装后中dr.who病毒并修复的过程...
  3. 【贪心】【字典树】Gym - 101466A - Gaby And Addition
  4. database disk image is malformed 问题解决
  5. 马斯克投15亿,价值47000美元的比特币,其实是一群数学家搞出来的……
  6. 【开发者portal在线开发插件系列三】字符串 及 可变长度字符串
  7. SpringBoot整合kafka案例
  8. python subplots_python fig,ax = plt.subplots()
  9. 聚类(3)-- Gaussian Mixtures Model
  10. 天气之子电脑壁纸_今年最受期待的5部日本动画电影,新海诚新作《天气之子》领衔...
  11. number string java_java基础系列(一):Number,Character和String类及操作
  12. python数据爬虫代码_python如何示例爬虫代码
  13. 2020华为软件精英挑战赛初赛-Java版本
  14. gbdt算法 java实现_决策树之 GBDT 算法的回归部分
  15. DIY智能小车篇(四):常见问题 BUG汇总
  16. 延时调用的时候要注意
  17. 路由器回执路由配置_路由器接路由器设置详细图文教程
  18. 阿里巴巴Java面试题目
  19. 流氓软件卸不干净?这6款超强软件卸载神器专治各种流氓软件!
  20. 异星工厂怎么制造机器人_《异星工厂》建设机器人怎么用?建设机器人机制介绍...

热门文章

  1. 使用perf record不能显示函数名称的解决方法
  2. 内部类(成员内部类、静态内部类、方法内部类)
  3. uni-app.08.自定义扩展图标
  4. 开源产品 | TensorBase,基于Rust的现代化开源数据仓库
  5. linux jdk1.8 rpm安装全教程,含安装包
  6. python基础之数据类型
  7. 终结者2服务器维护,《终结者2》12月27日更新维护公告 终结者2更新内容汇总
  8. Java字符流Writer写入文件Reader读取文件
  9. 推荐10个技术公众号
  10. y2b 字幕生成网站