0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习处理数据为什么把连续性特征离散化

Dbwd_Imgtec 来源:未知 作者:易水寒 2018-11-17 09:31 次阅读

在学习机器学习中,看过挺多案例,看到很多人在处理数据的时候,经常把连续性特征离散化。为此挺好奇,为什么要这么做,什么情况下才要做呢。

一、离散化原因

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

1、算法需要

比如决策树、朴素贝叶斯等算法,都是基于离散型的数据展开的。如果要使用该类算法,必须将离散型的数据进行。有效的离散化能减小算法的时间和空间开销,提高系统对样本的分类聚类能力和抗噪声能力。

2、离散化的特征相对于连续型特征更易理解,更接近知识层面的表达

比如工资收入,月薪2000和月薪20000,从连续型特征来看高低薪的差异还要通过数值层面才能理解,但将其转换为离散型数据(底薪、高薪),则可以更加直观的表达出了我们心中所想的高薪和底薪。

3、可以有效的克服数据中隐藏的缺陷,使模型结果更加稳定

二、离散化的优势

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

1. 离散特征的增加和减少都很容易,易于模型的快速迭代;

2. 稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;

3. 离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰;

4. 逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后,每个变量有单独的权重,相当于为模型引入了非线性,能够提升模型表达能力,加大拟合;

5. 离散化后可以进行特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力;

6. 特征离散化后,模型会更稳定,比如如果对用户年龄离散化,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人。当然处于区间相邻处的样本会刚好相反,所以怎么划分区间是门学问;

7. 特征离散化以后,起到了简化了逻辑回归模型的作用,降低了模型过拟合的风险。

三、离散化的方法

1、无监督学习方法

等宽法

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

等频法

等宽法即是将属性值分为具有相同宽度的区间,区间的个数k根据实际情况来决定。比如有60个样本,我们要将其分为k=3部分,则每部分的长度为20个样本。

基于聚类的方法

基于聚类的方法分为两个步骤,即:

选定聚类算法将其进行聚类

将在同一个簇内的属性值做为统一标记。

注:基于聚类的方法,簇的个数要根据聚类算法的实际情况来决定,比如对于k-means算法,簇的个数可以自己决定,但对于DBSCAN,则是算法找寻簇的个数。

2、有监督学习方法:

1R方法

基于信息熵的方法

基于卡方的方法

四、总结

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模型
    +关注

    关注

    1

    文章

    3226

    浏览量

    48806
  • 机器学习
    +关注

    关注

    66

    文章

    8406

    浏览量

    132558

原文标题:机器学习模型为什么要将特征离散化?

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    连续特征归一的常用方法

    连续特征还有一种处理方式是,先分桶/分箱(如等频/等距的分)[待写]进行离散后再使用离散
    发表于 05-24 08:30

    请问如何确保ISERDES输出数据连续性

    。但是,该设计并不能保证位的正确连续性,即使它确实保证了字的对齐。因此,例如,如果我从发送端发送0123456789ABCDEF,我将在接收端看到CDEF0123456789AB。每个单词,例如0123
    发表于 06-01 17:18

    如何保持电源的连续性

    需要备用电源? 保持电源连续性
    发表于 02-02 06:03

    连续属性离散的Imp-Chi2算法

    连续属性离散机器学习数据挖掘领域中的一个重要问题,离散
    发表于 04-17 08:39 11次下载

    连续特征离散方法综述

    离散特征数据挖掘的过程中具有重要的作用,如何将实际数据集中的连续特征最好地
    发表于 01-03 17:02 25次下载

    光学连续性测试器

    光学连续性测试器
    发表于 09-23 14:45 740次阅读
    光学<b class='flag-5'>连续性</b>测试器

    发声式连续性测试仪

    发声式连续性测试仪 当两个
    的头像 发表于 09-24 14:36 3242次阅读
    发声式<b class='flag-5'>连续性</b>测试仪

    低阻抗电路的连续性测试仪

    低阻抗电路的连续性测试仪   或连续性
    发表于 09-24 14:55 952次阅读
    低阻抗电路的<b class='flag-5'>连续性</b>测试仪

    解决机器人控制问题 能很好的处理离散连续动作空间

    母公司Alphabet的DeepMind的研究人员最近提出了一种技术:连续-离散混合学习,即可以同时优化离散连续动作,以其本来的形式
    发表于 01-10 09:48 1655次阅读

    机器学习算法学习特征工程1

    特征工程是机器学习过程中的关键步骤,涉及将原始数据转换为机器学习算法可以有效使用的格式。在本篇博
    的头像 发表于 04-19 11:38 783次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>算法<b class='flag-5'>学习</b>之<b class='flag-5'>特征</b>工程1

    机器学习算法学习特征工程2

    特征工程是机器学习过程中的关键步骤,涉及将原始数据转换为机器学习算法可以有效使用的格式。在本篇博
    的头像 发表于 04-19 11:38 840次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>算法<b class='flag-5'>学习</b>之<b class='flag-5'>特征</b>工程2

    机器学习算法学习特征工程3

    特征工程是机器学习过程中的关键步骤,涉及将原始数据转换为机器学习算法可以有效使用的格式。在本篇博
    的头像 发表于 04-19 11:38 1015次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>算法<b class='flag-5'>学习</b>之<b class='flag-5'>特征</b>工程3

    连续性测试仪电路解析

    测试电路的连续性是调试硬件时必不可少的步骤。当我们没有配备适当的工具和设备来处理它时,硬件调试可能是一个真正的痛苦。该连续性测试仪电路将为调试问题提供廉价有效的解决方案。上述电路能够检查两点之间的导电路径连接。
    的头像 发表于 06-29 16:49 862次阅读
    <b class='flag-5'>连续性</b>测试仪电路解析

    连续性测试仪电路图分享

    连续性测试仪是一种电子设备,用于测试电路的连续性。它通过检测电路中的电阻或电导来评估电路的连续性和完整
    的头像 发表于 02-12 15:24 757次阅读
    <b class='flag-5'>连续性</b>测试仪电路图分享

    机器学习中的数据处理特征工程

    机器学习的整个流程中,数据处理特征工程是两个至关重要的步骤。它们直接决定了模型的输入质量,进而影响模型的训练效果和泛
    的头像 发表于 07-09 15:57 393次阅读