Skip to main content

Signal Processing Tools for Machine Mearning

Project description

DAI-Lab An open source project from Data to AI Lab at MIT.

Development Status PyPi Shield Tests Downloads

SigPro: Signal Processing Tools for Machine Learning

Overview

SigPro offers an end-to-end solution to efficiently apply multiple signal processing techniques to convert raw time series into feature time series that encode the knowledge of domain experts in order to solve time series machine learning problems.

Install

Requirements

SigPro has been developed and tested on Python 3.8, 3.9, 3.10, and 3.11 on GNU/Linux and macOS systems.

Also, although it is not strictly required, the usage of a virtualenv is highly recommended in order to avoid interfering with other software installed in the system where SigPro is run.

Install with pip

The easiest and recommended way to install SigPro is using pip:

pip install sigpro

This will pull and install the latest stable release from PyPi.

If you want to install from source or contribute to the project please read the Contributing Guide.

User Guides

SigPro comes with the following user guides:

  • PRIMITIVES.md: Information about the primitive families, their expected input and output.
  • USAGE.md: Instructions about how to usee the three main functionalities of SigPro.
  • DEVELOPMENT.md: Step by step guide about how to write a valid SigPro primitive and contribute it to either SigPro or your own library.

History

0.2.1 - 2024-04-24

Features

0.2.0 - 2024-02-02

Features

  • Demo Notebooks for Pipeline usage - Issue #55 by @andyx13
  • Added contributing_primitive and basic_primitives module to assist with new primitive creation/usage - Issue #54 by @andyx13
  • Incorrect classification for stft.json and stft_real.json - Issue #53 by @andyx13
  • Support for more complex pipeline architectures - Issue #52 by @andyx13
  • Update primitive interfaces - Issue #51 by @andyx13
  • Syntax for pipeline creation - Issue #41 by @andyx13
  • Load demo dataset at random index - Issue #35 by @andyx13

0.1.2 - 2023-12-11

Features

  • Python version update - Issue #44 by @andyx13
  • Add demo notebook and per-primitive documentation - Issue #47 by @andyx13

0.1.1 - 2023-04-06

Features

  • Accepting single value data frame format - Issue #36 by @frances-h @sarahmish
  • Update demos - Issue #26 by @frances-h

0.1.0 - 2021-11-14

Features

  • Rework SigPro to be class based

0.0.3 - 2021-09-27

Features

  • Add process_signals function to take a collection of primitives and create features for the given data.

0.0.2 - 2021-02-05

Bug Fixes

  • MANIFEST.in: copy the json files of the primitives with the package installation.

0.0.1 - 2021-01-26

First release to PyPI.

This release comes with the first version of the contributing module, which makes it easier to create new primitives and to test those with the demo data included in this package.

This release also includes the following User Guides:

  • PRIMITIVES.md: Information about the primitive families, their expected input and output.
  • USAGE.md: Instructions about how to usee the three main functionalities of SigPro.
  • DEVELOPMENT.md: Step by step guide about how to write a valid SigPro primitive and contribute it to either SigPro or your own library.

Features

  • Demo data: Available demo data to test primitives.
  • First primitives: The following list of primitives were added:
    • sigpro.aggregations.amplitude.statistical.crest_factor
    • sigpro.aggregations.amplitude.statistical.kurtosis
    • sigpro.aggregations.amplitude.statistical.mean
    • sigpro.aggregations.amplitude.statistical.rms
    • sigpro.aggregations.amplitude.statistical.skew
    • sigpro.aggregations.amplitude.statistical.std
    • sigpro.aggregations.amplitude.statistical.var
    • sigpro.transformations.amplitude.identity.identity
    • sigpro.transformations.frequency.fft.fft
    • sigpro.transformations.frequency.fft.fft_real
    • sigpro.transformations.frequency_time.stft.stft
    • sigpro.transformations.frequency_time.stft.stft_real
  • Contributing module.
  • Documentation on how to contribute new primitives and how to run those.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sigpro-0.2.1.tar.gz (2.8 MB view hashes)

Uploaded Source

Built Distribution

sigpro-0.2.1-py2.py3-none-any.whl (2.8 MB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page