const_init.hpp
Go to the documentation of this file.
1 
14 #ifndef MLPACK_METHODS_ANN_INIT_RULES_CONST_INIT_HPP
15 #define MLPACK_METHODS_ANN_INIT_RULES_CONST_INIT_HPP
16 
17 #include <mlpack/prereqs.hpp>
18 
19 namespace mlpack {
20 namespace ann {
21 
26 {
27  public:
31  ConstInitialization(const double initVal = 0) : initVal(initVal)
32  { /* Nothing to do here */ }
33 
41  template<typename eT>
42  void Initialize(arma::Mat<eT>& W, const size_t rows, const size_t cols)
43  {
44  W.set_size(rows, cols);
45  W.fill(initVal);
46  }
47 
55  template<typename eT>
56  void Initialize(arma::Cube<eT>& W,
57  const size_t rows,
58  const size_t cols,
59  const size_t slices)
60  {
61  W.set_size(rows, cols, slices);
62  W.fill(initVal);
63  }
64 
66  double const& InitValue() const { return initVal; }
68  double& initValue() { return initVal; }
69 
70  private:
72  double initVal;
73 }; // class ConstInitialization
74 
75 } // namespace ann
76 } // namespace mlpack
77 
78 #endif
strip_type.hpp
Definition: add_to_po.hpp:21
The core includes that mlpack expects; standard C++ includes and Armadillo.
void Initialize(arma::Mat< eT > &W, const size_t rows, const size_t cols)
Initialize the elements of the specified weight matrix.
Definition: const_init.hpp:42
ConstInitialization(const double initVal=0)
Create the ConstantInitialization object.
Definition: const_init.hpp:31
double const & InitValue() const
Get the initialization value.
Definition: const_init.hpp:66
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).
Definition: const_init.hpp:56
This class is used to initialize weight matrix with constant values.
Definition: const_init.hpp:25
double & initValue()
Modify the initialization value.
Definition: const_init.hpp:68