STUMPY是一个功能强大且可扩展的Python库,专门用于现代时间序列分析。它的核心功能是高效计算矩阵概况(matrix profile),这是一种强大的技术,可以快速识别时间序列中的模式、异常和相似性。
STUMPY的主要优势在于它可以自动识别时间序列中的重要模式和结构,而无需人工指定参数或预先了解数据。通过计算矩阵概况,STUMPY可以快速发现:
这使得STUMPY成为处理大规模时间序列数据的强大工具。无论您是学术研究人员、数据科学家,还是对时间序列分析感兴趣的开发人员,STUMPY都能帮助您更快地从数据中获取洞察。

STUMPY的使用非常简单直观。以下是一些常见用例的代码示例:
import stumpy import numpy as np your_time_series = np.random.rand(10000) window_size = 50 # 大致的模式长度 matrix_profile = stumpy.stump(your_time_series, m=window_size)
import stumpy import numpy as np from numba import cuda your_time_series = np.random.rand(10000) window_size = 50 all_gpu_devices = [device.id for device in cuda.list_devices()] matrix_profile = stumpy.gpu_stump(your_time_series, m=window_size, device_id=all_gpu_devices)
import stumpy import numpy as np your_time_series = np.random.rand(3, 1000) # 3个维度,每个维度1000个数据点 window_size = 50 matrix_profile, matrix_profile_indices = stumpy.mstump(your_time_series, m=window_size)
import stumpy import numpy as np from dask.distributed import Client with Client() as dask_client: your_time_series = np.random.rand(3, 1000) window_size = 50 matrix_profile, matrix_profile_indices = stumpy.mstumped(dask_client, your_time_series, m=window_size)
STUMPY在处理大规模时间序列数据时表现出色。下图展示了STUMPY在不同硬件配置下处理各种长度时间序列的性能:

从图中可以看出,STUMPY可以有效利用多核CPU和GPU资源,显著提升计算速度。对于长度达到1亿的时间序列,使用多GPU配置可以在几小时内完成矩阵概况的计算。
STUMPY在多个领域都有广泛应用,包括但不限 于:
无论是需要发现周期性模式、检测异常、进行时间序列分割,还是寻找相似序列,STUMPY都能提供强大而灵活的解决方案。
STUMPY是一个开源项目,拥有活跃的社区支持。如果您在使用过程中遇到任何问题,可以:
项目维护者和社区成员会积极响应并提供帮助。
STUMPY为时间序列分析提供了一套强大而易用的工具。通过高效的矩阵概况计算,它能够自动发现时间序列中的重要模式和结构,为各种数据挖掘任务提供支持。无论是处理小型数据集还是大规模时间序列,STUMPY都能提供出色的性能和丰富的功能。如果您正在寻找一个功能全面、性能卓越的Python时间序列分析库,STUMPY绝对值得一试。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频


实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

