Skip to content

Releases: TuringWorks/tsai-rs

v0.1.2

02 Jan 05:49

Choose a tag to compare

tsai-rs v0.1.2

Time series deep learning in Rust — a feature-parity port of Python tsai.

What's New

🔧 Bug Fixes

  • ResCNN: Fixed default kernel sizes from [8, 5, 3] to [7, 5, 3] for Burn's Same padding compatibility (even kernel sizes not supported)
  • MultiInputNet: Fixed forward pass when no tabular data is present

✨ New Features

  • Feature Extraction: Added 50+ tsfresh-style statistical features
    • Minimal, Efficient, Comprehensive, and All feature sets
    • Batch processing with FeatureExtractor
    • Multivariate cross-channel features
  • Hyperparameter Optimization: Complete HPO module
    • GridSearch - Exhaustive search over parameter grid
    • RandomSearch - Random sampling with configurable trials
    • SuccessiveHalving - Early stopping for efficient search
  • CLI Enhancements:
    • New tsai hpo command for hyperparameter optimization
    • Expanded tsai datasets list to show all 255 datasets across 4 archives

🐍 Python Bindings

  • extract_features() and extract_features_batch() for feature extraction
  • get_UEA_list(), get_TSER_list(), get_forecasting_list() for dataset discovery
  • HPO classes: HyperparameterSpace, ParamSet, TrialResult, SearchResult
  • Cleaner API naming (removed Py prefix from class names)

📚 Examples

  • examples/feature_extraction.rs - Demonstrates tsfresh-style feature extraction
  • examples/hpo.rs - Demonstrates hyperparameter optimization strategies

Installation

[dependencies]
tsai = "0.1.2"

Or install the CLI:

cargo install tsai_cli

Project Status

~98% feature parity with Python tsai:

Category Count
Models 42 architectures
Augmentation Transforms 47 transforms
Dataset Archives 255 datasets (UCR, UEA, TSER, Forecasting)
Feature Extraction 50+ tsfresh-style features
Callbacks 14 callbacks
Schedulers 9 schedulers
Loss Functions 10 losses
Metrics 10 metrics

Crates Published

All crates are available on crates.io:

Full Changelog: v0.1.1...v0.1.2