Featuretools 学习4 - 特征原语

特征原语

特征原语(Feature primitives)是Featuretools的构建块。它们定义了可应用于原始数据集以生成新特征的独立计算。因为原语仅限制输入和输出数据类型,所以它们可以应用于数据集并可堆叠后生成新的计算。

为什么原语?

人们用来创建特征的潜在功能空间很大。通过将通用特征工程计算分解为原语组件,我们能够捕获今天创建的特征的底层结构。
原语仅限制输入和输出数据类型。这意味着它们可用于将一个领域中已知的计算转移到另一个领域。考虑一个通常由数据科学家为事务或事件日志数据计算的功能:事件之间的平均时间。该特征在预测欺诈行为或将来的客户参与方面非常有用。
DFS通过堆叠“time_since_previous”和“mean”两个原语获得相同的特征。
在这里插入图片描述
原语的第二个优点是可用于以参数化的方式快速枚举许多有趣的特征。DFS使用此方法来获得集中不同的方式实现自上次事件以来的时间汇总。
在这里插入图片描述

聚合和转换原语

聚合原语
将相关实例作为输入并输出单个值。它们适用于实体集中的父子关系,例如“count”、“sum”、“avg_time_between”。。。
转换原语
将实体中的一个或多个变量作为输入,并为该实体输出新变量。它们适用于单个实体。例如“hour”、“time_since_previous”、“absolute”。。。
可以调用ft.list_primitives(),列出并描述Featuretools中每个内置原语的dataframe。也可以通过访问https://primitives.featurelabs.com/获得所有可用原语的列表。
在这里插入图片描述

定义自定义原语

Featuretools中的原语库正在不断扩展。用户可以使用以下API定义自己的原语。要定义原语,用户将:
(1)指定原语的类型,是聚合原语还是转换原语;
(2)定义输入和输出数据类型;
(3)用python编写函数进行计算;
(4)使用属性进行注释以约束其应用方式。

简单的自定义原语

在这里插入图片描述
在这里插入图片描述
以上定义的两个原语,可以在dfs的函数中使用。
在这里插入图片描述

单词计数举例

在这里插入图片描述
在这里插入图片描述

多输入类型

如果原语需要多个特征作为输入,则input_types具有多个元素,比如[Numeric, Numeric]表示需要两个Numeric特征作为输入。
在这里插入图片描述
参考官方链接:Feature primitives

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值