Lightweight and basic reservoir computing library
Project description
aqua-blue
Lightweight and basic reservoir computing library
🌊 What is aqua-blue?
aqua-blue is a lightweight python library for reservoir computing (specifically echo state networks) depending only on numpy. aqua-blue's namesake comes from:
- A blue ocean of data, aka a reservoir 💧
- A very fancy cat named Blue 🐾
🐜 Found a bug?
Please open an issue here if you found a bug! The easier it is to reproduce the bug, the faster we will find a solution to the problem. Please consider including the following info in your issue:
- Steps to reproduce
- Expected and actual behavior
- Version info, OS, etc.
🔧 Contributing
Please see CONTRIBUTING.md
for instructions on how to contribute to aqua-blue ☺
📥 Installation
aqua-blue is on PyPI, and can therefore be installed with pip:
pip install aqua-blue
📝 Quickstart
import numpy as np
import aqua_blue
# generate arbitrary two-dimensional time series
# y_1(t) = cos(t), y_2(t) = sin(t)
# resulting dependent variable has shape (number of timesteps, 2)
t = np.linspace(0, 4.0 * np.pi, 10_000)
y = np.vstack((2.0 * np.cos(t) + 1, 5.0 * np.sin(t) - 1)).T
# create time series object to feed into echo state network
time_series = aqua_blue.time_series.TimeSeries(dependent_variable=y, times=t)
# normalize
normalizer = aqua_blue.utilities.Normalizer()
time_series = normalizer.normalize(time_series)
# make model and train
model = aqua_blue.models.Model(
reservoir=aqua_blue.reservoirs.DynamicalReservoir(
reservoir_dimensionality=100,
input_dimensionality=2
),
readout=aqua_blue.readouts.LinearReadout()
)
model.train(time_series)
# predict and denormalize
prediction = model.predict(horizon=1_000)
prediction = normalizer.denormalize(prediction)
📃 License
aqua-blue is released under the MIT License.
Blue, the cat behind aqua-blue.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aqua_blue-0.2.19.tar.gz.
File metadata
- Download URL: aqua_blue-0.2.19.tar.gz
- Upload date:
- Size: 17.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb7cc0d3396d549d8a4144ae30a5e00780e20aa2354a4cf9864c9a247d011514
|
|
| MD5 |
e60b950f3a6e6226a13007b1c28d68a1
|
|
| BLAKE2b-256 |
c12cb40150123294f2d5a3f9ea9cc8e23f86e33329eb3849b43a473dd4a09eca
|
Provenance
The following attestation bundles were made for aqua_blue-0.2.19.tar.gz:
Publisher:
publish.yml on jwjeffr/aqua-blue
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aqua_blue-0.2.19.tar.gz -
Subject digest:
cb7cc0d3396d549d8a4144ae30a5e00780e20aa2354a4cf9864c9a247d011514 - Sigstore transparency entry: 234225068
- Sigstore integration time:
-
Permalink:
jwjeffr/aqua-blue@2b7c7346680a1dd4908673b42c0b8d6bfc781c95 -
Branch / Tag:
refs/tags/v0.2.19 - Owner: https://github.com/jwjeffr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2b7c7346680a1dd4908673b42c0b8d6bfc781c95 -
Trigger Event:
release
-
Statement type:
File details
Details for the file aqua_blue-0.2.19-py3-none-any.whl.
File metadata
- Download URL: aqua_blue-0.2.19-py3-none-any.whl
- Upload date:
- Size: 19.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
268ca90b9c9f8f855b156451477920d8293c477e830c451dbb7e8b2dc2646b64
|
|
| MD5 |
f02abbfa26caf81a9cb2ad61083c4fd6
|
|
| BLAKE2b-256 |
fff8e81a28e4c96c5e2ceeb48e31ed882bb8f4f6f3a922819c2666f9a6d37c73
|
Provenance
The following attestation bundles were made for aqua_blue-0.2.19-py3-none-any.whl:
Publisher:
publish.yml on jwjeffr/aqua-blue
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aqua_blue-0.2.19-py3-none-any.whl -
Subject digest:
268ca90b9c9f8f855b156451477920d8293c477e830c451dbb7e8b2dc2646b64 - Sigstore transparency entry: 234225070
- Sigstore integration time:
-
Permalink:
jwjeffr/aqua-blue@2b7c7346680a1dd4908673b42c0b8d6bfc781c95 -
Branch / Tag:
refs/tags/v0.2.19 - Owner: https://github.com/jwjeffr
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2b7c7346680a1dd4908673b42c0b8d6bfc781c95 -
Trigger Event:
release
-
Statement type: