FNN 1.0.0
Toolbox to use NNs in Fortran.
|
Implements a normalisation layer. More...
Public Member Functions | |
procedure, pass, public | tofile => norm_tofile |
Saves the layer. Implemented by norm_tofile. More... | |
procedure, pass, public | apply_forward => norm_apply_forward |
Applies and linearises the layer. Implemented by norm_apply_forward. More... | |
procedure, pass, public | apply_tangent_linear => norm_apply_tangent_linear |
Applies the TL of the layer. Implemented by norm_apply_tangent_linear. More... | |
procedure, pass, public | apply_adjoint => norm_apply_adjoint |
Applies the adjoint of the layer. Implemented by norm_apply_adjoint. More... | |
![]() | |
procedure, pass, public | get_num_parameters => layer_get_num_parameters |
Returns the number of parameters. Implemented by layer_get_num_parameters. More... | |
procedure, pass, public | set_parameters => layer_set_parameters |
Setter for layer::parameters. Implemented by layer_set_parameters. More... | |
procedure, pass, public | get_parameters => layer_get_parameters |
Getter for layer::parameters. Implemented by layer_get_parameters. More... | |
procedure, pass, public | tofile => layer_tofile |
Saves the layer. Implemented by layer_tofile. More... | |
procedure, pass, public | apply_forward => layer_apply_forward |
Applies and linearises the layer. Implemented by layer_apply_forward. More... | |
procedure, pass, public | apply_tangent_linear => layer_apply_tangent_linear |
Applies the TL of the layer. Implemented by layer_apply_tangent_linear. More... | |
procedure, pass, public | apply_adjoint => layer_apply_adjoint |
Applies the adjoint of the layer. Implemented by layer_apply_adjoint. More... | |
Public Attributes | |
real(rk), dimension(:), allocatable | beta |
The additive term. More... | |
![]() | |
integer(ik), public | input_size |
The dimension of the input of the layer. More... | |
integer(ik), public | output_size |
The dimension of the output of the layer. More... | |
integer(ik), public | batch_size |
The batch size. More... | |
integer(ik), public | num_parameters |
The number of (trainable) parameters. More... | |
class(linearactivation), allocatable, public | activation |
The activation function. More... | |
real(rk), dimension(:), allocatable, public | parameters |
The vector of (trainable) parameters. More... | |
real(rk), dimension(:, :), allocatable, public | forward_input |
The storage for the layer::apply_forward method. More... | |
real(rk), dimension(:, :), allocatable, public | tangent_linear_input |
The storage for the layer::apply_tangent_linear method. More... | |
real(rk), dimension(:, :), allocatable, public | adjoint_input |
The storage for the layer::apply_adjoint method. More... | |
Private Attributes | |
real(rk), dimension(:), allocatable | alpha |
The multiplicative factor. More... | |
Implements a normalisation layer.
This layer has no (trainable) parameters. It can be used to rescale the input and output of a network variable per variable.
procedure, pass, public fnn_layer_normalisation::normalisationlayer::apply_adjoint |
Applies the adjoint of the layer. Implemented by norm_apply_adjoint.
procedure, pass, public fnn_layer_normalisation::normalisationlayer::apply_forward |
Applies and linearises the layer. Implemented by norm_apply_forward.
procedure, pass, public fnn_layer_normalisation::normalisationlayer::apply_tangent_linear |
Applies the TL of the layer. Implemented by norm_apply_tangent_linear.
procedure, pass, public fnn_layer_normalisation::normalisationlayer::tofile |
Saves the layer. Implemented by norm_tofile.
|
private |
The multiplicative factor.
real(rk), dimension(:), allocatable fnn_layer_normalisation::normalisationlayer::beta |
The additive term.