13 #ifndef MLPACK_METHODS_ANN_VISITOR_GRADIENT_SET_VISITOR_HPP 14 #define MLPACK_METHODS_ANN_VISITOR_GRADIENT_SET_VISITOR_HPP 18 #include <boost/variant.hpp> 33 template<
typename LayerType>
47 typename std::enable_if<
48 HasGradientCheck<T, arma::mat&(T::*)()>::value &&
49 !HasModelCheck<T>::value,
size_t>::type
50 LayerGradients(T* layer, arma::mat& input)
const;
54 typename std::enable_if<
55 !HasGradientCheck<T, arma::mat&(T::*)()>::value &&
56 HasModelCheck<T>::value,
size_t>::type
57 LayerGradients(T* layer, arma::mat& input)
const;
62 typename std::enable_if<
63 HasGradientCheck<T, arma::mat&(T::*)()>::value &&
64 HasModelCheck<T>::value,
size_t>::type
65 LayerGradients(T* layer, arma::mat& input)
const;
69 template<
typename T,
typename P>
70 typename std::enable_if<
71 !HasGradientCheck<T, P&(T::*)()>::value &&
72 !HasModelCheck<T>::value,
size_t>::type
73 LayerGradients(T* layer, P& input)
const;
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: cv.hpp:1
GradientSetVisitor(arma::mat &gradient, size_t offset=0)
Update the gradient parameter given the gradient set.
Definition: gradient_set_visitor_impl.hpp:22
GradientSetVisitor update the gradient parameter given the gradient set.
Definition: gradient_set_visitor.hpp:26
size_t operator()(LayerType *layer) const
Update the gradient parameter.
Definition: gradient_set_visitor_impl.hpp:31