数据分类:特征处理

特征处理

问题1:连续特征和离散特征同时存在时如何处理?
quora上有人问到了这方面的问题:What are good ways to deal with problems where you have both discrete and continous features?主要的思路是对离散的特征进行二值化处理,比如答案中举的例子:

x = 价格(连续型特征)  种类类别(离散型特征)  y = 产品卖出数量  
[35.99 Red]  
[42.95 Green]  
[10.50 Red]  
[74.99 Blue]

由于上面产品的类别有3种可能的取值,所以我们可以用3个虚拟的变量来特换掉种类类别这个特征,这种特征处理方式跟自然语言处理的one-hot处理方式一样,所以我们可以将上面的特征进行处理后每个样本可以用一个4维的向量来表示:

[35.99 1 0 0]  
[42.95 0 1 0]  
[10.50 1 0 0]   
[74.99 0 0 1]

特征经过上面的预处理后,便可以使用这些特征做回归啊等机器学习任务,如果使用线性回归的话,我们需要学习5个权重(每一个特征对应一个权重,偏执项也可以视为一个权重, (w1x1+w2x2+w3x3+w4x4+w0) (w1x1+w2x2+w3x3+w4x4+w0)。此外,我们还需要对每一列的特征进行均值归一化,即 (xcoliμ)/σ (xcoli−μ)/σ。 。其实对样本种类类别,我们可以只用两个维度的进行表示也可以可行的,即以如下方式进行表示:

[35.99 0 0]  
[42.95 0 1]  
[10.50 0 0]   
[74.99 1 0]  

一般对于特征中既包含有连续特征又包含有离散特征,对于离散特征差不多都采用这种方式进行处理,但是这种方式有一个比较大的问题,就是当离散特征可能的取值比较多时,会导致通过这种方式处理后的特征维度非常高(one-hot表示方法都有这样一种特点),向量非常的稀疏,在存储以及运算的时候,可以通过使用一些支持稀疏表示的矩阵库进行处理(比如Armadillo有稀疏矩阵的表示)。

一些不同的回归模型比较:
1. 7 Types of Regression Techniques you should know
2. 10 types of regressions. Which one to use?
3. Regression analysis using Python
4. scikit learn logistic regression


from: http://yongyuan.name/blog/feature-engineering-note.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值