特征离散化

一、为什么离散化,离散化的优势

在机器学习中,在很多案例中,人们在处理数据的时候,常常把连续特征离散化。那么为什么要用离散特征呢?这么做有什么优势?

特征离散化

数据离散化是将连续的数据进行分段,使其变为一段段离散化的区间。

简单点来说:

离散化指把连续型数据切分为若干“段”,也称bin,是数据分析中常用的手段。切分的原则有等距,等频,优化,或根据数据特点而定。在营销数据挖掘中,离散化得到普遍采用。

连续特征离散化的基本假设,是默认连续特征不同区间的取值对结果的贡献是不一样的。
特征的连续值在不同的区间的重要性是不一样的,所以希望连续特征在不同的区间有不同的权重,实现的方法就是对特征进行划分区间,每个区间为一个新的特征。常用做法,就是先对特征进行排序,然后再按照等频离散化为N个区间。

离散化的优势

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

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

数据离散化的方法

  • 等距

将连续型变量的取值范围均匀划成n等份,每份的间距相等。例如,客户订阅刊物的时间是一个连续型变量,可以从几天到几年。采取等距切分可以把1年以下的客户划分成一组,1-2年的客户为一组,2-3年为一组…,以此类分,组距都是一年。

  • 等频

把观察点均匀分为n等份,每份内包含的观察点数相同。还取上面的例子,设该杂志订户共有5万人,等频分段需要先把订户按订阅时间按顺序排列,排列好后可以按5000人一组,把全部订户均匀分为十段。

等距和等频在大多数情况下导致不同的结果。等距可以保持数据原有的分布,段落越多对数据原貌保持得越好。等频处理则把数据变换成均匀分布,但其各段内观察值相同这一点是等距分割作不到的。

优化离散:需要把自变量和目标变量联系起来考察。切分点是导致目标变量出现明显变化的折点。常用的检验指标有卡方,信息增益,基尼指数,或WOE(要求目标变量是两元变量)
离散连续型数据还可以按照需要而定。比如,当营销的重点是19-24岁的大学生消费群体时,就可以把这部分人单独划出。
离散化处理不免要损失一部分信息。很显然,对连续型数据进行分段后,同一个段内的观察点之间的差异便消失了。同时,进行了离散处理的变量有了新值。比如现在可以简单地用1,2,3…这样一组数字来标志杂志订户所处的段落。这组数字和原来的客户订阅杂志的时间没有直接的联系,也不再具备连续型数据可以运算的关系。例如,使用原来的数据,我们可以说已有两年历史的客户订阅时间是只有一年历史客户的两倍,但经过离散处理后,我们只知道第2组的客户的平均订阅时间高于第一组客户,但无法知道两组客户之间的确切差距。

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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值