|
| OivsInitialization (const double epsilon=0.1, const int k=5, const double gamma=0.9) |
| Initialize the random initialization rule with the given values. More...
|
|
template<typename eT > |
void | Initialize (arma::Mat< eT > &W, const size_t rows, const size_t cols) |
| Initialize the elements of the specified weight matrix with the oivs method. More...
|
|
template<typename eT > |
void | Initialize (arma::Mat< eT > &W) |
| Initialize the elements of the specified weight matrix with the oivs method. More...
|
|
template<typename eT > |
void | Initialize (arma::Cube< eT > &W, const size_t rows, const size_t cols, const size_t slices) |
| Initialize the elements of the specified weight 3rd order tensor with the oivs method. More...
|
|
template<typename eT > |
void | Initialize (arma::Cube< eT > &W) |
| Initialize the elements of the specified weight 3rd order tensor with the oivs method. More...
|
|
template<class ActivationFunction = LogisticFunction>
class mlpack::ann::OivsInitialization< ActivationFunction >
This class is used to initialize the weight matrix with the oivs method.
The method is based on the equations representing the characteristics of the information transformation mechanism of a node. The method is defined by
\begin{eqnarray*} b &=& |F^{-1}(1 - \epsilon) - f^{-1}(\epsilon)| \\ \hat{w} &=& \frac{b}{k \cdot n} \\ \gamma &\le& a_i \le \gamma \\ w_i &=& \hat{w} \cdot \sqrt{a_i + 1} \end{eqnarray*}
Where f is the transfer function epsilon, k custom parameters, n the number of neurons in the outgoing layer and gamma a parameter that defines the random interval.
- Template Parameters
-
ActivationFunction | The activation function used for the oivs method. |