zoukankan      html  css  js  c++  java
  • 特征工程--特征编码1

    最近在学习特征工程,整理了几个特征编码的方法:

    方法一:合并编码(Consolidation encoding)

    含义:由于拼写错误,职位、地域位置等变量的描述略有不同,可以将意思相同的分类变量映射到同一变量。

    适用特征:主要处理分类变量。

    优点:可以统一特征,删除无效数据

    缺点:如果变量数量多,需要通过相似度来计算,变量数量少,需要进行人工来识别

    原始数据

    编码后数据

    内蒙古

    内蒙古自治区

    内蒙

    内蒙古自治区

    内蒙古自治区

    内蒙古自治区

    BP

    bp neural network

    Bp

    bp neural network

    bp neural network

    bp neural network

    方法二:多项式编码(polynomial encoding)

    含义:原始特征之间的交互,如果是类别变量的二值特征,他们的交互特征两个特征的乘机x1x2,就是逻辑函数x1ANDx2的关系,如果是数值特征,逻辑关系就是x1✖x2;

    适用特征:类别变量、数值变量

    优点:交互特征构造简单

    缺点:随着构造特征的数量和复杂程度的增加,会增加特征的训练时间和评分时间,消耗计算能力,增加模型的计算成本。

    方法三:categorical embedding

    含义:“把正整数(索引)转换为固定大小的稠密向量”,使的一些原本意义上“离得近”的东西,在转换后的向量中(emdding层输出的向量)确实离得近。即模型的训练的作用使得这些新标签已经蕴含了原始变量的信息。如下图所示,在多维空间中,词语之间的相似程度,使得我们能够可视化词语之间的关系。Embedding层能够让我们捕捉原有特征的内在属性,使得一些原来意义上离得近的东西,在转换后的向量中确实离得近(欧式空间)。举例:新闻中有很多板块,体育、财经、娱乐等,篮球足球等词语必然出现在体育板块,而不会出现在财经板块,我们训练了神经网络使得很多分类问题尽可能正确。意味着神经网络模型中“篮球和足球”经常在一起,证明两者之间的离的近,即emdding里距离近。

     

    适用特征:类别变量、数值变量(仅仅包含整数)

    优点:缩小变量维度,使用cpu,减少内存开销,更快的模型训练

    缺点:神经网络模型训练后的特征难以解读

    参考其他文章后自己总结,如有错误请指正!

    参考来源:

    【1】https://zhuanlan.zhihu.com/p/85242628?utm_source=wechat_session&utm_medium=social&utm_oi=985854868208316416

    【2】https://blog.csdn.net/anshuai_aw1/article/details/83586404

  • 相关阅读:
    黄金连分数
    第39级台阶
    四、绘图可视化之Seaborn
    三、绘图和可视化之matplotlib
    二、pandas入门
    python_111_动态导入模块
    爬虫_python3_抓取猫眼电影top100
    爬虫_python3_urllib
    python_112_网络编程 Socket编程
    python_111_异常处理
  • 原文地址:https://www.cnblogs.com/liu-304711/p/14119242.html
Copyright © 2011-2022 走看看