|
LBANN
0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
|
Generalization of "Xavier" initialization. More...
#include <variance_scaling_initializers.hpp>
Public Types | |
Public Types | |
| using | AbsDistMatrixType = El::AbstractDistMatrix< TensorDataType > |
| The tensor type expected in this object. More... | |
Public Member Functions | |
| variance_scaling_initializer (probability_distribution dist) | |
| description | get_description () const override |
| void | fill (AbsDistMatrixType &matrix) override |
| void | set_fan_in (El::Int fan_in) |
| void | set_fan_out (El::Int fan_out) |
| probability_distribution | get_prob_dist () const noexcept |
Public Member Functions inherited from lbann::Cloneable< HasAbstractFunction< variance_scaling_initializer< TensorDataType > >, data_type_weights_initializer< TensorDataType > > | |
| std::unique_ptr< HasAbstractFunction< variance_scaling_initializer< TensorDataType > > > | clone () const |
| Return an exception-safe, memory-safe copy of this object. More... | |
Private Member Functions | |
| virtual TensorDataType | get_variance (El::Int fan_in, El::Int fan_out)=0 |
Private Attributes | |
| probability_distribution | m_prob_dist |
| El::Int | m_fan_in |
| El::Int | m_fan_out |
Generalization of "Xavier" initialization.
Weights values are randomly sampled from a probability distribution with a variance determined by a "fan-in" and a "fan-out" parameter.
Weights with variance scaling initialization are only compatible with layers that set fan-in and fan-out parameters, e.g. the convolution and fully-connected layers.
Definition at line 47 of file variance_scaling_initializers.hpp.
| using lbann::variance_scaling_initializer< TensorDataType >::AbsDistMatrixType = El::AbstractDistMatrix<TensorDataType> |
The tensor type expected in this object.
Definition at line 57 of file variance_scaling_initializers.hpp.
| lbann::variance_scaling_initializer< TensorDataType >::variance_scaling_initializer | ( | probability_distribution | dist | ) |
|
override |
|
override |
|
inlinenoexcept |
Get probability distribution.
Definition at line 72 of file variance_scaling_initializers.hpp.
|
privatepure virtual |
Get probability distribution variance.
|
inline |
Set fan-in parameter.
Definition at line 67 of file variance_scaling_initializers.hpp.
|
inline |
Set fan-out parameter.
Definition at line 69 of file variance_scaling_initializers.hpp.
|
private |
Fan-in parameter.
Definition at line 85 of file variance_scaling_initializers.hpp.
|
private |
Fan-out parameter.
Definition at line 87 of file variance_scaling_initializers.hpp.
|
private |
Probability distribution.
Definition at line 83 of file variance_scaling_initializers.hpp.