Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

framework for recurrect neural networks #254

Open
wants to merge 190 commits into
base: main
Choose a base branch
from

Conversation

lewardo
Copy link
Member

@lewardo lewardo commented Sep 4, 2023

@tremblap @weefuzzy @AlexHarker

Now that the dataseries object is functional, fun algorithms such as the various flavours of recurrent neural networks can be tinkered with!

The recurrent structure is written in a way to facilitate writing new recurrent networks (e.g. vanilla RNNs, GRUs, adaptive computation LSTMs etc.), currently only an LSTM is being implemented using the framework, but using the Recur wrapper (as inspired by the Flux.jl ML library in Julia) writing new algorithms is much easier - I will also write up a guide to writing new recurrent algos as part of this pr once it is fully presentable.

The client is not yet implemented, however there algorithm does compile and regress onto time series successfully - this pr is mostly for now to have a place to discuss potential UI challenges with the client and any other back and forth as needed!

Copy link
Member Author

@lewardo lewardo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great catch on the part of @tremblap,, the first prediction was being discarded and the prediction was skipping points !
depending on the input size there can still be issues with output prediction, but if the input length is appropriate given the training lengths then the output is consistent.
We tested a linear time series and it successfully predicted the correct points so there is definitely consistence convergence (I believe @tremblap still has the patch if anyone would like it)

tremblap and others added 8 commits January 8, 2024 13:06
…lly check the max length dynamically zero pad

ceil(log10(maxlen)) zero padding would do but maybe we should store a new "maxlength" key
# Conflicts:
#	FlucomaClients.cmake
#	include/clients/nrt/DataSeriesClient.hpp
#	include/data/FluidJSON.hpp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants