Skip to content

tsbootstrap roadmap 2025-2026 #181

@astrogilda

Description

@astrogilda

This is an updated roadmap for tsbootstrap development, replacing the 2024-2025 roadmap in #144.

Immediate Priorities (Q3 2025)

  • Complete test coverage: Achieve >90% test coverage for all core modules
  • Test coverage for model_selection module: Currently has no tests
  • Documentation: Complete API documentation and user guide
  • User Guide/Cookbook: Add practical examples (e.g., "Bootstrapping for financial returns", "Validating a forecasting model")
  • Bug fixes: Address known issues ([BUG] index set returned by some bootstraps is list of numpy arrays, not single numpy array #81 index sets, bootstrap classes: running methods multiple times has unexpected side effects #71 side effects, ARIMA LU decomposition issue #41 LU decomposition)
  • Sparse array support: Add support for scipy sparse arrays for memory-efficient large datasets
  • DataFrame support via Narwhals: Use Narwhals to support both pandas and Polars DataFrames with a unified API
  • Replace TSFit with StatsForecast: Migrate from custom TSFit implementation to StatsForecast for better maintained and more robust time series models
  • Standardize X and y conventions: Ensure consistency with scikit-learn across all estimators
  • Tighten type hints: Use numpy.typing (npt.NDArray) instead of generic np.ndarray
  • Add coverage.py to CI: Enforce minimum test coverage and prevent regressions
  • Enhanced input validation: Add robust validation with clear error messages

Model Enhancement & Optimization (Q4 2025)

  • Multivariate enhancements: Better support for multivariate time series with new data structures
  • Optimal block length selection (Research and implement optimal block length selection methods #106): Implement data-driven methods for automatic block length selection
  • Adaptive block length: Basic implementation based on autocorrelation structure
  • Consolidate bootstrap implementations: Reduce duplication between bootstrap.py, base_bootstrap.py, async_bootstrap.py
  • Profile and optimize core loops: Focus on performance bottlenecks in block_bootstrap
  • Data preprocessing helpers: Add utilities for differencing, detrending, seasonal adjustment

New Bootstrap Methods (Q4 2025 - Q1 2026)

Performance & API Improvements (Q1 2026)

  • Memory optimization: Implement chunked processing for large datasets
  • Parallel processing: Add multiprocessing support for multiple bootstrap samples
  • Numba acceleration: Use numba for performance-critical loops
  • Streaming updates: Basic support for updating bootstrap with new data
  • Serialization: Add proper model serialization/deserialization
  • Async improvements: Enhance async bootstrap implementations
  • Integration tests: Add complex multi-step scenarios (data simulation → model fitting → bootstrapping)
  • Unify fit, predict, bootstrap methods: Consistent signatures across all estimators
  • Documentation for model_selection: Complete module documentation with examples

Integration & Ecosystem (Q2 2026)

  • scikit-learn compatibility: Ensure full compatibility with sklearn pipelines
  • Basic sktime integration: Add adapters for common sktime forecasters
  • Evaluation framework: Add statistical tests and evaluation metrics
  • Cross-validation for block length: Add CV methods for block length tuning
  • Visualization utilities: Bootstrap distributions, time series plots, model diagnostics
  • Plugin architecture: Replace factory pattern with extensible plugin system
  • Automated performance benchmarking: CI step for tracking performance regressions
  • Refactor bootstrap_factory.py: Move to more extensible registration pattern

Future Considerations (2026+)

  • Advanced adaptive methods: Variance/skewness-based adaptive resampling
  • Probabilistic models: Bootstrap-based uncertainty quantification
  • Time series augmentation: Data augmentation techniques
  • GPU acceleration: CUDA/JAX implementations for large-scale applications
  • Quarterly dependency review: Regular updates and security checks

This roadmap reflects that we're already at the end of Q2 2025 and focuses on achievable goals for the remainder of 2025 and early 2026.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions