|
openGPMP
Open Source Mathematics Package
|
RecurrentAutoEncoder class, a derived class from AutoEncoder. More...
#include <encoder.hpp>
Public Member Functions | |
| RecurrentAutoEncoder (int input_size, int hidden_size, int output_size, double learning_rate) | |
| Constructor for the RecurrentAutoEncoder class. More... | |
| virtual void | train (const std::vector< std::vector< double >> &training_data, int epochs) override |
| Trains the recurrent autoencoder on the given sequential data. More... | |
| std::vector< double > | recurr_fwd (const std::vector< double > &input, const std::vector< double > &previous_hidden) |
| Performs a forward pass through the recurrent layer. More... | |
Public Member Functions inherited from gpmp::ml::AutoEncoder | |
| AutoEncoder (int input_size, int hidden_size, int output_size, double learning_rate) | |
| Constructor for the AutoEncoder class. More... | |
| std::vector< double > | sigmoid (const std::vector< double > &x) |
| Sigmoid activation function. More... | |
| std::vector< double > | forward (const std::vector< double > &input) |
| Forward pass through the autoencoder. More... | |
| void | lrate_set (double initial_rate) |
| Set the initial learning rate. More... | |
| virtual void | lrate_update (int epoch) |
| Update the learning rate based on a schedule. More... | |
| void | display () |
| Print the weights of the autoencoder. More... | |
| virtual void | save (const std::string &filename) const |
| Save the model weights to a file. More... | |
| virtual void | load (const std::string &filename) |
| Load model weights from a file. More... | |
Public Attributes | |
| std::vector< std::vector< double > > | weights_recurrent |
| Weight matrix for the recurrent connections. More... | |
Public Attributes inherited from gpmp::ml::AutoEncoder | |
| int | input_size |
| Size of the input layer. More... | |
| int | hidden_size |
| Size of the hidden layer. More... | |
| int | output_size |
| Size of the output layer. More... | |
| double | learning_rate |
| Learning rate for training the autoencoder. More... | |
| std::vector< std::vector< double > > | weights_input_hidden |
| Weights from the input layer to the hidden layer. More... | |
| std::vector< std::vector< double > > | weights_hidden_output |
| Weights from the hidden layer to the output layer. More... | |
RecurrentAutoEncoder class, a derived class from AutoEncoder.
Definition at line 475 of file encoder.hpp.
| gpmp::ml::RecurrentAutoEncoder::RecurrentAutoEncoder | ( | int | input_size, |
| int | hidden_size, | ||
| int | output_size, | ||
| double | learning_rate | ||
| ) |
Constructor for the RecurrentAutoEncoder class.
| input_size | The size of the input layer |
| hidden_size | The size of the hidden layer |
| output_size | The size of the output layer |
| learning_rate | The learning rate for training |
Definition at line 579 of file encoder.cpp.
| std::vector< double > gpmp::ml::RecurrentAutoEncoder::recurr_fwd | ( | const std::vector< double > & | input, |
| const std::vector< double > & | previous_hidden | ||
| ) |
Performs a forward pass through the recurrent layer.
| input | The input vector |
| previous_hidden | The hidden state from the previous time step |
Definition at line 633 of file encoder.cpp.
|
overridevirtual |
Trains the recurrent autoencoder on the given sequential data.
Overrides the train method in the base class for handling temporal dependencies
| training_data | The training data, which is a sequence of input vectors |
| epochs | The number of training epochs |
Reimplemented from gpmp::ml::AutoEncoder.
Definition at line 587 of file encoder.cpp.
Referenced by main().
| std::vector<std::vector<double> > gpmp::ml::RecurrentAutoEncoder::weights_recurrent |
Weight matrix for the recurrent connections.
Definition at line 480 of file encoder.hpp.