Kullback–Leibler divergence

Understanding Kullback–Leibler Divergence

Kullback–Leibler divergence, often abbreviated as KL divergence, is a measure of how one probability distribution diverges from a second, expected probability distribution. It is used in various fields such as information theory, machine learning, and statistics to compare distributions and quantify the difference between them.

What is Kullback–Leibler Divergence?

KL divergence is a non-symmetric measure of the difference between two probability distributions P and Q. Specifically, it measures the number of extra bits required to code samples from P when using a code based on Q, rather than using a code based on P. In other words, it is the amount of information lost when Q is used to approximate P.

It was introduced by Solomon Kullback and Richard Leibler in 1951 and is also known as relative entropy. The divergence is always non-negative and is zero if and only if P and Q are the same distribution in the case of discrete variables, or equal "almost everywhere" in the case of continuous variables.

Formula for Kullback–Leibler Divergence

The KL divergence of Q from P, denoted as DKL(P || Q), is defined as follows:

For discrete probability distributions P and Q defined on the same probability space, the KL divergence is calculated as:

\[ D_{KL}(P || Q) = \sum_{i} P(i) \log\left(\frac{P(i)}{Q(i)}\right) \]

For continuous probability distributions, the summation is replaced by an integral:

\[ D_{KL}(P || Q) = \int_{-\infty}^{\infty} p(x) \log\left(\frac{p(x)}{q(x)}\right) dx \]

where P and Q are the probability mass functions of discrete distributions, or probability density functions of continuous distributions, and the logarithm is typically taken to base 2 or base e.

Properties of KL Divergence

Some key properties of KL divergence include:

  • Non-negativity: KL divergence is always greater than or equal to zero.
  • Non-symmetry: DKL(P || Q) is not necessarily equal to DKL(Q || P). This means that swapping P and Q can lead to different values, unlike distance metrics like Euclidean distance.
  • Zero if and only if P equals Q: The KL divergence is zero if and only if the two distributions are identical.

Applications of KL Divergence

KL divergence has a wide range of applications:

  • Machine Learning:

    In machine learning, KL divergence is used as a loss function in various algorithms, particularly in situations where we need to measure how well a model's predicted probabilities match the actual distribution of the data.

  • Information Theory: It is used to measure the information gain between distributions, which is central to the field of information theory.
  • Statistics: KL divergence is used for model selection, hypothesis testing, and detecting changes in data streams.

Limitations of KL Divergence

Despite its usefulness, KL divergence has some limitations:

  • Sensitivity to Zero Probabilities: KL divergence is not defined when Q(i) is zero and P(i) is non-zero, as it involves taking the logarithm of zero.
  • Non-symmetry: The non-symmetric nature of KL divergence means it does not satisfy the triangle inequality, and thus cannot be considered a true metric of distance.


Kullback–Leibler divergence is a fundamental concept in statistics and machine learning for quantifying the difference between two probability distributions. While it is a powerful tool for comparing distributions, its limitations and properties must be well understood to apply it correctly in practice.

Please sign up or login with your details

Forgot password? Click here to reset