Neuron activation layer. More...
#include <shark/Models/NeuronLayers.h>
Inheritance diagram for shark::NeuronLayer< NeuronType, VectorType >:Public Member Functions | |
| NeuronLayer (Shape const &shape=Shape()) | |
| std::string | name () const |
| From INameable: return the class name. | |
| NeuronType const & | neuron () const |
| NeuronType & | neuron () |
| Shape | inputShape () const |
| Returns the expected shape of the input. | |
| Shape | outputShape () const |
| Returns the shape of the output. | |
| ParameterVectorType | parameterVector () const |
| obtain the parameter vector | |
| void | setParameterVector (ParameterVectorType const &newParameters) |
| overwrite the parameter vector | |
| size_t | numberOfParameters () const |
| return the number of parameter | |
| boost::shared_ptr< State > | createState () const |
| Creates an internal state of the model. | |
| void | eval (BatchInputType const &inputs, BatchOutputType &outputs) const |
| Standard interface for evaluating the response of the model to a batch of patterns. | |
| void | eval (VectorType const &input, VectorType &output) const |
| void | eval (BatchInputType const &inputs, BatchOutputType &outputs, State &state) const |
| Standard interface for evaluating the response of the model to a batch of patterns. | |
| void | weightedParameterDerivative (BatchInputType const &inputs, BatchOutputType const &outputs, BatchOutputType const &coefficients, State const &state, ParameterVectorType &gradient) const |
| Calculates the first derivative w.r.t the parameters and summing them up over all inputs of the last computed batch. | |
| void | weightedInputDerivative (BatchInputType const &inputs, BatchOutputType const &outputs, BatchOutputType const &coefficients, State const &state, BatchInputType &derivative) const |
| Calculates the first derivative w.r.t the inputs and summs them up over all inputs of the last computed batch. | |
| void | read (InArchive &archive) |
| From ISerializable. | |
| void | write (OutArchive &archive) const |
| From ISerializable. | |
Public Member Functions inherited from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType > | |
| AbstractModel () | |
| virtual | ~AbstractModel () |
| const Features & | features () const |
| virtual void | updateFeatures () |
| bool | hasFirstParameterDerivative () const |
| Returns true when the first parameter derivative is implemented. | |
| bool | hasFirstInputDerivative () const |
| Returns true when the first input derivative is implemented. | |
| virtual void | eval (InputType const &pattern, OutputType &output) const |
| Standard interface for evaluating the response of the model to a single pattern. | |
| Data< OutputType > | operator() (Data< InputType > const &patterns) const |
| Model evaluation as an operator for a whole dataset. This is a convenience function. | |
| OutputType | operator() (InputType const &pattern) const |
| Model evaluation as an operator for a single pattern. This is a convenience function. | |
| BatchOutputType | operator() (BatchInputType const &patterns) const |
| Model evaluation as an operator for a single pattern. This is a convenience function. | |
| virtual void | weightedDerivatives (BatchInputType const &patterns, BatchOutputType const &outputs, BatchOutputType const &coefficients, State const &state, ParameterVectorType ¶meterDerivative, BatchInputType &inputDerivative) const |
| calculates weighted input and parameter derivative at the same time | |
Public Member Functions inherited from shark::IParameterizable< VectorType > | |
| virtual | ~IParameterizable () |
Public Member Functions inherited from shark::INameable | |
| virtual | ~INameable () |
Public Member Functions inherited from shark::ISerializable | |
| virtual | ~ISerializable () |
| Virtual d'tor. | |
| void | load (InArchive &archive, unsigned int version) |
| Versioned loading of components, calls read(...). | |
| void | save (OutArchive &archive, unsigned int version) const |
| Versioned storing of components, calls write(...). | |
| BOOST_SERIALIZATION_SPLIT_MEMBER () | |
Additional Inherited Members | |
Protected Attributes inherited from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType > | |
| Features | m_features |
Neuron activation layer.
Applies a nonlinear activation function to the given input. Various choices for activations are given in Neuron activation functions.
Definition at line 255 of file NeuronLayers.h.
| typedef base_type::BatchInputType shark::NeuronLayer< NeuronType, VectorType >::BatchInputType |
Definition at line 262 of file NeuronLayers.h.
| typedef base_type::BatchOutputType shark::NeuronLayer< NeuronType, VectorType >::BatchOutputType |
Definition at line 263 of file NeuronLayers.h.
| typedef base_type::ParameterVectorType shark::NeuronLayer< NeuronType, VectorType >::ParameterVectorType |
Definition at line 264 of file NeuronLayers.h.
|
inline |
Definition at line 266 of file NeuronLayers.h.
References shark::AbstractModel< VectorType, VectorType, VectorType >::HAS_FIRST_INPUT_DERIVATIVE, shark::AbstractModel< VectorType, VectorType, VectorType >::HAS_FIRST_PARAMETER_DERIVATIVE, and shark::AbstractModel< VectorType, VectorType, VectorType >::m_features.
|
inlinevirtual |
Creates an internal state of the model.
The state is needed when the derivatives are to be calculated. Eval can store a state which is then reused to speed up the calculations of the derivatives. This also allows eval to be evaluated in parallel!
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 301 of file NeuronLayers.h.
|
inlinevirtual |
Standard interface for evaluating the response of the model to a batch of patterns.
| patterns | the inputs of the model |
| outputs | the predictions or response of the model to every pattern |
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 307 of file NeuronLayers.h.
References shark::Shape::numElements(), and SIZE_CHECK.
|
inlinevirtual |
Standard interface for evaluating the response of the model to a batch of patterns.
| patterns | the inputs of the model |
| outputs | the predictions or response of the model to every pattern |
| state | intermediate results stored by eval which can be reused for derivative computation. |
Implements shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 320 of file NeuronLayers.h.
References shark::Shape::numElements(), SIZE_CHECK, and shark::State::toState().
|
inline |
Definition at line 314 of file NeuronLayers.h.
References shark::Shape::numElements(), and SIZE_CHECK.
|
inlinevirtual |
Returns the expected shape of the input.
Implements shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 278 of file NeuronLayers.h.
|
inlinevirtual |
From INameable: return the class name.
Reimplemented from shark::INameable.
Definition at line 272 of file NeuronLayers.h.
|
inline |
Definition at line 276 of file NeuronLayers.h.
|
inline |
Definition at line 275 of file NeuronLayers.h.
|
inlinevirtual |
return the number of parameter
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 297 of file NeuronLayers.h.
|
inlinevirtual |
Returns the shape of the output.
Implements shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 282 of file NeuronLayers.h.
|
inlinevirtual |
obtain the parameter vector
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 287 of file NeuronLayers.h.
|
inlinevirtual |
From ISerializable.
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 356 of file NeuronLayers.h.
|
inlinevirtual |
overwrite the parameter vector
Reimplemented from shark::IParameterizable< VectorType >.
Definition at line 292 of file NeuronLayers.h.
References SIZE_CHECK.
|
inlinevirtual |
Calculates the first derivative w.r.t the inputs and summs them up over all inputs of the last computed batch.
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 339 of file NeuronLayers.h.
References SIZE_CHECK, and shark::State::toState().
|
inlinevirtual |
Calculates the first derivative w.r.t the parameters and summing them up over all inputs of the last computed batch.
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 328 of file NeuronLayers.h.
References SIZE_CHECK.
|
inlinevirtual |
From ISerializable.
Reimplemented from shark::AbstractModel< InputTypeT, OutputTypeT, ParameterVectorType >.
Definition at line 358 of file NeuronLayers.h.