World Library  
Flag as Inappropriate
Email this Article

Minimum mean-square error

Article Id: WHEBN0011037072
Reproduction Date:

Title: Minimum mean-square error  
Author: World Heritage Encyclopedia
Language: English
Subject: Kalman filter, MMSE, Mean percentage error
Publisher: World Heritage Encyclopedia

Minimum mean-square error

In statistics and signal processing, a minimum mean square error (MMSE) estimator is an estimation method which minimizes the mean square error (MSE) of the fitted values of a dependent variable, which is a common measure of estimator quality.

The term MMSE more specifically refers to estimation in a Bayesian setting with quadratic cost function. The basic idea behind the Bayesian approach to estimation stems from practical situations where we often have some prior information about the parameter to be estimated. For instance, we may have prior information about the range that the parameter can assume; or we may have an old estimate of the parameter that we want to modify when a new observation is made available. This is in contrast to the non-Bayesian approach like minimum-variance unbiased estimator (MVUE) where absolutely nothing is assumed to be known about the parameter in advance and which does not account for such situations. In the Bayesian approach, such prior information is captured by the prior probability density function of the parameters; and based directly on Bayes theorem, it allows us to make better posterior estimates as more observations become available. Thus unlike non-Bayesian approach where parameters of interest are assumed to be deterministic, but unknown constants, the Bayesian estimator seeks to estimate a parameter that is itself a random variable. Furthermore, Bayesian estimation can also deal with situations where the sequence of observations are not necessarily independent. Thus Bayesian estimation provides yet another alternative to the MVUE. This is useful when the MVUE does not exist or cannot be found.


Let x be a n \times 1 unknown (hidden) random vector variable, and let y be a m \times 1 known random vector variable (the measurement or observation), both of them not necessarily of the same dimension. An estimator \hat{x}(y) of x is any function of the measurement y. The estimation error vector is given by e = \hat{x} - x and its mean squared error (MSE) is given by the trace of error covariance matrix

\mathrm{MSE} = \mathrm{tr} \left\{ E\{(\hat{x} - x)(\hat{x} - x)^T \}\right\},

where the expectation is taken over both x and y. When x is a scalar variable, then MSE expression simplifies to E \left\{ (\hat{x} - x)^2 \right\}. Note that MSE can equivalently be defined in other ways, since

\mathrm{tr} \left\{ E\{ee^T \} \right\} = E \left\{ \mathrm{tr}\{ee^T \} \right\} = E\{e^T e \} = \sum_{i=1}^n E\{e_i^2\}.

The MMSE estimator is then defined as the estimator achieving minimal MSE.


  • Under some weak regularity assumptions,[1] the MMSE estimator is uniquely defined, and is given by
\hat{x}_{\mathrm{MMSE}}(y) = E \left\{x | y \right\}.
In other words, the MMSE estimator is the conditional expectation of x given the known observed value of the measurements.
  • The MMSE estimator is unbiased
E\{\hat{x}_{\mathrm{MMSE}}(y)\} = E \left\{ E\{x|y\} \right\} = E\{x\}.
  • The orthogonality principle: When x is a scalar, an estimator constrained to be of certain form \hat{x}=g(y) is an optimal estimator, i.e. \hat{x}_{\mathrm{MMSE}}=g^*(y), if and only if
E \{ (\hat{x}_{\mathrm{MMSE}}-x) g(y) \} = 0
for all g(y) in closed, linear subspace \mathcal{V} = \{g(y)| g:\mathbb{R}^m \rightarrow \mathbb{R}, E\{g(y)^2\} < + \infty \} of the measurements. For random vectors, since the MSE for estimation of a random vector is the sum of the MSEs of the coordinates, finding the MMSE estimator of a random vector decomposes into finding the MMSE estimators of the coordinates of X separately:
E \{ (g_i^*(y)-x_i) g_j(y) \} = 0,
for all i and j. More succinctly put,
E \{ (\hat{x}_{\mathrm{MMSE}}-x)\hat{x}^T \} = 0.
  • If x and y are jointly Gaussian, then the MMSE estimator is linear, i.e., it has the form Wy+b for matrix W and constant b. As a consequence, to find the MMSE estimator, it is sufficient to find the linear MMSE estimator.

Linear MMSE estimator

