Skip to content

RyanBalshaw/spectrally-regularised-LVMs

Repository files navigation

Spectrally regularised LVMs

GitHub license GitHub last commit PyPI PyPI - Wheel Read the Docs GitHub issues

Spectrally-regularised-LVMs is a Python-based package which facilitates the estimation of the linear latent variable model (LVM) parameters with a unique spectral regularisation term in single channel time-series applications.

Purpose

LVMs are a statistical methodology which try to capture the underlying structure in some observed data. This package caters to single channel time-series applications and provides a methodology to estimate the LVM parameters. The model parameters are encouraged to capture non-duplicate information via a spectral regularisation term which penalises source duplication of the spectral information captured by the latent sources.

The purpose of this package is to provide a complete framework for LVMs with spectral regularisation that caters to a variety of LVM objective functions.

Documentation

Please visit the documentation page for all supporting documentation for this package.

Installation

The package is designed to be used through the Python API, and can be installed using pip:

$ pip install spectrally-regularised-LVMs

A more detailed discussion regarding installation is given in the documentation.

Requirements

This package used Python ≥ 3.10 or later to run. For other python dependencies, please check the pyproject.toml file included in this repository. The dependencies of this package are as follows:

Package Version
Python ≥ 3.10
Numpy ≥ 1.23.1
Matplotlib ≥ 3.5.2
SciPy ≥ 1.8.1
scikit-learn ≥ 1.1.2
tqdm ≥ 4.64.1
SymPy ≥ 1.1.1
Poetry ≥ 1.4

API usage

Please visit the docs for all supporting API documentation for this package.

Contributing

This package uses Poetry for dependency management and Python packaging and git for version control. To get started, first install git and Poetry. Then one may clone this repository via

$ git clone git@github.com:RyanBalshaw/spectrally-regularised-LVMs.git
$ cd spectrally-regularised-LVMs

Then, install the necessary dependencies in a local environment via

$ poetry install --with dev,docs
$ poetry shell

This will install all necessary package dependencies and activate the virtual environment. You can then set up the pre-commit hooks via

$ pre-commit install
pre-commit installed at .git/hooks/pre-commit

License

This project is licensed under MIT License - see the LICENSE file for details.

About

A repository for all code for the 'spectrally-regularised-LVMs' package.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages