Information entropy

In information theory, the Shannon entropy or information entropy is a measure of the uncertainty associated with a random variable.

Shannon entropy quantifies the information contained in a piece of data: it is the minimum average message length, in bits (if using base-2 logarithms), that must be sent to communicate the true value of the random variable to a recipient. Intuitively, it measures how many yes/no questions must be answered, on average, to communicate each new outcome of the random variable. This represents a fundamental mathematical limit on the best possible lossless data compression of any communication: considering a certain message as a series of realisations of a certain random variable (where the random variable can be "the next letter", or "the next word", or any other subdivision of text), the shortest number of bits necessary to transmit one message is the Shannon entropy of the corresponding random variable, multiplied by the number of realisations in the original text.

ASCII characters, if chosen uniformly at random, have an entropy of exactly 7 bits per character. However, if one knows that one or more characters are chosen more frequently than others, then our uncertainty is lower (if asked to bet on the next outcome, we would bet preferentially on the most frequent characters), and thus the Shannon entropy is lower. A long string of repeating characters has an entropy of 0, since every character is predictable. The entropy of English text is between 1.0 and 1.5 bits per letter. Equivalently, the Shannon entropy is a measure of the average information content the recipient is missing when he does not know the value of the random variable.

The concept was introduced by Claude E. Shannon in his 1948 paper "A Mathematical Theory of Communication".

Definition
The information entropy of a discrete random variable X, that can take on possible values {x1...xn} is



\begin{matrix} H(X) =  \operatorname{E}( I(X) ) & = &   \displaystyle{\sum_{i=1}^np(x_i)\log_2 \left(1/p(x_i)\right)} \\ & = & - \displaystyle{\sum_{i=1}^np(x_i)\log_2 p(x_i)} \qquad \end{matrix} $$ where


 * I(X) is the information content or self-information of X, which is itself a random variable; and
 * p(xi) = Pr(X=xi) is the probability mass function of X.

Characterization
Information entropy is characterised by these desiderata:

(Define $$p_i=\Pr(X=x_i)$$ and $$H_n(p_1,\ldots,p_n)=H(X)$$)


 * Continuity
 * The measure should be continuous &mdash; i.e., changing the value of one of the probabilities by a very small amount should only change the entropy by a small amount.


 * Symmetry
 * The measure should be unchanged if the outcomes xi are re-ordered.

H_n\left(p_1, p_2, \ldots \right) = H_n\left(p_2, p_1, \ldots \right) $$ etc.


 * Maximum
 * If all the outcomes are equally likely, then entropy should be maximal (uncertainty is highest when all possible events are equiprobable). In this case, the entropy increases with the number of outcomes.

H_n(p_1,\ldots,p_n) \le H_n\left(\frac{1}{n}, \ldots, \frac{1}{n}\right) < H_{n+1}\left(\frac{1}{n+1}, \ldots, \frac{1}{n+1}\right). $$


 * Additivity
 * The amount of entropy should be the same independently of how the process is regarded as being divided into parts.
 * This last functional relationship characterizes the entropy of a system with sub-systems. It demands that the entropy of a system can be calculated from the entropy of its sub-systems if we know how the sub-systems interact with each other.


 * Assume that we have an ensemble of n elements with a uniform distribution on them. If we mentally divide this ensemble into k boxes (sub-systems) with bi elements in each, the entropy can be calculated as a sum of individual entropies of the boxes weighed by the probability of finding oneself in that particular box PLUS the entropy of the system of boxes.


 * For positive integers bi where b1 + … + bk = n,

H_n\left(\frac{1}{n}, \ldots, \frac{1}{n}\right) = H_k\left(\frac{b_1}{n}, \ldots, \frac{b_k}{n}\right) + \sum_{i=1}^k \frac{b_i}{n} H_{b_i}\left(\frac{1}{b_i}, \ldots, \frac{1}{b_i}\right). $$


 * This implies that the entropy of a certain outcome is zero:

H_1(1.0) = 0\, $$

Any definition of entropy satisfying these assumptions has the form:
 * $$-K\sum_{i=1}^np(x_i)\log p(x_i)\,\!$$

where K is a constant corresponding to a choice of measurement units.

Information entropy explained
For a random variable $$\displaystyle X$$ with $$\displaystyle n$$ outcomes $$\displaystyle \{ x_i, i = 1, \cdots , n\}$$, the Shannon information entropy, a measure of uncertainty (see further below) and denoted by $$\displaystyle H(X)$$, is defined as


 * {| style="width:100%" border="0"

$$  \displaystyle \displaystyle H(X) :=   - \sum_{i=1}^np(x_i)\log_b p(x_i) $$
 * style="width:95%" |
 * style="width:95%" |
 * style= | (1)
 * }

where $$\displaystyle p(x_i)$$ is the probability mass function of outcome $$\displaystyle x_i$$, and $$\displaystyle b$$ is the base of the logarithm used. Possible values of $$\displaystyle b$$ are 2, $$\displaystyle e$$, and 10. The unit of the information entropy $$\displaystyle H$$ is bit for $$\displaystyle b=2$$, ban for $$\displaystyle b=e$$, dit (or digit) for $$\displaystyle b=10$$.

To understand the meaning of Eq.(1), let's first consider a set of $$\displaystyle n$$ possible outcomes (events) $$\displaystyle \left\{ x_i, i = 1 , \cdots , n \right\}$$, with equal probability $$\displaystyle p(x_i) = 1 / n$$. An example would be a fair die with $$\displaystyle n$$ values, from $$\displaystyle 1$$ to $$\displaystyle n$$. The uncertainty for such set of $$\displaystyle n$$ outcomes can be measured by


 * {| style="width:100%" border="0"

$$  \displaystyle u = \log_b (n) $$
 * style="width:95%" |
 * style="width:95%" |
 * style= | (2)
 * }

The logarithm is used so to provide the additivity characteristic for uncertainty. For example, consider appending to each value of the first die the value of a second die, which has $$\displaystyle m$$ possible outcomes $$\displaystyle \left\{ y_j, j = 1 , \cdots , m \right\}$$. There are thus $$\displaystyle mn$$ possible outcomes $$\displaystyle \left\{ x_i y_j, i = 1 , \cdots , n , j = 1 , \cdots , m \right\}$$. The uncertainty for such set of $$\displaystyle nm$$ outcomes is then


 * {| style="width:100%" border="0"

$$  \displaystyle u = \log_b (nm) = \log_b (n) + \log_b (m) $$ Thus the uncertainty of playing with two dice is obtained by adding the uncertainty of the second die $$\displaystyle \log_b (m)$$ to the uncertainty of the first die $$\displaystyle \log_b (n)$$.
 * style="width:95%" |
 * style="width:95%" |
 * style= | (3)
 * }

Now return to the case of playing with one die only (the first one); we can write

\displaystyle u   = \log_b (\frac{1}{p(x_i)}) = - \log_b (p(x_i)) \, \ \forall i = 1, \cdots , n $$

In the case of a non-uniform probability mass function (or distribution in the case of continuous random variable), we let


 * {| style="width:100%" border="0"

$$  \displaystyle u_i :=  - \log_b (p(x_i)) $$ which is also called a surprisal; the lower the probability $$\displaystyle p(x_i)$$, i.e. $$\displaystyle p(x_i) \rightarrow 0$$, the higher the uncertainty or the surprise, i.e. $$\displaystyle u_i \rightarrow \infty$$, for the outcome $$\displaystyle x_i$$
 * style="width:95%" |
 * style="width:95%" |
 * style= | (4)
 * }

The average uncertainty $$\displaystyle $$, with $$\displaystyle <\cdot>$$ being the average operator, is obtained by


 * {| style="width:100%" border="0"

$$  \displaystyle =  \sum_{i=1}^{n} p(x_i) u_i =  -   \sum_{i=1}^{n} p(x_i) \log_b (p(x_i)) $$ and is used as the definition of the information entropy $$\displaystyle H(X)$$ in Eq.(1). The above also explained why information entropy and information uncertainty can be used interchangeably.
 * style="width:95%" |
 * style="width:95%" |
 * style= | (5)
 * }

Example


Consider tossing a coin which may or may not be fair.

The entropy of the unknown result of the next toss of the coin is maximised if the coin is fair (that is, if heads and tails both have equal probability 1/2). This is the situation of maximum uncertainty as it is most difficult to predict the outcome of the next toss; the result of each toss of the coin delivers a full 1 bit of information.

