Developer Guide for Intel® Data Analytics Acceleration Library 2019 Update 2
Initializer is an algorithm for early initialization of a p-dimensional tensor W ∈ R n1 x ... x np of a neural network model. In Intel DAAL, an initializer represents an algorithm interface that runs in-place initialization of memory according to the predefined method. This interface initializes parameters of a neural network. For more details, see Usage Model: Training and Prediction.
Initializer algorithm has the following parameters:
Parameter |
Default Value |
Description |
|
---|---|---|---|
layer |
SharePtr<layers::forward::LayerIface>() |
Pointer to the layer whose weights and biases are initialized by the initializer. The initializer uses this pointer to get layer parameters such as sizes of the input and result. |
|
engine |
Not applicable |
Pointer to the engine to be used by the initializer for random numbers generation. Define the engine before using it. If you do not set this parameter, the library uses the following value by default: SharePtr<engines::mt19937::Batch>(). |
Initializer algorithm accepts the following input. Pass the Input ID as a parameter to the methods that provide input for your algorithm. For more details, see Algorithms.
Input ID |
Input |
|
---|---|---|
data |
Pointer to the tensor W of size n1 x ... x np to initialize. This input can be an object of any class derived from Tensor. |
Initializer algorithm calculates the result described below. Pass the Result ID as a parameter to the methods that access the results of your algorithm. For more details, see Algorithms.
Result ID |
Result |
|
---|---|---|
value |
Pointer to the initialized tensor W of size n1 x ... x np. This input can be an object of any class derived from Tensor. In Intel DAAL, the initialization is in-place, which means that the initializer does not allocate the result and always returns the pointer to the initialized input. |