@misc{10481/70402, year = {2021}, url = {http://hdl.handle.net/10481/70402}, abstract = {Kullback–Leibler divergence KL(p, q) is the standard measure of error when we have a true probability distribution p which is approximate with probability distribution q. Its efficient computation is essential in many tasks, as in approximate computation or as a measure of error when learning a probability. In high dimensional probabilities, as the ones associated with Bayesian networks, a direct computation can be unfeasible. This paper considers the case of efficiently computing the Kullback–Leibler divergence of two probability distributions, each one of them coming from a different Bayesian network, which might have different structures. The paper is based on an auxiliary deletion algorithm to compute the necessary marginal distributions, but using a cache of operations with potentials in order to reuse past computations whenever they are necessary. The algorithms are tested with Bayesian networks from the bnlearn repository. Computer code in Python is provided taking as basis pgmpy, a library for working with probabilistic graphical models.}, organization = {Spanish Ministry of Education and Science under project PID2019-106758GB-C31}, organization = {European Regional Development Fund (FEDER)}, publisher = {Universidad de Granada}, keywords = {Probabilistic graphical models}, keywords = {Machine learning algorithms}, keywords = {Kullback–Leibler divergence}, title = {Computation of Kullback–Leibler Divergence in Bayesian Networks}, doi = {10.3390/e23091122}, author = {Moral Callejón, Serafín and Cano Utrera, Andrés and Gómez Olmedo, Manuel}, }