However, if we know the coin is not fair, there is less uncertainty. Every time, one side is more likely to come up than the other. The reduced uncertainty is quantified in a lower entropy: on average each toss of the coin delivers less than a full 1 bit of information.

The extreme case is that of a double-headed coin which never comes up tails. Then there is no uncertainty. The entropy is zero: each toss of the coin delivers no information.

Further properties
The Shannon entropy satisfies the following properties:


 * Adding or removing an event with probability zero does not contribute to the entropy:
 * $$H_{n+1}(p_1,\ldots,p_n,0) = H_n(p_1,\ldots,p_n)$$.


 * It can be confirmed using the Jensen inequality that
 * $$H(X) = \operatorname{E}\left[\log_2 \left( \frac{1}{p(X)}\right) \right] = - \operatorname{E}\left[\log_2 \left( p(X)\right) \right] \leq -\log_2 \left( \operatorname{E}\left[ p(X) \right] \right) = \log_2(n)$$.

This maximal entropy of $$\log_2(n)$$ is effectively attained by a source alphabet having a uniform probability distribution: uncertainty is maximal when all possible events are equiprobable.

Relationship to thermodynamic entropy
The inspiration for adopting the word entropy in information theory came from the close resemblance between Shannon's formula and very similar known formulae from thermodynamics.

In statistical thermodynamics the most general formula for the thermodynamic entropy S of a thermodynamic system is the Gibbs entropy,
 * $$S = - k_B \sum p_i \ln p_i \,$$

defined by J. Willard Gibbs in 1878 after earlier work by Boltzmann (1872).

The Gibbs entropy translates over almost unchanged into the world of quantum physics to give the von Neumann entropy, introduced by John von Neumann in 1927,
 * $$S = - k_B \,\,{\rm Tr}(\rho \ln \rho) \,$$

where ρ is the density matrix of the quantum mechanical system.

At an everyday practical level the links between information entropy and thermodynamic entropy are not close. Physicists and chemists are apt to be more interested in changes in entropy as a system spontaneously evolves away from its initial conditions, in accordance with the second law of thermodynamics, rather than an unchanging probability distribution. And, as the numerical smallness of Boltzmann's constant kB indicates, the changes in S/kB for even minute amounts of substances in chemical and physical processes represent amounts of entropy which are large right off the scale compared to anything seen in data compression or signal processing.

But, at a more philosophical level, connections can be made between thermodynamic and informational entropy, although it took many years in the development of the theories of statistical mechanics and information theory to make the relationship fully apparent. In fact, in the view of Jaynes (1957), thermodynamics should be seen as an application of Shannon's information theory: the thermodynamic entropy is interpreted as being an estimate of the amount of further Shannon information needed to define the detailed microscopic state of the system, that remains uncommunicated by a description solely in terms of the macroscopic variables of classical thermodynamics. For example, adding heat to a system increases its thermodynamic entropy because it increases the number of possible microscopic states that it could be in, thus making any complete state description longer. (See article: maximum entropy thermodynamics). Maxwell's demon (hypothetically) reduces the thermodynamic entropy of a system using information about the states of individual molecules; but, as Landauer (from 1961) and co-workers have shown, the demon himself must increase his own thermodynamic entropy in the process, by at least the amount of Shannon information he proposes to first acquire and store; and so the total entropy does not decrease (which resolves the paradox).

Entropy as information content
Entropy is defined in the context of a probabilistic model. Independent fair coin flips have an entropy of 1 bit per flip. A source that always generates a long string of A's has an entropy of 0, since the next character will always be an 'A'.

The entropy rate of a data source means the average number of bits per symbol needed to encode it. Empirically, it seems that entropy of English text is between .6 and 1.3 bits per character, though clearly that will vary from one source of text to another. Shannon's experiments with human predictors show an information rate of between .6 and 1.3 bits per character, depending on the experimental setup; the PPM compression algorithm can achieve a compression ratio of 1.5 bits per character.

From the preceding example, note the following points:


 * 1) The amount of entropy is not always an integer number of bits.
 * 2) Many data bits may not convey information. For example, data structures often store information redundantly, or have identical sections regardless of the information in the data structure.

