# Kullback–Leibler divergence

Template:Distinguish2
In probability theory and information theory, the **Kullback–Leibler divergence**^{[1]}^{[2]}^{[3]} (also **information divergence**, **information gain**, **relative entropy**, or **KLIC**; here abbreviated as KL divergence) is a non-symmetric measure of the difference between two probability distributions *P* and *Q*. Specifically, the Kullback–Leibler divergence of *Q* from *P*, denoted *D*_{KL}(*P*‖*Q*), is a measure of the information lost when *Q* is used to approximate *P*:^{[4]} The KL divergence measures the expected number of *extra* (so intuitively it is non negative; this can be verified by Jensen's inequality) bits required to code samples from *P* when using a code optimized for *Q*, rather than using the true code optimized for *P*. Typically *P* represents the "true" distribution of data, observations, or a precisely calculated theoretical distribution. The measure *Q* typically represents a theory, model, description, or approximation of *P*.

Although it is often intuited as a metric or distance, the KL divergence is not a true metric — for example, it is not symmetric: the KL divergence from *P* to *Q* is generally not the same as that from *Q* to *P*. However, its infinitesimal form, specifically its Hessian, is a metric tensor: it is the Fisher information metric.

KL divergence is a special case of a broader class of divergences called *f*-divergences.
It was originally introduced by Solomon Kullback and Richard Leibler in 1951 as the **directed divergence** between two distributions.
It can be derived from a Bregman divergence.

## Definition

For discrete probability distributions *P* and *Q*,
the KL divergence of *Q* from *P* is defined to be

In words, it is the expectation of the logarithmic difference between the probabilities *P* and *Q*, where the expectation is taken using the probabilities *P*. The KL divergence is only defined if ⇒ , for all *i* (absolute continuity). If the quantity 0 ln 0 appears in the formula, it is interpreted as zero, because .

For distributions *P* and *Q* of a continuous random variable, KL divergence is defined to be the integral:^{[5]}

where *p* and *q* denote the densities of *P* and *Q*.

More generally, if *P* and *Q* are probability
measures over a set *X*, and *P*
is absolutely continuous with respect to *Q*, then
the Kullback–Leibler
divergence from *P* to *Q* is defined as

where
is the Radon–Nikodym derivative of *P* with respect to *Q*,
and provided the expression on the right-hand side exists. Equivalently, this
can be written as

which we recognize as the entropy of *P* relative to *Q*. Continuing in this case, if is any measure on *X* for which and exist (meaning that *p* and *q* are absolutely continuous with respect to ), then the KL divergence from *P* to *Q* is given as

The logarithms in these formulae are taken to base 2 if information is measured in units of bits, or to base *e* if information is measured in nats. Most formulas involving the KL divergence hold irrespective of log base.

Various conventions exist for referring to *D*_{KL}(*P*‖*Q*) in words. Often it is referred to as the divergence *between* *P* and *Q*; however this fails to convey the fundamental asymmetry in the relation. Sometimes it may be found described as the divergence of *P* from, or with respect to *Q* (often in the context of relative entropy, or information gain). However, in the present article the divergence of *Q* from *P* will be the language used, as this best relates to the idea that it is *P* that is considered the underlying "true" or "best guess" distribution, that expectations will be calculated with reference to, while *Q* is some divergent, less good, approximate distribution.

## Motivation

In information theory, the Kraft–McMillan theorem establishes that any directly decodable coding scheme for coding a message to identify one value out of a set of possibilities can be seen as representing an implicit probability distribution over , where is the length of the code for in bits. Therefore, KL divergence can be interpreted as the expected extra message-length per datum that must be communicated if a code that is optimal for a given (wrong) distribution is used, compared to using a code based on the true distribution .

where *H*(*P*,*Q*) is the cross entropy of *P* and *Q*, and *H*(*P*) is the entropy of *P*.

Note also that there is a relation between the KL divergence and the "rate function" in the theory of large deviations.^{[6]}^{[7]}

Kullback brings together all{{ safesubst:#invoke:Unsubst||$N=Dubious |date=__DATE__ |$B=
{{#invoke:Category handler|main}}^{[dubious – discuss]}
}} notions of information in his historic text, *Information Theory and Statistics*. For instance he shows that the mean discriminating information between two hypotheses is the basis for all of the various measures of information, from Shannon to Fisher. Shannon's rate is the mean information between the hypotheses of dependence and independence of processes.Template:Clarify Fisher's information is second order term and dominant in the Taylor approximation of the discriminating information between two models of the same parametric family.^{[2]}

## Properties

The Kullback–Leibler divergence is always non-negative,

a result known as Gibbs' inequality, with *D*_{KL}(*P*‖*Q*) zero if and only if *P* = *Q* almost everywhere. The entropy *H(P)* thus sets a minimum value for the cross-entropy *H*(*P*,*Q*), the expected number of bits required when using a code based on *Q* rather than *P*; and the KL divergence therefore represents the expected number of extra bits that must be transmitted to identify a value *x* drawn from *X*, if a code is used corresponding to the probability distribution *Q*, rather than the "true" distribution *P*.

The Kullback–Leibler divergence remains well-defined for continuous distributions, and furthermore is invariant under parameter transformations. For example, if a transformation is made from variable *x* to variable *y*(*x*), then, since *P*(*x*) *dx* = *P*(*y*) *dy* and *Q*(*x*) *dx* = *Q*(*y*) *dy* the Kullback–Leibler divergence may be rewritten:

where and . Although it was assumed that the transformation was continuous, this need not be the case. This also shows that the Kullback–Leibler divergence produces a dimensionally consistent quantity, since if *x* is a dimensioned variable, *P*(*x*) and *Q*(*x*) are also dimensioned, since e.g. *P*(*x*) *dx* is dimensionless. The argument of the logarithmic term is and remains dimensionless, as it must. It can therefore be seen as in some ways a more fundamental quantity than some other properties in information theory^{[8]} (such as self-information or Shannon entropy), which can become undefined or negative for non-discrete probabilities.

The Kullback–Leibler divergence is additive for independent distributions in much the same way as Shannon entropy. If are independent distributions, with the joint distribution , and likewise, then

## KL divergence for multivariate normal distributions

Suppose that we have two multivariate normal distributions, with means and with (nonsingular) covariance matrices . If the two distributions have the same dimension, *k*, then the Kullback–Leibler divergence between the distributions is as follows.^{[9]}

The logarithm in the last term must be taken to base *e* since all terms apart from the last are base-*e* logarithms of expressions that are either factors of the density function or otherwise arise naturally. The equation therefore gives a result measured in nats. Dividing the entire expression above by log_{e} 2 yields the divergence in bits.

## Relation to metrics

One might be tempted to call it a "distance metric" on the space of probability distributions, but this would not be correct as the Kullback–Leibler divergence is not symmetric – that is, , – nor does it satisfy the triangle inequality. Even so, being a premetric, it generates a topology on the space of probability distributions. More concretely, if is a sequence of distributions such that

then it is said that . Pinsker's inequality entails that , where the latter stands for the usual convergence in total variation.

Following Rényi (1970, 1961)^{[10]}^{[11]} the term is sometimes also called the **information gain** about *X* achieved if *P* can be used instead of *Q*. It is also called the **relative entropy** of *P* with respect to *Q*, and written *H(P|Q)*.

### Fisher information metric

However, the Kullback–Leibler divergence is rather directly related to a metric, specifically, the Fisher information metric. This can be made explicit as follows. Assume that the probability distributions *P* and *Q* are both parameterized by some (possibly multi-dimensional) parameter . Consider then two close by values of and so that the parameter differs by only a small amount from the parameter value . Specifically, up to first order one has (using the Einstein summation convention)

with a small change of in the *j* direction, and the corresponding rate of change in the probability distribution. Since the KL divergence has an absolute minimum 0 for *P* = *Q*, i.e. , it changes only to *second* order in the small parameters . More formally, as for any minimum, the first derivatives of the divergence vanish

and by the Taylor expansion one has up to second order

where the Hessian matrix of the divergence

must be positive semidefinite. Letting vary (and dropping the subindex 0) the Hessian defines a (possibly degenerate) Riemannian metric on the parameter space, called the Fisher information metric.

## Relation to other quantities of information theory

Many of the other quantities of information theory can be interpreted as applications of the KL divergence to specific cases.

The self-information,

is the KL divergence of the probability distribution *P*(*i*) from a Kronecker delta representing certainty that *i* = *m* — i.e. the number of extra bits that must be transmitted to identify *i* if only the probability distribution *P*(*i*) is available to the receiver, not the fact that *i* = *m*.

The mutual information,

is the KL divergence of the product *P*(*X*)*P*(*Y*) of the two marginal probability distributions from the joint probability distribution *P*(*X*,*Y*) — i.e. the expected number of extra bits that must be transmitted to identify *X* and *Y* if they are coded using only their marginal distributions instead of the joint distribution. Equivalently, if the joint probability *P*(*X*,*Y*) *is* known, it is the expected number of extra bits that must on average be sent to identify *Y* if the value of *X* is not already known to the receiver.

The Shannon entropy,

is the number of bits which would have to be transmitted to identify *X* from *N* equally likely possibilities, *less* the KL divergence of the uniform distribution *P*_{U}*(X)* from the true distribution *P*(*X*) — i.e. *less* the expected number of bits saved, which would have had to be sent if the value of *X* were coded according to the uniform distribution *P*_{U}(*X*) rather than the true distribution *P*(*X*).

The conditional entropy,

is the number of bits which would have to be transmitted to identify *X* from *N* equally likely possibilities, *less* the KL divergence of the product distribution *P*_{U}(*X*) *P*(*Y*) from the true joint distribution *P*(*X*,*Y*) — i.e. *less* the expected number of bits saved which would have had to be sent if the value of *X* were coded according to the uniform distribution *P*_{U}(*X*) rather than the conditional distribution *P*(*X* | *Y*)* of *X* given *Y*.*

The cross entropy between two probability distributions measures the average number of bits needed to identify an event from a set of possibilities, if a coding scheme is used based on a given probability distribution , rather than the "true" distribution . The cross entropy for two distributions and over the same probability space is thus defined as follows:

## KL divergence and Bayesian updating

In Bayesian statistics the KL divergence can be used as a measure of the information gain in moving from a prior distribution to a posterior distribution. If some new fact *Y* = *y* is discovered, it can be used to update the probability distribution for *X* from *p*(*x* | I) to a new posterior probability distribution *p*(*x* | *y*,I) using Bayes' theorem:

This distribution has a new entropy

which may be less than or greater than the original entropy *H*(*p*(· | *I*)).
However, from the standpoint of the new probability distribution one can estimate that to have used the original code based on *p*(*x* | I) instead of a new code based on *p*(*x* | *y*,I) would have added an expected number of bits

to the message length. This therefore represents the amount of useful information, or information gain, about *X*, that we can estimate has been learned by discovering *Y* = *y*.

If a further piece of data, *Y*_{2} = *y*_{2}, subsequently comes in, the probability distribution for *x* can be updated further, to give a new best guess *p*(*x*|*y*_{1},*y*_{2},I). If one reinvestigates the information gain for using *p*(*x*|*y*_{1},I) rather than *p*(*x*|*I*), it turns out that it may be either greater or less than previously estimated:

and so the combined information gain does *not* obey the triangle inequality:

All one can say is that on *average*, averaging using *p*(*y*_{2} | *y*_{1},*x*,*I*), the two sides will average out.

### Bayesian experimental design

A common goal in Bayesian experimental design is to maximise the expected KL divergence between the prior and the posterior.^{[12]} When posteriors are approximated to be Gaussian distributions, a design maximising the expected KL divergence is called Bayes d-optimal.

## Discrimination information

The Kullback–Leibler divergence *D*_{KL}( *p*(*x*|*H*_{1}) ‖ *p*(*x*|*H*_{0}) ) can also be interpreted as the expected **discrimination information** for *H*_{1} over *H*_{0}: the mean information per sample for discriminating in favor of a hypothesis *H*_{1} against a hypothesis *H*_{0}, when hypothesis *H*_{1} is true.^{[13]} Another name for this quantity, given to it by I.J. Good, is the expected weight of evidence for *H*_{1} over *H*_{0} to be expected from each sample.

The expected weight of evidence for *H*_{1} over *H*_{0} is **not** the same as the information gain expected per sample about the probability distribution *p*(*H*) of the hypotheses,

Either of the two quantities can be used as a utility function in Bayesian experimental design, to choose an optimal next question to investigate: but they will in general lead to rather different experimental strategies.

On the entropy scale of *information gain* there is very little difference between near certainty and absolute certainty—coding according to a near certainty requires hardly any more bits than coding according to an absolute certainty. On the other hand, on the logit scale implied by weight of evidence, the difference between the two is enormous – infinite perhaps; this might reflect the difference between being almost sure (on a probabilistic level) that, say, the Riemann hypothesis is correct, compared to being certain that it is correct because one has a mathematical proof. These two different scales of loss function for uncertainty are *both* useful, according to how well each reflects the particular circumstances of the problem in question.

### Principle of minimum discrimination information

The idea of Kullback–Leibler divergence as discrimination information led Kullback to propose the Principle of **Minimum Discrimination Information** (MDI): given new facts, a new distribution *f* should be chosen which is as hard to discriminate from the original distribution *f*_{0} as possible; so that the new data produces as small an information gain *D*_{KL}( *f* ‖ *f*_{0} ) as possible.

For example, if one had a prior distribution *p*(*x*,*a*) over *x* and *a*, and subsequently learnt the true distribution of *a* was *u*(*a*), the Kullback–Leibler divergence between the new joint distribution for *x* and *a*, *q*(*x*|*a*) *u*(*a*), and the earlier prior distribution would be:

i.e. the sum of the KL divergence of *p*(*a*) the prior distribution for *a* from the updated distribution *u*(*a*), plus the expected value (using the probability distribution *u*(*a*)) of the KL divergence of the prior conditional distribution *p*(*x*|*a*) from the new conditional distribution *q*(*x*|*a*). (Note that often the later expected value is called the *conditional KL divergence* (or *conditional relative entropy*) and denoted by *D*_{KL}(*q*(*x*|*a*)‖*p*(*x*|*a*))^{[14]}) This is minimized if *q*(*x*|*a*) = *p*(*x*|*a*) over the whole support of *u*(*a*); and we note that this result incorporates Bayes' theorem, if the new distribution *u*(*a*) is in fact a δ function representing certainty that *a* has one particular value.

MDI can be seen as an extension of Laplace's Principle of Insufficient Reason, and the Principle of Maximum Entropy of E.T. Jaynes. In particular, it is the natural extension of the principle of maximum entropy from discrete to continuous distributions, for which Shannon entropy ceases to be so useful (see *differential entropy*), but the KL divergence continues to be just as relevant.

In the engineering literature, MDI is sometimes called the **Principle of Minimum Cross-Entropy** (MCE) or **Minxent** for short. Minimising the KL divergence of *m* from *p* with respect to *m* is equivalent to minimizing the cross-entropy of *p* and *m*, since

which is appropriate if one is trying to choose an adequate approximation to *p*. However, this is just as often *not* the task one is trying to achieve. Instead, just as often it is *m* that is some fixed prior reference measure, and *p* that one is attempting to optimise by minimising *D*_{KL}(*p*‖*m*) subject to some constraint. This has led to some ambiguity in the literature, with some authors attempting to resolve the inconsistency by redefining cross-entropy to be *D*_{KL}(*p*‖*m*), rather than *H*(*p*,*m*).

## Relationship to available work

Surprisals^{[15]} add where probabilities multiply. The surprisal for an event of probability is defined as . If is then surprisal is in nats, bits, or so that, for instance, there are bits of surprisal for landing all "heads" on a toss of coins.

Best-guess states (e.g. for atoms in a gas) are inferred by maximizing the *average surprisal* (entropy) for a given set of control parameters (like pressure or volume ). This constrained entropy maximization, both classically^{[16]} and quantum mechanically,^{[17]} minimizes Gibbs availability in entropy units^{[18]} where is a constrained multiplicity or partition function.

When temperature is fixed, free energy () is also minimized. Thus if and number of molecules are constant, the Helmholtz free energy (where is energy) is minimized as a system "equilibrates." If and are held constant (say during processes in your body), the Gibbs free energy is minimized instead. The change in free energy under these conditions is a measure of available work that might be done in the process. Thus available work for an ideal gas at constant temperature and pressure is where and (see also Gibbs inequality).

More generally^{[19]} the work available relative to some ambient is obtained by multiplying ambient temperature by KL divergence or *net surprisal* , defined as the average value of where is the probability of a given state under ambient conditions. For instance, the work available in equilibrating a monatomic ideal gas to ambient values of and is thus , where KL divergence . The resulting contours of constant KL divergence, shown at right for a mole of Argon at standard temperature and pressure, for example put limits on the conversion of hot to cold as in flame-powered air-conditioning or in the unpowered device to convert boiling-water to ice-water discussed here.^{[20]} Thus KL divergence measures thermodynamic availability in bits.

## Quantum information theory

For density matrices *P* and *Q* on a Hilbert space
the K–L divergence (or quantum relative entropy as it is often called in this case) from *P* to *Q* is defined to be

In quantum information science the minimum of over all separable states Q can also be used as a measure of entanglement in the state P.

## Relationship between models and reality

Just as KL divergence of "ambient from actual" measures thermodynamic availability, KL divergence of "model from reality" is also useful even if the only clues we have about reality are some experimental measurements. In the former case KL divergence describes *distance to equilibrium* or (when multiplied by ambient temperature) the amount of *available work*, while in the latter case it tells you about surprises that reality has up its sleeve or, in other words, *how much the model has yet to learn*.

Although this tool for evaluating models against systems that are accessible experimentally may be applied in any field, its application to selecting a statistical model via Akaike information criterion are particularly well described in papers^{[21]} and a book^{[22]} by Burnham and Anderson. In a nutshell the KL divergence of a model from reality may be estimated, to within a constant additive term, by a function (like the squares summed) of the deviations observed between data and the model's predictions. Estimates of such divergence for models that share the same additive term can in turn be used to select among models.

When trying to fit parametrized models to data there are various estimators which attempt to minimize Kullback–Leibler divergence, such as maximum likelihood and maximum spacing estimators.

## Symmetrised divergence

Kullback and Leibler themselves actually defined the divergence as:

which is symmetric and nonnegative. This quantity has sometimes been used for feature selection in classification problems, where *P* and *Q* are the conditional pdfs of a feature under two different classes.

An alternative is given via the λ divergence,

which can be interpreted as the expected information gain about *X* from discovering which probability distribution *X* is drawn from, *P* or *Q*, if they currently have probabilities λ and (1 − λ) respectively.

The value λ = 0.5 gives the Jensen–Shannon divergence, defined by

where *M* is the average of the two distributions,

*D*_{JS} can also be interpreted as the capacity of a noisy information channel with two inputs giving the output distributions *p* and *q*. The Jensen–Shannon divergence, like all *f*-divergences, is *locally* proportional to the Fisher information metric. It is similar to the Hellinger metric (in the sense that induces the same affine connection on a statistical manifold), and equal to one-half the so-called *Jeffreys divergence*.^{[23]}^{[24]}

## Relationship to Rényi divergence and Hellinger distance

If *P* and *Q* are two probability measures, then the squared Hellinger distance is the quantity given by

and the Rényi divergence of order α is

The Kullback–Leibler divergence can be lower bounded in terms of the Rényi divergence of order ½^{[25]} and the Hellinger distance^{[26]}

## Other probability-distance measures

Other measures of probability distance are the *histogram intersection*, *Chi-squared statistic*, *quadratic form distance*, *match distance*, *Kolmogorov–Smirnov distance*, and *earth mover's distance*.^{[23]}

## Data differencing

{{#invoke:main|main}}
Just as *absolute* entropy serves as theoretical background for data *compression*, *relative* entropy serves as theoretical background for data *differencing* – the absolute entropy of a set of data in this sense being the data required to reconstruct it (minimum compressed size), while the relative entropy of a target set of data, given a source set of data, is the data required to reconstruct the target *given* the source (minimum size of a patch).

## See also

- Bregman divergence
- Jensen–Shannon divergence
- Deviance information criterion
- Bayesian information criterion
- Quantum relative entropy
- Information gain in decision trees
- Solomon Kullback and Richard Leibler
- Information theory and measure theory
- Entropy power inequality
- Information gain ratio
- Entropic value at risk
- Akaike Information Criterion

## References

- ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑
^{2.0}^{2.1}Kullback S. (1959),*Information Theory and Statistics*(John Wiley & Sons). - ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑ Burnham K.P., Anderson D.R. (2002),
*Model Selection and Multi-Model Inference*(Springer). (2nd edition), p.51 - ↑ Bishop C. (2006).
*Pattern Recognition and Machine Learning*p. 55. - ↑ Sanov I.N. (1957), "On the probability of large deviations of random magnitudes",
*Matem. Sbornik*, v. 42 (84), 11–44. - ↑ Novak S.Y. (2011),
*Extreme Value Methods with Applications to Finance*ch. 14.5 (Chapman & Hall). ISBN 978-1-4398-3574-6. - ↑ See the section "differential entropy - 4" in Relative Entropy video lecture by Sergio Verdú NIPS 2009
- ↑ Duchi J., "Derivations for Linear Algebra and Optimization", p. 13.
- ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ {{#invoke:citation/CS1|citation |CitationClass=citation }}
- ↑ Chaloner K., Verdinelli I. (1995), "Bayesian experimental design: a review",
*Statistical Science***10**(3): 273–304. Template:Hide in printTemplate:Only in print - ↑ {{#invoke:citation/CS1|citation |CitationClass=book }}
- ↑ Thomas M. Cover, Joy A. Thomas (1991)
*Elements of Information Theory*(John Wiley & Sons), p.22 - ↑ Myron Tribus (1961),
*Thermodynamics and Thermostatics*(D. Van Nostrand, New York) - ↑ E. T. Jaynes (1957), "Information theory and statistical mechanics",
*Physical Review***106**:620. - ↑ E. T. Jaynes (1957), "Information theory and statistical mechanics II",
*Physical Review***108**:171 - ↑ J.W. Gibbs (1873), "A method of geometrical representation of thermodynamic properties of substances by means of surfaces", reprinted in
*The Collected Works of J. W. Gibbs, Volume I Thermodynamics*, ed. W. R. Longley and R. G. Van Name (New York: Longmans, Green, 1931) footnote page 52. - ↑ M. Tribus and E. C. McIrvine (1971), "Energy and information",
*Scientific American***224**:179–186. - ↑ P. Fraundorf (2007), "Thermal roots of correlation-based complexity",
*Complexity***13**:3, 18–26 - ↑ Burnham K.P., Anderson D.R. (2001), "Kullback–Leibler information as a basis for strong inference in ecological studies",
*Wildlife Research***28**:111–119. - ↑ Burnham, K. P. and Anderson D. R. (2002),
*Model Selection and Multimodel Inference: A Practical Information-Theoretic Approach, Second Edition*(Springer Science) ISBN 978-0-387-95364-9. - ↑
^{23.0}^{23.1}Rubner, Y., Tomasi, C., and Guibas, L. J. (2000), "The earth mover's distance as a metric for image retrieval",*International Journal of Computer Vision*,**40**(2): 99–121. - ↑ Jeffreys, H. (1946), "An invariant form for the prior probability in estimation problems",
*Proceedings of the Royal Society of London, Series A*, 186: 453-461. - ↑ {{#invoke:Citation/CS1|citation |CitationClass=journal }}
- ↑ Pollard, D., "Distances and affinities between measures".

## External links

- Information Theoretical Estimators Toolbox
- Ruby gem for calculating KL divergence
- Jon Shlens' tutorial on Kullback–Leibler divergence and likelihood theory
- Matlab code for calculating KL divergence for discrete distributions
- Sergio Verdú, Relative Entropy, NIPS 2009. One-hour video lecture.
- A modern summary of info-theoretic divergence measures