tsdownsample: high-performance time series downsampling for scalable visualization
Interactive line chart visualizations greatly enhance the effective exploration of large time series. Although downsampling has emerged as a well-established approach to enable efficient interactive visualization of large datasets, it is not an inherent feature in most visualization tools. Furthermore, there is no library offering a convenient interface for high-performance implementations of prominent downsampling algorithms. To address these shortcomings, we present tsdownsample, an open-source Python package specifically designed for CPU-based, in-memory time series downsampling. Our library focuses on performance and convenient integration, offering optimized implementations of leading downsampling algorithms. We achieve this optimization by leveraging low-level SIMD instructions and multithreading capabilities in Rust. In particular, SIMD instructions were employed to optimize the argmin and argmax operations. This SIMD optimization, along with some algorithmic tricks, proved crucial in enhancing the performance of various downsampling algorithms. We evaluate the performance of tsdownsample and demonstrate its interoperability with an established visualization framework. Our performance benchmarks indicate that the algorithmic runtime of tsdownsample approximates the CPU's memory bandwidth. This work marks a significant advancement in bringing high-performance time series downsampling to the Python ecosystem, enabling scalable visualization. The open-source code can be found at https://github.com/predict-idlab/tsdownsample
Code (1)
Tasks
CPUTime SeriesMethods 이 논문이 사용한 방법론
Similar Papers 제목 키워드 기반
How does downsampling affect needle electromyography signals? A generalisable workflow for understanding downsampling effects on high-frequency time series
Automated analysis of needle electromyography (nEMG) signals is emerging as a tool to support the detection of neuromuscular diseases (NMDs), yet the signals' high and heterogeneous sampling rates pose substantial comput…
Downsampling and geometric feature methods for EEG classification tasks with CNNs
We experimentally investigate a collection of feature engineering pipelines for use with a CNN for classifying electroencephalogram (EEG) time series from the Bonn dataset. We compare $\epsilon$-series of Betti-numbers a…
BenchmarkingEEGElectroencephalogram (EEG)Feature Engineering+3Geometric feature performance under downsampling for EEG classification tasks
We experimentally investigate a collection of feature engineering pipelines for use with a CNN for classifying eyes-open or eyes-closed from electroencephalogram (EEG) time-series from the Bonn dataset. Using the Takens'…
BenchmarkingClassificationEEGElectroencephalogram (EEG)+6Jiffy: A Convolutional Approach to Learning Time Series Similarity
Computing distances between examples is at the core of many learning algorithms for time series. Consequently, a great deal of work has gone into designing effective time series distance measures. We present Jiffy, a sim…
Representation LearningTime SeriesTime Series AnalysisGraph-based Forecasting with Missing Data through Spatiotemporal Downsampling
Given a set of synchronous time series, each associated with a sensor-point in space and characterized by inter-series relationships, the problem of spatiotemporal forecasting consists of predicting future observations f…
Missing ValuesTime Series