|  | 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:
 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
 1.8.4