![]() |
OpenANN
1.1.0
An open source library for artificial neural networks.
|
Fully connected layer with fixed random weights. More...
#include <Extreme.h>
Inheritance diagram for OpenANN::Extreme:Public Member Functions | |
| Extreme (OutputInfo info, int J, bool bias, ActivationFunction act, double stdDev) | |
| virtual OutputInfo | initialize (std::vector< double * > ¶meterPointers, std::vector< double * > ¶meterDerivativePointers) |
| Fill in the parameter pointers and parameter derivative pointers. More... | |
| virtual void | initializeParameters () |
| Initialize the parameters. More... | |
| virtual void | updatedParameters () |
| Generate internal parameters from externally visible parameters. More... | |
| virtual void | forwardPropagate (Eigen::MatrixXd *x, Eigen::MatrixXd *&y, bool dropout, double *error=0) |
| Forward propagation in this layer. More... | |
| virtual void | backpropagate (Eigen::MatrixXd *ein, Eigen::MatrixXd *&eout, bool backpropToPrevious) |
| Backpropagation in this layer. More... | |
| virtual Eigen::MatrixXd & | getOutput () |
| Output after last forward propagation. More... | |
| virtual Eigen::VectorXd | getParameters () |
| Get the current values of parameters (weights, biases, ...). More... | |
Public Member Functions inherited from OpenANN::Layer | |
| virtual | ~Layer () |
Fully connected layer with fixed random weights.
This kind of layer is used in Extreme Learning Machines (ELMs). It projects low dimensional data onto a higher dimensional space such that a linear classifier or regression algorithm in the next layer could approximate arbitrary functions. The advantage of this concept is that a closed form solution is available. The disadvantage is that the number of required nodes is usually much larger than in conventional multilayer neural networks.
[1] Guang-Bin Huang, Qin-Yu Zhu and Chee-Kheong Siew: Extreme learning machine: Theory and applications, Neurocomputing 70 (1–3), pp. 489-501, 2006.
| OpenANN::Extreme::Extreme | ( | OutputInfo | info, |
| int | J, | ||
| bool | bias, | ||
| ActivationFunction | act, | ||
| double | stdDev | ||
| ) |
|
virtual |
Backpropagation in this layer.
| ein | pointer to error signal of the higher layer |
| eout | returns a pointer to error signal of the layer (derivative of the error with respect to the input) |
| backpropToPrevious | backpropagate errors to previous layers |
Implements OpenANN::Layer.
|
virtual |
Forward propagation in this layer.
| x | pointer to input of the layer (with bias) |
| y | returns a pointer to output of the layer |
| dropout | enable dropout for regularization |
| error | error value, will be updated with regularization terms |
Implements OpenANN::Layer.
|
virtual |
|
virtual |
Get the current values of parameters (weights, biases, ...).
Implements OpenANN::Layer.
|
virtual |
Fill in the parameter pointers and parameter derivative pointers.
| parameterPointers | pointers to parameters |
| parameterDerivativePointers | pointers to derivatives of parameters |
Implements OpenANN::Layer.
|
virtual |
Initialize the parameters.
This is usually called before each optimization.
Implements OpenANN::Layer.
|
inlinevirtual |
Generate internal parameters from externally visible parameters.
This is usually called after each parameter update.
Implements OpenANN::Layer.
1.8.4