This repository contains a Python package with modules for machine learning (ML)-related processing in the ezmsg framework. As ezmsg is intended primarily for processing unbounded streaming signals, so are the modules in this repo.
If you are only interested in offline analysis without concern for reproducibility in online applications, then you should probably look elsewhere.
Processing units include dimensionality reduction, linear regression, and classification that can be initialized with known weights, or adapted on-the-fly with incoming (labeled) data. Machine-learning code depends on river, scikit-learn, numpy, and torch.
Install from PyPI:
pip install ezmsg-learnOr install the latest development version:
pip install git+https://github.com/ezmsg-org/ezmsg-learn@devezmsgezmsg-baseprocezmsg-sigprocnumpyscipyscikit-learnriver
We use uv for development.
- Install
uvif not already installed. - Fork this repository and clone your fork locally.
- Open a terminal and
cdto the cloned folder. - Run
uv syncto create a.venvand install dependencies. - (Optional) Install pre-commit hooks:
uv run pre-commit install - After making changes, run the test suite:
uv run pytest tests
MIT License - see LICENSE for details.