Python 使用featuretools中的截止时间进行预测

Python 使用featuretools中的截止时间进行预测,python,machine-learning,prediction,featuretools,feature-engineering,Python,Machine Learning,Prediction,Featuretools,Feature Engineering,我正在建立一个模型,预测用户是否会根据其阅读历史记录等(活动)购买订阅。我正在使用featuretools()自动化特征工程,这就是它变得棘手的地方: 鉴于以下情况,我应如何确定培训数据的截止时间/窗口: 培训窗口应为1个月、6个月等多长时间 考虑到订阅前后用户的活动可能不同,我应该根据当前订阅者订阅的时间来切断数据(防止泄漏)。但我应该什么时候为非订户切断 如何确定训练数据的截止时间取决于以下因素: 培训窗口应为1个月、6个月等多长时间 我想你可以尝试不同的训练窗口大小,看看哪个能在模型上

我正在建立一个模型,预测用户是否会根据其阅读历史记录等(活动)购买订阅。我正在使用
featuretools
()自动化特征工程,这就是它变得棘手的地方:

鉴于以下情况,我应如何确定培训数据的截止时间/窗口:

  • 培训窗口应为1个月、6个月等多长时间
  • 考虑到订阅前后用户的活动可能不同,我应该根据当前订阅者订阅的时间来切断数据(防止泄漏)。但我应该什么时候为非订户切断

如何确定训练数据的截止时间取决于以下因素:

培训窗口应为1个月、6个月等多长时间

我想你可以尝试不同的训练窗口大小,看看哪个能在模型上得到更好的效果

考虑到订阅前后用户的活动可能不同,我应该根据当前订阅者订阅的时间来切断数据(防止泄漏)。但我应该什么时候为非订户切断

我认为您可以随机选择它们,或者在代表您将来将在这些订户上使用该模型的时间选择它们


我们的开源库非常适合构建这个标记过程。如果您在Compose中定义了预测问题,它将根据您定义预测问题的方式自动选择负面示例。它还有一个参数化的预测窗口,允许您在特定时间生成标签。让我知道这是否有帮助。

谢谢杰夫-我只想对您和您的团队在功能实验室所做的出色工作表示感谢!在featuretools上进行了惊人的工作,并在这里提供了强大的支持。我一定会查看Compose,希望它能成为featuretools中的本地功能!谢谢伊万,我们感谢你的好话,我们很乐意帮助你!
feature_matrix, feature_defs = ft.dfs(entityset=es,
                                     target_entity="users",
                                     max_depth=2,
                                     agg_primitives=["sum", "std", "max", "min", "mean", "median", "count", "percent_true", "num_unique", "mode", 
                                                     "avg_time_between"],
                                     trans_primitives=["day", "year", "month", "weekday", "time_since_previous", "time_since", "is_weekend"],
                                     cutoff_time=cutoff_times,
                                     cutoff_time_in_index=True,
                                     training_window=ft.Timedelta(180,"d"),
                                     n_jobs=8, verbose=True)