Shannon's definition of entropy, when applied to an information source, can determine the minimum channel capacity required to reliably transmit the source as encoded binary digits. The formula can be derived by calculating the mathematical expectation of the amount of information contained in a digit from the information source. See also Shannon-Hartley theorem.

Shannon's entropy measures the information contained in a message as opposed to the portion of the message that is determined (or predictable). Examples of the latter include redundancy in language structure or statistical properties relating to the occurrence frequencies of letter or word pairs, triplets etc. See Markov chain.

Data compression
Entropy effectively bounds the performance of the strongest lossless (or nearly lossless) compression possible, which can be realized in theory by using the typical set or in practice using Huffman, Lempel-Ziv or arithmetic coding. The performance of existing data compression algorithms is often used as a rough estimate of the entropy of a block of data.

Limitations of entropy as information content
Although entropy is often used as a characterization of the information content of a data source, this information content is not absolute: it depends crucially on the probabilistic model. A source that always generates the same symbol has an entropy of 0, but the definition of what a symbol is depends on the alphabet. Consider a source that produces the string ABABABABAB... in which A is always followed by B and vice versa. If the probabilistic model considers individual letters as independent, the entropy rate of the sequence is 1 bit per character. But if the sequence is considered as "AB AB AB AB AB..." with symbols as two-character blocks, then the entropy rate is 0 bits per character.

However, if we use very large blocks, then the estimate of per-character entropy rate may become artificially low. This is because in reality, the probability distribution of the sequence is not knowable exactly; it is only an estimate. For example, suppose one considers the text of every book ever published as a sequence, with each symbol being the text of a complete book. If there are N published books, and each book is only published once, the estimate of the probability of each book is 1/N, and the entropy (in bits) is -log2 1/N. As a practical code, this corresponds to assigning each book a unique identifier and using it in place of the text of the book whenever one wants to refer to the book. This is enormously useful for talking about books, but it is not so useful for characterizing the information content of an individual book, or of language in general: it is not possible to reconstruct the book from its identifier without knowing the probability distribution, that is, the complete text of all the books. The key idea is that the complexity of the probabilistic model must be considered. Kolmogorov complexity is a theoretical generalization of this idea that allows the consideration of the information content of a sequence independent of any particular probability model; it considers the shortest program for a universal computer that outputs the sequence. A code that achieves the entropy rate of a sequence for a given model, plus the codebook (i.e. the probabilistic model), is one such program, but it may not be the shortest.

Data as a Markov process
A common way to define entropy for text is based on the Markov model of text. For an order-0 source (each character is selected independent of the last characters), the binary entropy is:


 * $$H(\mathcal{S}) = - \sum p_i \log_2 p_i, \,\!$$

where pi is the probability of i. For a first-order Markov source (one in which the probability of selecting a character is dependent only on the immediately preceding character), the entropy rate is:


 * $$H(\mathcal{S}) = - \sum_i p_i \sum_j \  p_i (j) \log_2 p_i (j), \,\!$$

where i is a state (certain preceding characters) and $$p_i(j)$$ is the probability of $$j$$ given $$i$$ as the previous character (s).

For a second order Markov source, the entropy rate is


 * $$H(\mathcal{S}) = -\sum_i p_i \sum_j p_i(j) \sum_k p_{i,j}(k)\ \log_2 \ p_{i,j}(k). \,\!$$

b-ary entropy
In general the b-ary entropy of a source $$\mathcal{S}$$ = (S,P) with source alphabet S = {a1, …, an} and discrete probability distribution P = {p1, …, pn} where pi is the probability of ai (say pi = p(ai)) is defined by:


 * $$ H_b(\mathcal{S}) = - \sum_{i=1}^n p_i \log_b p_i, \,\!$$

Note: the b in "b-ary entropy" is the number of different symbols of the "ideal alphabet" which is being used as the standard yardstick to measure source alphabets. In information theory, two symbols are necessary and sufficient for an alphabet to be able to encode information, therefore the default is to let b = 2 ("binary entropy"). Thus, the entropy of the source alphabet, with its given empiric probability distribution, is a number equal to the number (possibly fractional) of symbols of the "ideal alphabet", with an optimal probability distribution, necessary to encode for each symbol of the source alphabet. Also note that "optimal probability distribution" here means a uniform distribution: a source alphabet with n symbols has the highest possible entropy (for an alphabet with n symbols) when the probability distribution of the alphabet is uniform. This optimal entropy turns out to be $$ \log_b \, n $$.

