mlpack 3.4.2
forward_visitor.hpp
Go to the documentation of this file.
1
13#ifndef MLPACK_METHODS_ANN_VISITOR_FORWARD_VISITOR_HPP
14#define MLPACK_METHODS_ANN_VISITOR_FORWARD_VISITOR_HPP
15
18
19#include <boost/variant.hpp>
20
21namespace mlpack {
22namespace ann {
23
28class ForwardVisitor : public boost::static_visitor<void>
29{
30 public:
32 ForwardVisitor(const arma::mat& input, arma::mat& output);
33
35 template<typename LayerType>
36 void operator()(LayerType* layer) const;
37
38 void operator()(MoreTypes layer) const;
39
40 private:
42 const arma::mat& input;
43
45 arma::mat& output;
46};
47
48} // namespace ann
49} // namespace mlpack
50
51// Include implementation.
52#include "forward_visitor_impl.hpp"
53
54#endif
ForwardVisitor executes the Forward() function given the input and output parameter.
void operator()(LayerType *layer) const
Execute the Forward() function.
ForwardVisitor(const arma::mat &input, arma::mat &output)
Execute the Forward() function given the input and output parameter.
void operator()(MoreTypes layer) const
boost::variant< Linear3D< arma::mat, arma::mat, NoRegularizer > *, Glimpse< arma::mat, arma::mat > *, Highway< arma::mat, arma::mat > *, MultiheadAttention< arma::mat, arma::mat, NoRegularizer > *, Recurrent< arma::mat, arma::mat > *, RecurrentAttention< arma::mat, arma::mat > *, ReinforceNormal< arma::mat, arma::mat > *, Reparametrization< arma::mat, arma::mat > *, Select< arma::mat, arma::mat > *, Sequential< arma::mat, arma::mat, false > *, Sequential< arma::mat, arma::mat, true > *, Subview< arma::mat, arma::mat > *, VRClassReward< arma::mat, arma::mat > *, VirtualBatchNorm< arma::mat, arma::mat > *, RBF< arma::mat, arma::mat, GaussianFunction > *, BaseLayer< GaussianFunction, arma::mat, arma::mat > *, PositionalEncoding< arma::mat, arma::mat > * > MoreTypes
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: cv.hpp:1