Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/makiato1999/esn
Machine Learning - Echo State Network
https://github.com/makiato1999/esn
python3
Last synced: about 2 months ago
JSON representation
Machine Learning - Echo State Network
- Host: GitHub
- URL: https://github.com/makiato1999/esn
- Owner: Makiato1999
- Created: 2022-10-14T06:08:56.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-05T08:46:32.000Z (almost 2 years ago)
- Last Synced: 2024-11-13T14:04:35.121Z (about 2 months ago)
- Topics: python3
- Language: Jupyter Notebook
- Homepage:
- Size: 12.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ESN-echo-state-network
simple standard echo state network
## Project specificationImplement a standard echo state network (ESN) model as discussed in class. Do not include feedback from the output and do not use leaky-integrator neurons. Implement training of the read-out weights by means of ridge regression. Perform experiments and comment the results by considering a _k_ step ahead forecasting task on the "2sine" and "lorentz" time series data provided to you together with this notebook. Evaluate the impact of relevant hyper-parameters on the results, including the reservoir size and the amount of training data used for optimizing the read-out weights. Finally, discuss the effects of using different forecasting horizons on the overall performance of the model.
### K step ahead forecasting
A _k_ step ahead forecasting task consists of predicting the value of a time series at time $t+k$ by using the value of the time series at time $t$, where $k\geq1$ is called forecasting horizon.
In general, the predicted value is always unidimensional (i.e. a single number). However, it is possible to use multiple input values in order to improve the results. Notably, once _k_ is decided, the output to be predicted is the value of the time series at time $t+k$, and the input may be a vector containing values of the times series at time $t, t-1, \dots, t-n$, where $n\geq0$ is defined by the user and sets the dimensionality of the input vector.## Project Code and Report
Project is written by Python in Jupyter Lab, code and experiments are available here -> [Report](https://github.com/Makiato1999/ESN-echo-state-network/blob/main/project.ipynb)