Skip to content

Commit

Permalink
Merge branch 'main' into feature/bern-filter
Browse files Browse the repository at this point in the history
  • Loading branch information
jwdink committed Jan 9, 2025
2 parents 1a6e9d9 + 4ff24a0 commit 0bdb0f6
Show file tree
Hide file tree
Showing 28 changed files with 1,393 additions and 1,400 deletions.
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -101,10 +101,8 @@ ENV/

.idea/*
.coveragerc
*.ipynb
*.zip
docs/_html/*
*.csv
*.pt
*.gz
docs/examples/lightning_logs/*
10 changes: 6 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
torchcast
==========

``torchcast`` is a Python package for forecasting with state-space models built on top of `PyTorch <http://pytorch.org>`_. Its focus is training and forecasting with *batches* of time-series, rather than training separate models for one time-series at a time. In addition, it provides robust support for *multivariate* time-series, where multiple correlated measures are being forecasted.
``torchcast`` is a Python package for forecasting built on top of `PyTorch <http://pytorch.org>`_. Its benefits include:

Currently the focus of ``torchcast`` is building models that are hybrids: they are classic state-space models with the twist that every part of these models is differentiable and can take advantage of PyTorch's flexibility. For `example <https://torchcast.readthedocs.io/en/latest/examples/electricity.html#Training-our-Hybrid-Forecasting-Model>`_, we can use any PyTorch ``Module`` to predict the variance of forecasts or even to generate the underlying states themselves.
1. An API designed around training and forecasting with *batches* of time-series, rather than training separate models for one time-series at a time.
2. Robust support for *multivariate* time-series, where multiple correlated measures are being forecasted.
3. Forecasting models that are hybrids: they are classic state-space models with the twist that every part is differentiable and can take advantage of PyTorch's flexibility. For `example <https://docs.strong.io/torchcast/examples/electricity.html#Training-our-Hybrid-Forecasting-Model>`_, we can use arbitrary PyTorch ``torch.nn.Modules`` to learn seasonal variations across multiple groups, embedding complex seasonality into lower-dimensional space.

This repository is the work of `Strong Analytics <https://www.strong.io/>`_.
This repository is the work of `Strong <https://www.strong.io/>`_.

.. image:: docs/examples_air_quality_6_2.png

Expand All @@ -20,4 +22,4 @@ Getting Started
``torchcast`` requires Python >= 3.8 and PyTorch >= 1.8.

See the `Quick Start <https://torchcast.readthedocs.io/en/latest/quick_start.html>`_ for a simple example that will get you up to speed, or delve into the `examples <https://torchcast.readthedocs.io/en/latest/examples/examples.html>`_ or the `API <https://torchcast.readthedocs.io/en/latest/api/api.html>`_.
See the `Quick Start <https://docs.strong.io/torchcast/quick_start.html>`_ for a simple example that will get you up to speed, or delve into the `examples <https://docs.strong.io/torchcast/examples/examples.html>`_ or the `API <https://docs.strong.io/torchcast/api/api.html>`_.
2 changes: 1 addition & 1 deletion docs/api/utils.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ Utils
.. include:: ../macros.hrst

.. automodule:: torchcast.utils
:members: TimeSeriesDataset, TimeSeriesDataLoader, add_season_features, complete_times
:members: TimeSeriesDataset, TimeSeriesDataLoader, add_season_features, complete_times, make_baseline, SimpleTrainer, StateSpaceTrainer, SeasonalEmbeddingsTrainer
7 changes: 4 additions & 3 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
# -- Project information -----------------------------------------------------

project = 'torchcast'
copyright = '2021, Strong Analytics'
copyright = '2025, Strong Analytics'
author = 'Jacob Dink'

# -- General configuration ---------------------------------------------------
Expand All @@ -40,7 +40,7 @@
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', '**.ipynb_checkpoints', '_html', '**.ipynb', 'conf.py']
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', '**.ipynb_checkpoints', '_html', 'conf.py']

# -- Options for HTML output -------------------------------------------------

Expand All @@ -54,7 +54,8 @@
# further. For a list of options available for each theme, see the
# documentation.
html_theme_options = {
"project_url": "https://strong.io"
"project_url": "https://strong.io",
"globaltoc_depth": 4
}

# Add any paths that contain custom static files (such as style sheets) here,
Expand Down
Loading

0 comments on commit 0bdb0f6

Please sign in to comment.