In many cases, it is not possible to determine a closed form expression for the conditional expectation E\{x|y\} required to obtain the MMSE estimator. Direct numerical evaluation of the conditional expectation is computationally expensive, since they often require multidimensional integration usually done using Monte Carlo methods. In such cases, one possibility is to abandon the full optimality requirements and seek a technique minimizing the MSE within a particular class of estimators, such as the class of linear estimators. Thus we postulate that the conditional expectation of x given y is a simple linear function of y, E\{x|y\} = W y + b, where the measurement y is a random vector, W is a matrix and b is a vector. The linear MMSE estimator is the estimator achieving minimum MSE among all estimators of such form. Such linear estimator only depends on the first two moments of the probability density function. So although it may be convenient to assume that x and y are jointly Gaussian, it is not necessarily to make this assumption, so long as the assumed distribution has well defined first and second moments.

The expression for optimal b and W is given by

b = \bar{x} - W \bar{y},
W = C_{XY}C^{-1}_{Y}.

Thus the expression for linear MMSE estimator, its mean, and its auto-covariance is given by

\hat{x} = W(y-\bar{y}) + \bar{x},
E\{\hat{x}\} = \bar{x},
C_{\hat{X}} = C_{XY} C^{-1}_Y C_{YX},

where \bar{x} = E\{x\}, \bar{y} = E\{y\}, the C_{XY} is cross-covariance matrix between x and y, the C_{Y} is auto-covariance matrix of y, and the C_{YX} is cross-covariance matrix between y and x. Lastly, the error covariance and minimum mean square error achievable by such estimator is

C_e = C_X - C_{\hat{X}} = C_X - C_{XY} C^{-1}_Y C_{YX},
\mathrm{LMMSE} = \mathrm{tr} \{C_e\}.

Standard method like Gauss elimination can be used to solve the matrix equation for W. A more numerically stable method is provided by QR decomposition method. Since the matrix C_Y is a symmetric positive definite matrix, W can be solved twice as fast with the Cholesky decomposition. Levinson recursion is a fast method when C_Y is also a Toeplitz matrix. This can happen when y is a wide sense stationary process. In such stationary cases, these estimators are also referred to as Wiener-Kolmogorov filters.


&= E\{(\hat x - \bar x)(\hat x - \bar x)^T\} \\
   &= W E\{(y-\bar{y})(y-\bar{y})^T\} W^T \\
   &= W C_Y W^T .\\


Putting the expression for W and W^T, we get

C_{\hat{X}} = C_{XY} C^{-1}_Y C_{YX}.

Lastly, the covariance of linear MMSE estimation error will then be given by

\begin{align} C_e &= E\{(\hat x - x)(\hat x - x)^T\} \\

   &= E\{(\hat x - x)(W(y-\bar{y}) - (x-\bar{x}))^T\} \\
   &= \underbrace{E\{(\hat x - x)(y-\bar{y})^T \}}_0 W^T  - E\{(\hat x - x)(x-\bar{x})^T\} \\
   &= - E\{(W(y-\bar{y}) - (x-\bar{x}))(x-\bar{x})^T\} \\
   &= E\{(x-\bar{x})(x-\bar{x})^T\} - W E\{(y-\bar{y})(x-\bar{x})^T\} \\
   &= C_X - WC_{YX} .\\


The first term in the third line is zero due to the orthogonality principle. Since W = C_{XY}C^{-1}_Y, we can re-write C_e in terms of covariance matrices as

C_e = C_X - C_{XY} C^{-1}_Y C_{YX} .

This we can recognize to be the same as C_e = C_X - C_{\hat{X}}. Thus the minimum mean square error achievable by such a linear estimator is

\mathrm{LMMSE} = \mathrm{tr}\{C_e\} .


Linear MMSE estimator for linear observation process

Let us further model the underlying process of observation as a linear process: y=Ax+z, where A is a known matrix and z is random noise vector with the mean E\{z\}=0 and cross-covariance C_{XZ} = 0. Here the required mean and the covariance matrices will be

E\{y\} = A\bar{x},
C_Y = AC_XA^T + C_Z,
C_{XY} = C_X A^T .

Thus the expression for the linear MMSE estimator matrix W further modifies to

W = C_X A^T(AC_XA^T + C_Z)^{-1} .

Putting everything into the expression for \hat{x}, we get

\hat{x} = C_X A^T(AC_XA^T + C_Z)^{-1}(y-A\bar{x}) + \bar{x}.

Lastly, the error covariance is

C_e = C_X - C_{\hat{X}} = C_X - C_X A^T(AC_XA^T + C_Z)^{-1}AC_X .

