Expand description
§tsai
Time series deep learning in Rust - a feature-parity port of Python tsai.
tsai-rs provides a comprehensive toolkit for time series analysis using deep learning:
- Data handling: Datasets, dataloaders, and preprocessing
- Transforms: Augmentations, label mixing, and imaging transforms
- Models: CNN, Transformer, ROCKET, RNN, and Tabular architectures
- Training: Learner, callbacks, metrics, and schedulers
- Analysis: Confusion matrix, top losses, importance
- Explainability: Attribution maps, activation capture
§Quick Start
ⓘ
use tsai::prelude::*;
// Load data
let x = read_npy("data/X_train.npy")?;
let y = read_npy("data/y_train.npy")?;
let dataset = TSDataset::from_arrays(x, Some(y))?;
// Create dataloaders
let (train_ds, valid_ds) = train_test_split(&dataset, 0.2, Seed::new(42))?;
let dls = TSDataLoaders::builder(train_ds, valid_ds)
.batch_size(64)
.build()?;
// Create model
let config = InceptionTimePlusConfig::new(dls.n_vars(), dls.seq_len(), n_classes);
let model = config.init(&device);
// Train
let learner = Learner::new(model, dls, LearnerConfig::default(), &device);
learner.fit_one_cycle(25, 1e-3)?;§Feature Flags
backend-ndarray(default): CPU backend using ndarraybackend-wgpu: GPU backend using WGPU (Metal on macOS, Vulkan on Linux/Windows)backend-tch: PyTorch backend via tch-rswandb: Weights & Biases integration
Re-exports§
pub use tsai_analysis as analysis;pub use tsai_core as core;pub use tsai_data as data;pub use tsai_explain as explain;pub use tsai_models as models;pub use tsai_train as train;pub use tsai_transforms as transforms;