Feat C++ API
A feature engineering automation tool
n_Dx.h
Go to the documentation of this file.
1 #ifndef NODE_DIF_H
2 #define NODE_DIF_H
3 
4 #include "node.h"
5 
6 // There could be a potential problem with the use of loc and how the weights line up with the arguments as the methods I was using are different then the ones feat is using
7 // Need to remember for implementing auto-backprop that the arguments are in reverse order (top of the state is the last argument)
8 
9 namespace FT{
10 namespace Pop{
11 namespace Op{
12 
13 class NodeDx : public Node
14 {
15  public:
16  std::vector<float> W;
17  std::vector<float> V;
18 
19  virtual ~NodeDx();
20 
21  virtual ArrayXf getDerivative(Trace& state, int loc) = 0;
22 
23  void derivative(vector<ArrayXf>& gradients, Trace& state, int loc);
24 
25  void update(vector<ArrayXf>& gradients, Trace& state, float n, float a);
26 
27  void print_weight();
28 
29  bool isNodeDx();
30 };
31 // serialization
33 }
34 }
35 }
36 
37 #endif
bool isNodeDx()
check of node type
Definition: n_Dx.cc:80
void print_weight()
Definition: n_Dx.cc:71
virtual ~NodeDx()
Definition: n_Dx.cc:8
void update(vector< ArrayXf > &gradients, Trace &state, float n, float a)
Definition: n_Dx.cc:15
std::vector< float > V
Definition: n_Dx.h:17
virtual ArrayXf getDerivative(Trace &state, int loc)=0
void derivative(vector< ArrayXf > &gradients, Trace &state, int loc)
Definition: n_Dx.cc:10
std::vector< float > W
Definition: n_Dx.h:16
Represents nodes in a program.
Definition: node.h:54
NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(NodeFuzzyFixedSplit< float >, name, otype, arity, complexity, visits, train, threshold, threshold_set) NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(NodeFuzzyFixedSplit< int >
main Feat namespace
Definition: data.cc:13
used for tracing stack outputs for backprop algorithm.
Definition: state.h:232