The significant difference between the estimation problem treated above and those of least squares and Gauss-Markov estimate is that the number of observations m, (i.e. the dimension of y) need not be at least as large as the number of unknowns, n, (i.e. the dimension of x). The estimate for the linear observation process exists so long as the m-by-m matrix (AC_XA^T + C_Z)^{-1} exists; this is the case for any m if, for instance, C_Z is positive definite. Physically the reason for this property is that since x is now a random variable, it is possible to form a meaningful estimate (namely its mean) even with no measurements. Every new measurement simply provides additional information which may modify our original estimate. Another feature of this estimate is that for m < n, there need be no measurement error. Thus, we may have C_Z = 0, because as long as AC_XA^T is positive definite, the estimate still exists.

Alternative form

An alternative form of expression can be obtained by using the matrix identity

C_X A^T(AC_XA^T + C_Z)^{-1} = (A^TC_Z^{-1}A + C_X^{-1})^{-1} A^T C_Z^{-1},

which can be established by post-multiplying by (AC_XA^T + C_Z) and pre-multiplying by (A^TC_Z^{-1}A + C_X^{-1}), to obtain

W = (A^TC_Z^{-1}A + C_X^{-1})^{-1} A^TC_Z^{-1},


C_e = (A^TC_Z^{-1}A + C_X^{-1})^{-1}.

Since W can now be written in terms of C_e as W = C_e A^T C_Z^{-1}, we get a simplified expression for \hat{x} as

\hat{x} = C_e A^T C_Z^{-1}(y-A\bar{x}) + \bar{x}.

In this form the above expression can be easily compared with weighed least square and Gauss-Markov estimate. In particular, when C_X^{-1}=0, corresponding to infinite variance of the apriori information concerning x, the result is identical to the weighed linear least square estimate with C_Z^{-1} as the weight matrix. Moreover, if the components of z are uncorrelated such that C_Z = \sigma^2 I, where I is an identity matrix, then W = (A^TA)^{-1}A^T. which has the same expression as the ordinary least square estimate.

Sequential linear MMSE estimation

For stationary process

In many real-time application, observational data is not available in a single batch. Instead the observations are made in a sequence. A naive application of previous formulas would have us discard an old estimate and recompute a new estimate as fresh data is made available. But then we lose all information provided by the old observation. When the observations are scalar quantities, one possible way of avoiding such re-computation is to first concatenate the entire sequence of observations and then apply the standard estimation formula as done in Example 2. But this can be very tedious because as the number of observation increases so does the size of the matrices that need to be inverted and multiplied grow. Also, this method is difficult to extend to the case of vector observations. Another approach to estimation from sequential observations is to simply update an old estimate as additional data becomes available, leading to finer estimates. Thus a recursive method is desired where the new measurements can modify the old estimates. Implicit in these discussions is the assumption that the statistical properties of x does not change with time. In other words, x is stationary.

For sequential estimation, if we have an estimate \hat{x}_1 based on measurements generating space Y_1, then after receiving another set of measurements, we should subtract out from these measurements that part that could be anticipated from the result of the first measurements. In other words, the updating must be based on that part of the new data which is orthogonal to the old data.

Suppose an optimal estimate \hat{x}_1 has been formed on the basis of past measurements and that error covariance matrix is C_{e_1}. For linear observation processes the best estimate of y based on past observation, and hence old estimate \hat{x}_1, is \hat{y} = A\hat{x}_1 and thus \tilde{y} = y - \hat{y} = y - A\hat{x}_1. The new estimate based on additional data is now

\hat{x}_2 = \hat{x}_1 + C_{X\tilde{Y}}C_{\tilde{Y}}^{-1} \tilde{y},

where C_{X\tilde{Y}} is the cross-covariance between x and \tilde{y} and C_{\tilde{Y}} is the auto-covariance of \tilde{y}. This works out to be

\hat{x}_2 = \hat{x}_1 + C_{e_1} A^T(AC_{e_1}A^T + C_Z)^{-1}(y-A\hat{x}_1),

and the new error covariance is

C_{e_2} = C_{e_1} - C_{e_1}A^T(AC_{e_1}A^T + C_Z)^{-1}AC_{e_1} .

The repeated use of the above two equations as more observations become available lead to recursive estimation techniques. The expressions can be more compactly written as

  1. K_2 = C_{e_1} A^T(AC_{e_1}A^T + C_Z)^{-1},
  2. \hat{x}_2 = \hat{x}_1 + K_2(y-A\hat{x}_1),
  3. C_{e_2} = (I - K_2A)C_{e_1}.

The matrix K is often referred to as the gain factor. The repetition of these three steps as more data becomes available leads to an iterative estimation algorithm.

