【实用机器学习】2.4 特征工程

什么是特征工程

  • 特征工程(Feature Engineering)特征工程是将原始数据转化成更好的表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度。
  • 特征工程简单讲就是发现对因变量y有明显影响作用的特征,通常称自变量x为特征,特征工程的目的是发现重要特征。
  • 如何能够分解和聚合原始数据,以更好的表达问题的本质?这是做特征工程的目的。 “feature engineering is manually designing what the input x’s should be.” “you have to turn your inputs into things the algorithm can understand.”
  • 特征工程是数据挖掘模型开发中最耗时、最重要的一步。

在深度学习(DL)出现以前,特征工程对于机器学习(ML)至关重要。 深度学习可以自动提取特征(例如CNN用于提取图像特征),让特征提取变得简单,但是比较消耗数据和算力资源。而在传统机器学习中,需要手动提取特征,这也成为了机器学习的核心工作。

Untitled

常见类型数据的特征工程

表格数据特征(Tabular Data Feature)

  • Inf/float:直接使用,或者将数据划分为n个区间。举例来说,在我们人看来100万和101万其实没太大区别(我们不需要如此细粒度的数据),但是对机器来说就是完全不一样的东西,因此可以把他们都划分在100-110万之间。

  • 类别数据(Categorical data):独热编码(One-hot Encoding)。举例来说,我们要对房子进行分类,如果有100类,可能只要前面10种比较常见,后面的的可能是噪音或者不常见的,那些长尾的类型全部可以变成Unknown 类型。

    Untitled

  • 时间数据(Date-time):一个时间数据类型可以展开表示成以下的向量。可以看到有day_of_year 表示一年的第几天,week_of_year 表示一年的第几个星期等。因为人在一年的不同时间的行为是不一样的,可以作为重要的特征。

    Untitled

  • 特征结合(Feature combination):我们还可以将不同特征进行交叉,把[cat, dog]e和[male, femal]交叉相乘,产生新的4个类别,再对新的类别进行独热编码。特征结合的往往是我们认为具有相关行的特征。

    Untitled

    • (cat, male)⇒[1, 0, 0, 0]
    • (cat, female)⇒ [0, 1, 0, 0]
    • (dog, male)⇒[0, 0, 1, 0]
    • (dog, female)⇒[0, 0, 0, 1]

文本特征(Text Feature)

  • 将文本用词元特征(token features)表示
    • 词袋(Bag of Words, BoW)模型:先把每个词用one-hot encoding表示,然后全部相加。局限在于我们需要仔细地构建词典,不能太大也不能太小;并且时序信息会丢失。

      Untitled

    • 词嵌入(Word Embeddings) :例如Word2vec。将词嵌入到向量空间中,使得相似的词语在空间中的距离较近。

      Untitled

    • 预训练通用语言模型(Pre-trained universal language models):例如BERT,GPT-3。目前依靠巨大的transformer模型,在没有标注的数据上通过自监督学习来训练,能够抽取较好的时序信息。效果去前面的方法好,但是训练成本较大。

      Untitled

图片/视频特征(Image/Video Features)

  • 传统上采用手动提取特征,例如SIFT。
  • 目前都依靠预训练好的深度神经网络来实现特征提取。

Untitled

总结

  • 特征是机器学习中相当重要的部分
  • 目前使用深度学习来抽取特征已经是主流了。但在Tabular data上使用深度学习还有点困难,因为没有较大的公用的Tabular data数据集。

参考资料

2.4 特征工程【斯坦福21秋季:实用机器学习中文版】_哔哩哔哩_bilibili

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值