one-hot编码

作者: 三猫后端 | 来源:发表于2018-07-13 10:11 被阅读9次

原文链接:one-hot编码

微信公众号:机器学习养成记    搜索添加微信公众号:chenchenwings


与上一篇文章隔得有点久,粉快掉没了,哈哈。这次讲讲one-hot编码,也是第四范式很喜欢用的一个方法,有要去他家面试的,可以好好了解一下。

one-hot编码

分类变量(定量特征)与连续变量(定性特征)。我们训练模型的变量,一般分为两种形式。以年收入增长率为例,如果取值为0-1之间任意数,则此时变量为连续变量。如果把增长率进行分段处理,表示成如下形式:[0,0.3],(0.3,0.6],(0.6,1],那么此时变量为分类变量。

特征转换。对于分类变量,建模时要进行转换,通常直接转换为数字。比如将[0,0.3],(0.3,0.6],(0.6,1]表示为0,1,2。原因主要有两点:

1,转换后可以提高模型运算效率。

2,对于一些模型,比如逻辑回归或计算距离时,无法对分类值直接进行计算。

直接转换为数字,也会带来一些问题:

1,转换为数字后,默认为连续变量,违背最初设计,影响效率。

2,转换后的值会影响同一特征在样本中的权重。比如转换为1000和转换为1对模型影响明显不同。

因此,需要更好的编码方式对特征进行转换。

one-hot编码。one-hot编码的定义是用N位状态寄存器来对N个状态进行编码。比如上面的例子[0,0.3],(0.3,0.6],(0.6,1],有3个分类值,因此N为3,对应的one-hot编码可以表示为100,010,001。

使用步骤。比如用LR算法做模型,在数据处理过程中,可以先对连续变量进行离散化处理,然后对离散化后数据进行one-hot编码,最后放入LR模型中。这样可以增强模型的非线性能力。

R语言举例。使用R中的默认数据集CO2,查看数据,发现Type,Treatment等为分类变量。

以Type变量为例,进行one-hot编码。为了观察结果方便,把顺序打乱,观察编码后结果。

优缺点

1,通过one-hot编码,可以对特征进行了扩充。

2,连续变量经过编码后,从一个权重变为多个权重,提升了模型的非线性能力。

3,不需要多参数进行归一化处理。

4,随着将大权重拆分成几个小权重管理特征,降低了异常值对模型的影响,增加了模型稳定性。

5,生成了较大的稀疏矩阵。


推荐文章

· Bagging算法(R语言)

·静态爬虫与地址经纬度转换(python)

·特征工程(一):前向逐步回归(R语言)

·聚类(三):KNN算法(R语言)

·小案例(六):预测小偷行为(python)

·ggplot2:正负区分条形图及美化

扫描二维码,关注我们。

如需转载,请在开篇显著位置注明作者和出处,并在文末放置机器学习养成记二维码和添加原文链接。

快来关注我们吧!

相关文章

  • One-hot与Word2Vec

    one-hot是文本向量化最常用的方法之一。 1.1 one-hot编码 什么是one-hot编码?one-hot...

  • One-Hot编码

    对离散型特征进行one-hot编码是为了让距离的计算显得更加合理。 离散特征进行one-hot编码后,编码后的特征...

  • one hot编码

    一、什么是one-hot编码? One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编...

  • 多类分割One-hot 编码实现方式(转)

    原链接:数据预处理 One-hot 编码的两种实现方式 1. 什么是 One-hot 编码 最直观的理解就是,比如...

  • one-hot encoding

    我是搬运工 One-Hot Encoding One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对...

  • one-hot encoding 与dummy encoding

    One-Hot编码和哑变量应该怎么用 考虑一个具有三个类别的离散型特征,采用One-Hot 编码后: 其中 因此有...

  • 特征提取之pd.get_dummies()

    跳转链接 pandas提供对one-hot编码的函数是:pd.get_dummies() one-hot的基本思想...

  • one-hot编码

    原文链接:one-hot编码 微信公众号:机器学习养成记 搜索添加微信公众号:chenchenwings 与上一...

  • one-hot编码

    对于一些没有排序关系的分类变量(例如{香蕉,苹果,草莓,西瓜}),很多参考资料说转化成one-hot编码来训练。我...

  • one-hot 编码

    定义 独热码,在英文文献中称做 one-hot code, 直观来说就是有多少个状态就有多少比特,而且只有一个比特...

网友评论

    本文标题:one-hot编码

    本文链接:https://www.haomeiwen.com/subject/jwfjpftx.html