For example, an easy to use recursive expression can be derived when at each m-th time instant the underlying linear observation process yields a scalar such that y_m = a_m^T x + z_m, where a_m^T is 1-by-n known row vector whose values can change with time, x is n-by-1 random column vector to be estimated, and z_m is scalar noise term with variance \sigma_m^2. After (m+1)-th observation, the direct use of above recursive equations give the expression for the estimate \hat{x}_{m+1} as:

\hat{x}_{m+1} = \hat{x}_m + k_{m+1}(y_{m+1} - a^T_{m+1} \hat{x}_m)

where y_{m+1} is the new scalar observation and the gain factor k_{m+1} is n-by-1 column vector given by

k_{m+1} = \frac{(C_e)_m a_{m+1}}{\sigma^2_{m+1} + a^T_{m+1}(C_e)_m a_{m+1}}.

The (C_e)_{m+1} is n-by-n error covariance matrix given by

(C_e)_{m+1} = (I - k_{m+1}a^T_{m+1})(C_e)_m .

Here no matrix inversion is required. Also the gain factor k_{m+1} depends on our confidence in the new data sample, as measured by the noise variance, versus that in the previous data. The initial values of \hat{x} and C_e are taken to be the mean and covariance of the aprior probability density function of x.


Example 1

We shall take a linear prediction problem as an example. Let a linear combination of observed scalar random variables x_{1}, x_{2} and x_{3} be used to estimate another future scalar random variable x_{4} such that \hat x_{4}=\sum_{i=1}^{3}w_{i}x_{i}. If the random variables x=[x_{1},x_{2},x_{3},x_{4}]^{T} are real Gaussian random variables with zero mean and its covariance matrix given by

\operatorname{cov}(X)=E[xx^{T}]=\left[\begin{array}{cccc} 1 & 2 & 3 & 4\\ 2 & 5 & 8 & 9\\ 3 & 8 & 6 & 10\\ 4 & 9 & 10 & 15\end{array}\right], then our task is to find the coefficients w_{i} such that it will yield an optimal linear estimate \hat x_{4}.

In terms of the terminology developed in the previous section, for this problem we have the observation vector y = [x_1, x_2, x_3]^T, the estimator matrix W = [w_1, w_2, w_3] as a row vector, and the estimated variable x = x_4 as a scalar quantity. The autocorrelation matrix C_Y is defined as


E[x_{1},x_{1}] & E[x_{2},x_{1}] & E[x_{3},x_{1}]\\ E[x_{1},x_{2}] & E[x_{2},x_{2}] & E[x_{3},x_{2}]\\ E[x_{1},x_{3}] & E[x_{2},x_{3}] & E[x_{3},x_{3}]\end{array}\right]=\left[\begin{array}{ccc} 1 & 2 & 3\\ 2 & 5 & 8\\ 3 & 8 & 6\end{array}\right]. The cross correlation matrix C_{YX} is defined as


E[x_{4},x_{1}]\\ E[x_{4},x_{2}]\\ E[x_{4},x_{3}]\end{array}\right]=\left[\begin{array}{c} 4\\ 9\\ 10\end{array}\right].

We now solve the equation C_Y W^T=C_{YX} by inverting C_Y and pre-multiplying to get


4.85 & -1.71 & -.142\\ -1.71 & .428 & .2857\\ -.142 & .2857 & -.1429\end{array}\right]\left[\begin{array}{c} 4\\ 9\\ 10\end{array}\right]=\left[\begin{array}{c} 2.57\\ -.142\\ .5714\end{array}\right]=W^T.

So we have w_{1}=2.57, w_{2}=-.142, and w_{3}=.5714 as the optimal coefficients for \hat x_{4}. Computing the minimum mean square error then gives \left\Vert e\right\Vert _{\min}^{2}=E[x_{4}x_{4}]-WC_{YX}=15-WC_{YX}=.2857.[2] Note that it is not necessary to obtain an explicit matrix inverse of C_Y to compute the value of W. The matrix equation can be solved by well known methods such as Gauss elimination method. A shorter, non-numerical example can be found in orthogonality principle.

Example 2

Consider a vector y formed by taking N observations of a random scalar parameter x disturbed by white Gaussian noise. We can describe the process by a linear equation y = 1x+ z, where 1 = [1,1,\ldots,1]^T. Depending on context it will be clear if 1 represents a scalar or a vector. Let the aprior distribution of x be uniform over an interval [-x_0,x_0], and thus x will have variance of \sigma_X^2 = x_0^2/3.. Let the noise vector z be normally distributed as N(0,\sigma_Z^2I) where I is an identity matrix. Also x and z are independent and C_{XZ} = 0. It is easy to see that

