如何计算功能上更具体的功能中的功能,以避免长期运行



我想计算二阶的功能(深度= 2(。由于实体结构,特征矩阵计算需要计算如此多的组合,以至于计算需要"年"。

可以通过规则设置再指定要计算的功能列表吗?

我有一个客户表(CID,...(,其中包含与每个客户有关的固定数据(即出生日期(。另外,我还有两个(a和b(不同的表(CID,每月列出的Period,...(来自不同产品的客户月度行为(即#ORDERS(。二阶的通缉功能是每个行为表的订单时间中的含义总和。

当我仅使用一个行为表(A(> 1000功能计算功能时。我认为,当我一击中两次时,我有两个组合。

es = ft.EntitySet(id = 'ES_PRA')
es = es.entity_from_dataframe(entity_id = 'Customer', dataframe = Customer, 
                              index = 'cid')
es = es.entity_from_dataframe(entity_id = 'A', 
                              dataframe = A,
                              make_index = True,
                              index = 'AID',
                              time_index = 'MonthlyReportPeriod')
es = es.entity_from_dataframe(entity_id = 'B', 
                              dataframe = B,
                              make_index = True,
                              index = 'BID',
                              time_index = 'MonthlyReportPeriod')
#
r_Customer_A = ft.Relationship(es['Customer']['cid'],
                                    es['A']['cid'])
es = es.add_relationship(r_Customer_A)
#
r_Customer_B = ft.Relationship(es['Customer']['cid'],
                                    es['A']['cid'])
es = es.add_relationship(r_Customer_B)
#
seed_features=[
  ft.Feature(es["A"]['MonthlyReportPeriod'], primitive=WeightTimeUntil),
  ft.Feature(es["B"]['MonthlyReportPeriod'], primitive=WeightTimeUntil)
]
features, feature_names = ft.dfs(entityset = es, target_entity = 'Customer', 
                                 agg_primitives = ['sum','last'],
                                 seed_features=seed_features,
                                 trans_primitives = [MultiplyNumeric],
                                max_depth=2) 

我想指定表A和B中的每列的汇总原始列:

cid: - 每月雷波特勒: -

(#order(:sum,last,sum(withingTimeuntil/乘数(

(#销售(:总和,均值,...

featuretools的API不提供列级的可选设置。

我在github上发布了一个请求

https://github.com/featuretools/featuretools/issues/655

最新更新