几行Python代码就可以提取数百个时间序列特征

传统的机器学习算法不能捕捉时间序列数据的时间顺序。数据科学家需要执行相关的特征工程,将数据的重要特征捕获到几个指标中。生成大量的时间序列特征并从中提取相关特征是一项耗时且繁琐的工作。

创新互联专业为企业提供泉港网站建设、泉港做网站、泉港网站设计、泉港网站制作等企业网站建设、网页设计与制作、泉港企业网站模板建站服务,10余年泉港做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

python的tsfresh包可以为时间序列数据生成标准的数百个通用特性。在本文中,我们将深入讨论tsfresh包的使用。

tsfresh 是一个可以生成数百个相关的时间序列特征的开源包。 从 tsfresh 生成的特征可用于解决分类、预测和异常值检测用例。

tsfresh 包提供了对时间序列数据执行特征工程的各种功能,包括:

  • 特征生成
  • 特征选择
  • 与大数据的兼容性

安装tsfresh 也非常的简单,官方提供了pip和conda的安装方式:

pip install -U tsfresh# orconda install -c conda-forge tsfresh

1、特征生成

tsfresh 包提供了一个自动特征生成 API,可以从 1 个时间序列变量中生成 750 多个相关特征。 生成的特征广泛,包括:

  • 描述性统计(平均值、最大值、相关性等)
  • 基于物理的非线性和复杂性指标
  • 数字信号处理相关功能
  • 历史压缩特征

使用 tsfresh.extract_features() 函数可以为 1 个时间序列变量从多个域生成 789 个特征。

import pandas as pdfrom tsfresh import select_features# Read the time-series datadf = pd.read_excel("train.xlsx", parse_dates=['date']).set_index('date')# automated feature generationfeatures = tsfresh.extract_features(df, column_id="date", column_sort="date")

因为特征太多,所以具体的所有特征的介绍请查看官方文档。

2、特征选择

tsfresh 包还提供了一个基于假设检验的特征选择实现,可以用于识别目标变量的相关特征。 为了限制不相关特征的数量,tsfresh 包含了fresh算法(fresh 代表基于可扩展假设测试的特征提取)。

tsfresh.select_features() 函数用户可以实现特征选择。

3、兼容大数据

当我们有大量的时间序列数据时。tsfresh还提供api来扩展特征的生成/提取,以及针对大量数据的特征选择实现:

  • 多线程处理:默认tsfresh包可以将特征生成/提取和特征选择在多核上并行执行。
  • 分布式框架:tsfresh还实现了一个自己的分布式框架,将特征计算分布在多台机器上加快计算速度。
  • Spark兼容:tsfresh还可以使用spark或Dask来处理非常大的数据。

最后总结,tsfresh可以通过几行Python代码中为时间序列特性生成和选择相关特性。它会自动从基于时间的数据样本的多个域中提取和选择 750 +个经过实际测试的特征。 它减少了数据科学家浪费在特征工程上的大量工作时间。

并且时间序列数据是相当大的,tsfresh 也通过多线程、支持dask和spark来处理单机处理不了的大数据样本。

本文名称:几行Python代码就可以提取数百个时间序列特征
文章源于:http://www.shufengxianlan.com/qtweb/news27/275277.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联