Efficiency
A source alphabet encountered in practice should be found to have a probability distribution which is less than optimal. If the source alphabet has n symbols, then it can be compared to an "optimized alphabet" with n symbols, whose probability distribution is uniform. The ratio of the entropy of the source alphabet with the entropy of its optimized version is the efficiency of the source alphabet, which can be expressed as a percentage.

This implies that the efficiency of a source alphabet with n symbols can be defined simply as being equal to its n-ary entropy. See also Redundancy (information theory).

Extending discrete entropy to the continuous case: differential entropy
The Shannon entropy is restricted to random variables taking discrete values. The formula


 * $$h[f] = -\int\limits_{-\infty}^{\infty} f(x) \log f(x)\, dx,\quad (*)$$

where f denotes a probability density function on the real line, is analogous to the Shannon entropy and could thus be viewed as an extension of the Shannon entropy to the domain of real numbers.

A precursor of the continuous information entropy $$\displaystyle h[f]$$ given in (*) is the expression for the functional $$\displaystyle H$$ in the H-theorem of Boltzmann.

Formula (*) is usually referred to as the continuous entropy, or differential entropy. Although the analogy between both functions is suggestive, the following question must be set: is the differential entropy a valid extension of the Shannon discrete entropy? To answer this question, we must establish a connection between the two functions:

We wish to obtain a generally finite measure as the bin size goes to zero. In the discrete case, the bin size is the (implicit) width of each of the n (finite or infinite) bins whose probabilities are denoted by pn. As we generalize to the continuous domain, we must make this width explicit.

To do this, start with a continuous function f discretized as shown in the figure.

As the figure indicates, by the mean-value theorem there exists a value xi in each bin such that


 * $$f(x_i) \Delta = \int_{i\Delta}^{(i+1)\Delta} f(x)\, dx$$

and thus the integral of the function f can be approximated (in the Riemannian sense) by


 * $$\int_{-\infty}^{\infty} f(x)\, dx = \lim_{\Delta \to 0} \sum_{i = -\infty}^{\infty} f(x_i) \Delta$$

where this limit and bin size goes to zero are equivalent.

We will denote


 * $$H^{\Delta} :=- \sum_{i=-\infty}^{\infty} \Delta f(x_i) \log \Delta f(x_i)$$

and expanding the logarithm, we have


 * $$H^{\Delta} = - \sum_{i=-\infty}^{\infty} \Delta f(x_i) \log \Delta f(x_i)$$


 * $$ = - \sum_{i=-\infty}^{\infty} \Delta f(x_i) \log f(x_i) -\sum_{i=-\infty}^{\infty} f(x_i) \Delta \log \Delta.$$

As $$\Delta \to 0$$, we have


 * $$\sum_{i=-\infty}^{\infty} f(x_i) \Delta \to \int f(x)\, dx = 1$$

and so


 * $$\sum_{i=-\infty}^{\infty} \Delta f(x_i) \log f(x_i) \to \int f(x) \log f(x)\, dx.$$

But note that $$\log \Delta \to -\infty$$ as $$\Delta \to 0$$, therefore we need a special definition of the differential or continuous entropy:


 * $$h[f] = \lim_{\Delta \to 0} \left[H^{\Delta} + \log \Delta\right] = -\int_{-\infty}^{\infty} f(x) \log f(x)\,dx,$$

which is, as said before, referred to as the differential entropy. This means that the differential entropy is not a limit of the Shannon entropy for n → ∞

It turns out as a result that, unlike the Shannon entropy, the differential entropy is not in general a good measure of uncertainty or information. For example, the differential entropy can be negative; also it is not invariant under continuous co-ordinate transformations.

More useful for the continuous case is the relative entropy of a distribution, defined as the Kullback-Leibler divergence from the distribution to a reference measure m(x),
 * $$D_{\mathrm{KL}}(f(x)\|m(x)) = \int f(x)\log\frac{f(x)}{m(x)}\,dx.$$

The relative entropy carries over directly from discrete to continuous distributions, and is invariant under co-ordinate reparametrisations.