![]() |
aGrUM 3.1.1
a C++ library for (probabilistic) graphical models
|
InformationTheory is a template class which aims at gathering the implementation of informational functions (entropy, mutual information, etc.). More...
#include <informationTheory.h>
Public Member Functions | |
| InformationTheory (INFERENCE_ENGINE< GUM_SCALAR > &engine, NodeSet X, NodeSet Y, NodeSet Z) | |
| InformationTheory (INFERENCE_ENGINE< GUM_SCALAR > &engine, const NodeSet &X, const NodeSet &Y) | |
| InformationTheory (INFERENCE_ENGINE< GUM_SCALAR > &engine, const std::vector< std::string > &Xnames, const std::vector< std::string > &Ynames) | |
| InformationTheory (INFERENCE_ENGINE< GUM_SCALAR > &engine, const std::vector< std::string > &Xnames, const std::vector< std::string > &Ynames, const std::vector< std::string > &Znames) | |
| ~InformationTheory () | |
| GUM_SCALAR | entropyXY () |
| GUM_SCALAR | entropyX () |
| GUM_SCALAR | entropyY () |
| GUM_SCALAR | entropyXgivenY () |
| GUM_SCALAR | entropyYgivenX () |
| GUM_SCALAR | mutualInformationXY () |
| GUM_SCALAR | variationOfInformationXY () |
| GUM_SCALAR | entropyXgivenZ () |
| GUM_SCALAR | entropyYgivenZ () |
| GUM_SCALAR | entropyXYgivenZ () |
| GUM_SCALAR | entropyXgivenYZ () |
| GUM_SCALAR | mutualInformationXYgivenZ () |
Protected Member Functions | |
| void | makeInference_ () |
Protected Attributes | |
| INFERENCE_ENGINE< GUM_SCALAR > & | engine_ |
| const NodeSet | X_ |
| const NodeSet | Y_ |
| const NodeSet | Z_ |
| VariableSet | vX_ |
| VariableSet | vY_ |
| VariableSet | vZ_ |
| Tensor< GUM_SCALAR > | pXYZ_ |
| Tensor< GUM_SCALAR > | pXY_ |
| Tensor< GUM_SCALAR > | pXZ_ |
| Tensor< GUM_SCALAR > | pYZ_ |
| Tensor< GUM_SCALAR > | pX_ |
| Tensor< GUM_SCALAR > | pY_ |
| Tensor< GUM_SCALAR > | pZ_ |
InformationTheory is a template class which aims at gathering the implementation of informational functions (entropy, mutual information, etc.).
All these operations start with the inference of a joint distribution. Moreover, it is possible to want to condition these calculations. The inference (able to compute joint distributions) passed as an argument can therefore have previously defined evidence.
| INFERENCE_ENGINE | : the inference engine |
| GUM_SCALAR | : the numeric type of parameters |
Definition at line 83 of file informationTheory.h.
| INFORMATION_THEORY_TEMPLATE gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::InformationTheory | ( | INFERENCE_ENGINE< GUM_SCALAR > & | engine, |
| gum::NodeSet | X, | ||
| gum::NodeSet | Y, | ||
| gum::NodeSet | Z ) |
Definition at line 64 of file informationTheory_tpl.h.
References InformationTheory(), engine_, GUM_ERROR, makeInference_(), X_, Y_, and Z_.
Referenced by InformationTheory(), InformationTheory(), InformationTheory(), InformationTheory(), and ~InformationTheory().
| INFORMATION_THEORY_TEMPLATE gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::InformationTheory | ( | INFERENCE_ENGINE< GUM_SCALAR > & | engine, |
| const NodeSet & | X, | ||
| const NodeSet & | Y ) |
Definition at line 76 of file informationTheory_tpl.h.
References InformationTheory().
| INFORMATION_THEORY_TEMPLATE gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::InformationTheory | ( | INFERENCE_ENGINE< GUM_SCALAR > & | engine, |
| const std::vector< std::string > & | Xnames, | ||
| const std::vector< std::string > & | Ynames ) |
Definition at line 82 of file informationTheory_tpl.h.
References InformationTheory().
| INFORMATION_THEORY_TEMPLATE gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::InformationTheory | ( | INFERENCE_ENGINE< GUM_SCALAR > & | engine, |
| const std::vector< std::string > & | Xnames, | ||
| const std::vector< std::string > & | Ynames, | ||
| const std::vector< std::string > & | Znames ) |
Definition at line 92 of file informationTheory_tpl.h.
References InformationTheory().
| INFORMATION_THEORY_TEMPLATE gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::~InformationTheory | ( | ) |
Definition at line 103 of file informationTheory_tpl.h.
References InformationTheory().
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyX | ( | ) |
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyXgivenY | ( | ) |
Definition at line 163 of file informationTheory_tpl.h.
References GUM_LOG2_OR_0, pXY_, and pY_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyXgivenYZ | ( | ) |
Definition at line 258 of file informationTheory_tpl.h.
References GUM_ERROR, GUM_LOG2_OR_0, pXYZ_, pYZ_, and Z_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyXgivenZ | ( | ) |
Definition at line 191 of file informationTheory_tpl.h.
References GUM_ERROR, GUM_LOG2_OR_0, pXZ_, pZ_, and Z_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyXY | ( | ) |
Definition at line 158 of file informationTheory_tpl.h.
References pXY_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyXYgivenZ | ( | ) |
Definition at line 243 of file informationTheory_tpl.h.
References GUM_ERROR, GUM_LOG2_OR_0, pXYZ_, pZ_, and Z_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyY | ( | ) |
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyYgivenX | ( | ) |
Definition at line 177 of file informationTheory_tpl.h.
References GUM_LOG2_OR_0, pX_, and pXY_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::entropyYgivenZ | ( | ) |
Definition at line 206 of file informationTheory_tpl.h.
References GUM_ERROR, GUM_LOG2_OR_0, pYZ_, pZ_, and Z_.
|
protected |
Definition at line 108 of file informationTheory_tpl.h.
References engine_, pX_, pXY_, pXYZ_, pXZ_, pY_, pYZ_, pZ_, vX_, vY_, vZ_, X_, Y_, and Z_.
Referenced by InformationTheory().
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::mutualInformationXY | ( | ) |
Definition at line 221 of file informationTheory_tpl.h.
References GUM_LOG2_OR_0, pX_, pXY_, and pY_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::mutualInformationXYgivenZ | ( | ) |
Definition at line 273 of file informationTheory_tpl.h.
References GUM_ERROR, GUM_LOG2_OR_0, pXYZ_, pXZ_, pYZ_, pZ_, and Z_.
| INFORMATION_THEORY_TEMPLATE GUM_SCALAR gum::InformationTheory< INFERENCE_ENGINE, GUM_SCALAR >::variationOfInformationXY | ( | ) |
Definition at line 235 of file informationTheory_tpl.h.
References GUM_LOG2_OR_0, pX_, pXY_, and pY_.
|
protected |
Definition at line 116 of file informationTheory.h.
Referenced by InformationTheory(), and makeInference_().
|
protected |
Definition at line 130 of file informationTheory.h.
Referenced by entropyX(), entropyYgivenX(), makeInference_(), mutualInformationXY(), and variationOfInformationXY().
|
protected |
Definition at line 127 of file informationTheory.h.
Referenced by entropyXgivenY(), entropyXY(), entropyYgivenX(), makeInference_(), mutualInformationXY(), and variationOfInformationXY().
|
protected |
Definition at line 126 of file informationTheory.h.
Referenced by entropyXgivenYZ(), entropyXYgivenZ(), makeInference_(), and mutualInformationXYgivenZ().
|
protected |
Definition at line 128 of file informationTheory.h.
Referenced by entropyXgivenZ(), makeInference_(), and mutualInformationXYgivenZ().
|
protected |
Definition at line 131 of file informationTheory.h.
Referenced by entropyXgivenY(), entropyY(), makeInference_(), mutualInformationXY(), and variationOfInformationXY().
|
protected |
Definition at line 129 of file informationTheory.h.
Referenced by entropyXgivenYZ(), entropyYgivenZ(), makeInference_(), and mutualInformationXYgivenZ().
|
protected |
Definition at line 132 of file informationTheory.h.
Referenced by entropyXgivenZ(), entropyXYgivenZ(), entropyYgivenZ(), makeInference_(), and mutualInformationXYgivenZ().
|
protected |
Definition at line 122 of file informationTheory.h.
Referenced by makeInference_().
|
protected |
Definition at line 123 of file informationTheory.h.
Referenced by makeInference_().
|
protected |
Definition at line 124 of file informationTheory.h.
Referenced by makeInference_().
|
protected |
Definition at line 118 of file informationTheory.h.
Referenced by InformationTheory(), and makeInference_().
|
protected |
Definition at line 119 of file informationTheory.h.
Referenced by InformationTheory(), and makeInference_().
|
protected |
Definition at line 120 of file informationTheory.h.
Referenced by InformationTheory(), entropyXgivenYZ(), entropyXgivenZ(), entropyXYgivenZ(), entropyYgivenZ(), makeInference_(), and mutualInformationXYgivenZ().