\begin{align} & E\{y\} = 0, \\ & C_Y = E\{yy^T\} = \sigma_X^2 11^T + \sigma_Z^2I, \\ & C_{XY} = E\{xy^T\} = \sigma_X^2 1^T. \end{align}

Thus, the linear MMSE estimator is given by

\begin{align} \hat{x} &= C_{XY}C_Y^{-1} y \\

     &= \sigma_X^2 1^T(\sigma_X^2 11^T + \sigma_Z^2I)^{-1} y. 

\end{align} We can simplify the expression by using the alternative form for W as

\begin{align} \hat{x} &= (1^T \frac{1}{\sigma_Z^2}I 1 + \frac{1}{\sigma_X^2})^{-1} 1^T \frac{1}{\sigma_Z^2} I y \\

  &= \frac{1}{\sigma_Z^2}( \frac{N}{\sigma_Z^2} + \frac{1}{\sigma_X^2})^{-1} 1^T y \\
  &= \frac{\sigma_X^2}{\sigma_X^2 + \sigma_Z^2/N} \bar{y},


where for y = [y_1,y_2,\ldots,y_N]^T we have \bar{y} = \frac{1^Ty}{N} = \frac{\sum_{i=1}^N y_i}{N}.

Similarly, the variance of the estimator is

\sigma_{\hat{X}}^2 = C_{XY}C_Y^{-1}C_{YX} = \Big(\frac{\sigma_X^2}{\sigma_X^2 + \sigma_Z^2/N}\Big) \sigma_X^2.

Thus the MMSE of this linear estimator is

\mathrm{LMMSE} = \sigma_X^2 - \sigma_{\hat{X}}^2 = \Big(\frac{\sigma_Z^2}{\sigma_X^2 + \sigma_Z^2/N}\Big) \frac{\sigma_X^2}{N}.

For very large N, we see that the MMSE estimator of a scalar unknown random variable with uniform aprior distribution can be approximated by the arithmetic average of all the observed data

\hat{x} = \frac{1}{N}\sum_{i=1}^N y_i,

while the variance will be unaffected by data \sigma_{\hat{X}}^2 = \sigma_{X}^2, and the LMMSE of the estimate will tend to zero.

However, the estimator is suboptimal since it is constrained to be linear.

Example 3

Consider a variation of the above example: Two candidates are standing for an election. Let the fraction of votes that a candidate will receive on an election day be x \in [0,1]. Thus the fraction of votes the other candidate will receive will be 1-x. We shall take x as a random variable with a uniform prior distribution over [0,1] so that its mean is \bar{x} = 1/2 and variance is \sigma_X^2 = 1/12. A few weeks before the election, two independent public opinion polls were conducted by two different pollsters. The first poll revealed that the candidate is likely to get y_1 fraction of votes. Since some error is always present due to finite sampling and the particular polling methodology adopted, the first pollster declares their estimate to have an error z_1 with zero mean and variance \sigma_{Z_1}^2. Similarly, the second pollster declares their estimate to be y_2 with an error z_2 with zero mean and variance \sigma_{Z_2}^2. Note that except for the mean and variance of the error, the error distribution is unspecified. How should the two polls be combined to obtain the voting prediction for the given candidate?

As with previous example, we have

\begin{align} y_1 &= x + z_1 \\ y_2 &= x + z_2. \end{align}

Here both the E\{y_1\} = E\{y_2\} = \bar{x} = 1/2. Thus we can obtain the LMMSE estimate as the linear combination of y_1 and y_2 as

\hat{x} = w_1 (y_1 - \bar{x}) + w_2 (y_2 - \bar{x}) + \bar{x},

where the weights are given by

\begin{align} w_1 &= \frac{1/\sigma_{Z_1}^2}{1/\sigma_{Z_1}^2 + 1/\sigma_{Z_2}^2 + 1/\sigma_X^2}, \\ w_2 &= \frac{1/\sigma_{Z_2}^2}{1/\sigma_{Z_1}^2 + 1/\sigma_{Z_2}^2 + 1/\sigma_X^2}. \end{align} Here since the denominator term is constant, the poll with lower error is given higher weight in order to predict the election outcome. Lastly, the variance of the prediction is given by

\sigma_{\hat{X}}^2 = \frac{1/\sigma_{Z_1}^2 + 1/\sigma_{Z_2}^2}{1/\sigma_{Z_1}^2 + 1/\sigma_{Z_2}^2 + 1/\sigma_X^2} \sigma_X^2 , which makes \sigma_{\hat{X}}^2 smaller than \sigma_X^2.

See also


Further reading

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.