A PDF version of Transformation of Probability Densities is available. 271 kb, 14 pages (info)
This Wikibook shows how to transform the probability density of a continuous random variable in both the one-dimensional and multidimensional case.
In other words, it shows how to calculate the distribution of a function of continuous random variables.
The first section formulates the general problem and provides its solution.
However, this general solution is often quite hard to evaluate and simplifications are possible in special cases, e.g., if the random vector is one-dimensional or if the components of the random vector are independent.
Formulas for these special cases are derived in the subsequent sections.
This Wikibook also aims to provide an overview of different equations used in this field and show their connection.
A Wikibook showing how to transform the probability density of a continuous random variable in both the one-dimensional and multidimensional case. In other words, it shows how to calculate the distribution of a function of continuous random variables.
First, we need to remember the definition of the cumulative distribution function, cdf, of a random vector: It measures the probability that each component of Y takes a value smaller than the corresponding component of y.
We will use a short-hand notation and say that two vectors are "less or equal" (≤) if all of their components are.
If n=1 and m=1, X is a continuously distributed random variable with the density and is a Borel-measurable function.
Then also Y := f(X) is continuously distributed and we are looking for the density .
In the following, f should always be at least differentiable.
Let us first note that there may be values that are never reached by f, e.g. y<0 if f(x) = x2.
For all those y, necessarily .
If now the derivative does vanish at some positions , , then we split the definition space of f using those position into disjoint intervals .
Equation 5 holds for the functions limited in their definition space to those intervals . We have
With the convention that the sum over 0 addends is 0 and using the inverse function theorem, it is possible to write this in a more compact form (read as: sum over all x, where f(x)=y):
In this section we consider a different derivation.
The probability in 4 is the integral over the probability density. Again in the case of monotonically increasing f, we have:
Now we substitute u = f(x) in the integral on the right hand site, i.e. and .
The integral limits are then from -∞ to y and in the rule “” we have due to the inverse function theorem.
Taking the derivative of both sides with respect to y, we get:
Following the same argument as in the last section, we can again derive equation 6.
This rule often misleads physics books to present the following viewpoint, which might be easier to remember, but is not mathematically sound:
If you multiply the probability density with the “infinitesimal length” , then you will get the probability for X to lie in the interval [x, x+dx].
Changing to new coordinates y, you will get by substitution:
In this section we consider another different derivation, often used in physics.
We start again with equation 4 and write this as an integral:
The intuitive interpretation of the last expression is: one integrates over all possible x-values and uses the delta “function” to pick all positions where y = f(x).
This formula is often found in physics books, possibly written as expectation value, :
Let us consider the following specific example: let and . We choose to use equation 6 (equations 5 and 7 lead to the same result). We calculate the derivative and find all x for which f(x)=y, which are and if y>0 and none otherwise. For y>0 we have:
Since f never reaches negative values, the sum remains 0 for y<0 and we finally obtain:
This example is illustrated in the following graphics:
Random numbers are generated according to the standard normal distribution X ~ N(0,1). They are shown on the x-axis of figure (a). Many of them are around 0. Each of those numbers is mapped according to y = x², which is shown with grey arrows for two example points. For many generated realisations of X, a histogram on the y-axis will converge towards the wanted probability density function ρY shown in (c). In order to analytically derive this function, we start by observing that in order for Y to be between any v and v+Δv, X must have been between either and , or, between and . Those intervals are marked in figures (b) and (c). Because the probability is equal to the area under the probability density function, we can determine ρY from the condition that the grey shaded area in (c) must be equal to the sum of the areas in (b). The areas are calculated using integrals and it is useful to take the limit in order to get the formula noted in (c).
If we want to obtain random numbers according to a distribution with the pdf , we choose f as the inverse function of the cdf of Z, i.e. . We can now show that Y will have the same distribution as the wanted Z, by using equation 5 and the fact that :
An example is illustrated in the following plot:
Random numbers yi are generated from a uniform distribution between 0 and 1, i.e. Y ~ U(0, 1). They are sketched as colored points on the y-axis. Each of the points is mapped according to x=F-1(y), which is shown with gray arrows for two example points. In this example, we have used an exponential distribution. Hence, for x ≥ 0, the probability density is and the cumulated distribution function is . Therefore, . We can see that using this method, many points end up close to 0 and only few points end up having high x-values - just as it is expected for an exponential distribution.
Mapping of a Random Vector to a Random Variable (n>1, m=1)Edit
We will now investigate the case when a random vector X with known density is mapped to (scalar) random variable Y and calculate the new density .
The direct evaluation of this equation is sometimes the easiest way, e.g., if there is a known formula for the area or volume presented by the integral.
Otherwise one needs to solve a parameter-depended multiple integral.
If the components of the random vector are independent, then the probability density factorizes:
In this case the delta function may provide a fast tool for the evaluation. Replacing the integration bound with a step function inside the integral, and using the fact that the derivative of a step function is the delta:
The last integral is over a circle with radius y ≤ 1, hence with the area . This simplifies the calculation:
If y<0, we integrate over an empty set, which gives 0. If y>1, . Therefore, the final result is:
This example is illustrated in the following graphics:
Figure (a) shows a sketch of random sample points from a uniform distribution in a circle of radius 1, subdivided into rings. In figure (b), we count how many of those points fell into each of the rings with the same width Δv. Since the area of the rings increases linearly with the radius, one can expect more points for larger radii. For Δv → 0, the normalized histogram in (b) will converge to the wanted probability density function ρY. In order to calculate ρY analytically, we first derive the cumulated distribution function FY, plotted in figure (d). FY(y) is the probability to find a point inside the circle of radius v (shown in grey in figure (c)). For v between 0 and 1, we find . The slope of FY is the wanted probability density function , in agreement with figure (b).
Invertible Transformation of a Random Vector (n=m)Edit
Let be a a random vector with the density and let be a diffeomorphism.
For the density of we have:
If f is injective, then it can be easier to introduce additional helper coordinates Ym+1 to Yn, then do the transformation from section Invertible Transformation of a Random Vector and finally integrate out all helper coordinates of the so-obtained density.
In order to show some possible applications, we present the following questions, which can be answered using the techniques outlines in this Wikibook. In principle, the answers could also be approximated using a numerical random number simulation: generate several realizations of , calculate and make a histogram of the results. However, many such random numbers are needed for reasonable results, especially for higher-dimensional random vectors. Gladly, we can always calculate the resulting distribution analytically using the above formulas.
Suppose atoms in a laser are moving with normally distributed velocities Vx, , σ2 = kBT/m. Due to the Doppler effect, light emitted with frequency f0 by an atom moving with vx will be detected as f ≈ f0 ( 1 + vx / c ). Hence, f is a function of Vx. What does the detected spectrum, , look like? (Answer: Gaussian around f0.)
Suppose the velocity components of an ideal gas (Vx, Vy, Vz) are identically, independently normally distributed as in the last example. What is the probability density of ? (The answer is known as Maxwell-Boltzmann distribution.)
Suppose we do not know the exact value of X and Y, but we can assign a probability distribution to each of them. What is the distrubution of the derived property Z = X2 / Y and what is the mean value and standard deviation of Z? (To tackle such problems, linearisation around the mean values are sometimes used and both X and Y are assumed to be normally distributed. However, we are not limited to such restrictions.)
Suppose we consider the value of one gram gold, silver and platinum in one year from now as independent random variables G, S and P, respectively. Box A contains 1 gram gold, 2 gram silver and 3 gram platinum. Box B contains 4, 5 and 6 gram, respectively. Thus, . What is the value of the contents in box A (or box B) in one year from now? (The answer is given in an example above.) Note that A and B are correlated.
Note that the above examples assume the distribution of to be known. If it is unknown, or if the calculation is based on only a few data points, methods from mathematical statistics are a better choice to quantify uncertainty.
Correlated random numbers can be obtained by first generating a vector of uncorrelated random numbers and then applying a function on them.
In order to obtain random numbers with covariance matrix CY, we can use the following know procedure: Calculate the Cholesky decomposition CY = A AT. Generate a vector of uncorrelated random numbers with all var(Xi) = 1. Apply the matrix A: . This will result in correlated random variables with covariance matrix CY = A AT.
With the formulas outlined in this Wikibook, we can additionally study the shape of the resulting distribution and the effect of non-linear transformations. Consider, e.g., that X is uniform distributed in [0, 2π], Y1 = sin(X) and Y2 = cos(X). In this case, a 2D plot of random numbers from (Y1, Y2) will show a uniform distribution on a circle. Although Y1 and Y2 are stochastically dependent, they are uncorrelated. It is therefore important to know the resulting distribution, because has more information than the covariance matrix CY.