专栏首页木东居士的专栏​特征工程系列:特征构造之概览篇

​特征工程系列:特征构造之概览篇

特征工程系列:特征构造之概览篇

本文为数据茶水间群友原创,经授权在本公众号发表。

关于作者:JunLiang,一个热爱挖掘的数据从业者,勤学好问、动手达人,期待与大家一起交流探讨机器学习相关内容~

0x00 前言

数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程在机器学习中占有相当重要的地位。在实际应用当中,可以说特征工程是机器学习成功的关键。

那特征工程是什么?

特征工程是利用数据领域的相关知识来创建能够使机器学习算法达到最佳性能的特征的过程。

特征工程又包含了 Data PreProcessing(数据预处理)、Feature Extraction(特征提取)、Feature Selection(特征选择)和 Feature construction(特征构造)等子问题,本章内容主要讨论特征构造的方法。

创造新的特征是一件十分困难的事情,需要丰富的专业知识和大量的时间。机器学习应用的本质基本上就是特征工程。 ——Andrew Ng

0x01 特征构造介绍

特征构造意味着从现有的数据中构造额外特征,这些特征通常分布在多张相关的表中。特征构造需要从数据中提取相关信息并将其存入单张表格中,然后被用来训练机器学习模型。这需要我们花大量的时间去研究真实的数据样本,思考问题的潜在形式和数据结构,同时能够更好地应用到预测模型中。

特征构建需要很强的洞察力和分析能力,要求我们能够从原始数据中找出一些具有物理意义的特征。对于表格数据,特征构建意味着将特征进行混合或组合以得到新的特征,或通过对特征进行分解或切分来构造新的特征;对于文本数据,特征够自己按意味着设计出针对特定问题的文本指标;对于图像数据,这意味着自动过滤,得到相关的结构。

特征构造是一个非常耗时的过程,因为每个新的特征通常需要几步才能构造,特别是当使用多张表的信息时。我们可以将特征构造的操作分为两类:“转换”和“聚合”。

0x02 转换

通过从一或多列中构造新的特征,“转换”作用于单张表(在 Python 中,表是一个 Pandas DataFrame )。

例子:客户表信息如下

通过查找 joined 列中的月份或是自然对数化 income 列的数据来构造新的特征。这些都是转换操作,因为它们只用到了一张表的信息。

0x03 聚合

“聚合”是跨表实现的,并使用一对多的关联来对观测值分组,然后计算统计量。

例子:若有另外一张包含客户贷款信息的表格,其中每个客户可能有多项贷款,我们便可以计算每个客户贷款的平均值、最大值和最小值等统计量。 这个过程包括根据不同客户对贷款表进行分组并计算聚合后的统计量,然后将结果整合到客户数据中。以下是我们在 Python 中使用 Pandas 库执行此操作。

0x04 特征构造具体方法

以下机器学习中特征构造的常用方法:

注:由于图像和语音涉及的专业知识比较多,此处不对图像特征构造和语音特征构造展开讨论。

0x0FF 总结

特征构造是一个非常耗时的过程,因为每个新的特征通常需要几步才能构造,特别是当使用多张表的信息时。我们可以将特征构造的操作分为两类:“转换”和“聚合”。

很多机器学习比赛都是直接给出了训练集(特征+类标),我们可以对给出的特征进行“转换”操作,构造更多的特征。而在实际的工作中,很多时候我们都没有现成的特征,需要自己进行“聚合”操作从多个原始数据表中构造出模型所需要的特征。

例如,用户行为数据表中每条记录为某个用户的一次浏览行为或一次点击行为,我们需要通过“聚合”操作构造出用户的行为特征(如:用户最近一次浏览的时长、用户最近一次登录的点击次数等特征),然后再使用“转换”操作来构造更多特征,最后再使用这些特征训练模型。

后续文章将对特征构造展开详细讨论,欢迎大家留言讨论~

预告:下一篇文章将介绍聚合特征构造以及转换特征构造。

本文分享自微信公众号 - 木东居士(Data_Engineering),作者:JunLiang

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 特征工程系列:自动化特征构造

    数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。由此可见,特征工程在机器学习中占有相当重要的地位。在实际应用当中,可以说特征工程是机器学习成功...

    木东居士
  • 特征工程系列:笛卡尔乘积特征构造以及遗传编程特征构造

    关于作者:JunLiang,一个热爱挖掘的数据从业者,勤学好问、动手达人,期待与大家一起交流探讨机器学习相关内容~

    木东居士
  • ​特征工程系列:特征预处理(上)

    关于作者:JunLiang,一个热爱挖掘的数据从业者,勤学好问、动手达人,期待与大家一起交流探讨机器学习相关内容~

    木东居士
  • 谷歌机器学习白皮书全解析 43条黄金法则(二)

    【AI科技评论按】:此白皮书为谷歌总结的机器学习(ML)最优实践方法,浓缩了其多年技术积累与经验,尤其是 YouTube、Google Play 和 Googl...

    AI科技评论
  • 【技术分享】推荐系统中的自动化特征工程

    在机器学习的各个子领域中,特征工程都扮演着重要的角色。业界有这么一句话,数据和特征决定了机器学习算法的上限,而模型、算法的选择和优化只是在不断逼近这个上限。通过...

    腾讯智能钛AI开发者
  • 特征工程之特征选择

        特征工程是数据分析中最耗时间和精力的一部分工作,它不像算法和模型那样是确定的步骤,更多是工程上的经验和权衡。因此没有统一的方法。这里只是对一些常用的方法...

    刘建平Pinard
  • 不想累死就来看看 : 特征工程之特征选择

    地址:https://www.cnblogs.com/pinard/p/9032759.html

    机器学习算法工程师
  • 手把手 | 如何用Python做自动化特征工程

    机器学习的模型训练越来越自动化,但特征工程还是一个漫长的手动过程,依赖于专业的领域知识,直觉和数据处理。而特征选取恰恰是机器学习重要的先期步骤,虽然不如模型训练...

    大数据文摘
  • 资源 | Feature Tools:可自动构造机器学习特征的Python库

    机器学习越来越多地从人工设计模型转向使用 H20、TPOT 和 auto-sklearn 等工具自动优化的工具。这些库以及随机搜索(参见《Random Sear...

    机器之心
  • 推荐系统中模型训练及使用流程的标准化

    导读:本次分享的主题为推荐系统中模型训练及使用流程的标准化。在整个推荐系统中,点击率 ( CTR ) 预估模型是最为重要,也是最为复杂的部分。无论是使用线性模型...

    Sam Gor

扫码关注云+社区

领取腾讯云代金券