55 template <
typename GUM_SCALAR >
57 GUM_SCALAR default_weight) :
63 template <
typename GUM_SCALAR >
70 template <
typename GUM_SCALAR >
78 template <
typename GUM_SCALAR >
83 template <
typename GUM_SCALAR >
89 if (i.
val(C) > 1)
return (GUM_SCALAR)0.0;
93 for (
Idx j = 1; j < this->
nbrDim(); j++) {
98 fact = 1 / (1 + std::exp(-fact));
99 auto res = (i.
val(C) == 1) ? fact : (GUM_SCALAR)1.0 - fact;
104 template <
typename GUM_SCALAR >
109 for (
Idx i = 1; i < this->
nbrDim(); i++) {
112 if (c != GUM_SCALAR(0)) {
127 template <
typename GUM_SCALAR >
132 template <
typename GUM_SCALAR >
138 template <
typename GUM_SCALAR >
140 static const std::string str =
"MultiDimLogit";
Set of pairs of elements with fast search for both elements.
Base class for discrete random variable.
Class for assigning/browsing values to tuples of discrete variables.
Idx val(Idx i) const
Returns the current value of the variable at position i.
Abstract base class for all multi dimensionnal containers.
GUM_SCALAR externalWeight() const
Copy of a multiDimICIModel.
GUM_SCALAR _default_weight_
in Henrion (89) in a hashtable with a default_value.
MultiDimICIModel(GUM_SCALAR external_weight, GUM_SCALAR default_weight=(GUM_SCALAR) 1.0)
Default constructor.
GUM_SCALAR causalWeight(const DiscreteVariable &v) const
Copy of a multiDimICIModel.
GUM_SCALAR _external_weight_
in Henrion (89).
virtual Idx nbrDim() const override
Returns the number of vars in the multidimensional container.
const DiscreteVariable & variable(Idx i) const override
Returns a const ref to the ith var.
virtual ~MultiDimLogit()
Destructor.
virtual const std::string & name() const
Returns the real name of the multiDimArray.
virtual MultiDimContainer< GUM_SCALAR > * newFactory() const
This method creates a clone of this object, withouth its content (including variable),...
MultiDimLogit(GUM_SCALAR external_weight, GUM_SCALAR default_weight=(GUM_SCALAR) 0.0)
Default constructor.
std::string toString() const
Returns the real name of the multiDimArray.
virtual GUM_SCALAR get(const Instantiation &i) const
Returns the real name of the multiDimArray.
Exception : operation not allowed.
#define GUM_ERROR(type, msg)
Size Idx
Type for indexes.
Headers of gum::MultiDimImplementation.
class for LOGIT implementation as multiDim
gum is the global namespace for all aGrUM entities
std::ostream & operator<<(std::ostream &stream, const AVLTree< Val, Cmp > &tree)
display the content of a tree