16 explicit Node(
const std::string&);
18 void addParent(
Node*);
20 void removeParent(
Node*);
21 void removeChild(
Node*);
22 std::string getName()
const;
23 std::vector<Node*>& getParents();
24 std::vector<Node*>& getChildren();
25 torch::Tensor& getCPT();
26 void computeCPT(
const torch::Tensor& dataset,
const std::vector<std::string>& features,
const double smoothing,
const torch::Tensor& weights);
27 int getNumStates()
const;
28 void setNumStates(
int);
30 std::vector<std::string> graph(
const std::string& clasName);
31 double getFactorValue(std::map<std::string, int>&);
34 std::vector<Node*> parents;
35 std::vector<Node*> children;
37 torch::Tensor cpTable;
38 std::vector<int64_t> dimensions;
39 std::vector<std::pair<std::string, std::string>> combinations(
const std::vector<std::string>&);