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), which is a common measure of estimator quality, of the fitted values of a dependent variable. In the Bayesian setting, the term MMSE more specifically refers to estimation with quadratic loss function. In such case, the MMSE estimator is given by the posterior mean of the parameter to be estimated. Since the posterior mean is cumbersome to calculate, the form of the MMSE estimator is usually constrained to be within a certain class of functions. Linear MMSE estimators are a popular choice since they are easy to use, easy to calculate, and very versatile. It has given rise to many popular estimators such as the Wiener–Kolmogorov filter and Kalman filter.

Motivation
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; or the statistics of an actual random signal such as speech. 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.

Definition
Let $$x$$ be a $$n \times 1$$ 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


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

where the expectation $$\operatorname{E}$$ is taken over $$x$$ conditioned on $$y$$. When $$x$$ is a scalar variable, the MSE expression simplifies to $$\operatorname{E} \left\{ (\hat{x} - x)^2 \right\}$$. Note that MSE can equivalently be defined in other ways, since
 * $$\operatorname{tr} \left\{ \operatorname{E}\{ee^T \} \right\} = \operatorname{E} \left\{ \operatorname{tr}\{ee^T \} \right\} = \operatorname{E}\{e^T e \} = \sum_{i=1}^n \operatorname{E}\{e_i^2\}.$$

The MMSE estimator is then defined as the estimator achieving minimal MSE:
 * $$\hat{x}_{\operatorname{MMSE}}(y) = \operatorname{argmin}_{\hat{x}} \operatorname{MSE}.$$

Properties

 * When the means and variances are finite, the MMSE estimator is uniquely defined and is given by:
 * $$\hat{x}_{\operatorname{MMSE}}(y) = \operatorname{E} \{x \mid y\}.$$
 * In other words, the MMSE estimator is the conditional expectation of $$x$$ given the known observed value of the measurements. Also, since $$\hat{x}_{\mathrm{MMSE}}$$ is the posterior mean, the error covariance matrix $$C_e = \operatorname{E}\{(\hat{x} - x)(\hat{x} - x)^T \}$$ is equal to the posterior covariance $$C_{X|Y}$$ matrix,
 * $$C_e = C_{X|Y}$$.


 * The MMSE estimator is unbiased (under the regularity assumptions mentioned above):
 * $$\operatorname{E}\{\hat{x}_{\operatorname{MMSE}}(y)\} = \operatorname{E}\{\operatorname{E}\{x\mid y\}\} = \operatorname{E}\{x\}.$$


 * The MMSE estimator is asymptotically unbiased and it converges in distribution to the normal distribution:
 * $$ \sqrt{n}(\hat{x}_{\operatorname{MMSE}} - x) \xrightarrow{d} \mathcal{N}\left(0, I^{-1}(x)\right),$$
 * where $$I(x)$$ is the Fisher information of $$x$$. Thus, the MMSE estimator is asymptotically efficient.


 * 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}_{\operatorname{MMSE}}=g^*(y),$$ if and only if
 * $$\operatorname{E} \{ (\hat{x}_{\operatorname{MMSE}}-x) g(y) \} = 0$$
 * for all $$g(y)$$ in closed, linear subspace $$\mathcal{V} = \{g(y)\mid g:\mathbb{R}^m \rightarrow \mathbb{R}, \operatorname{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:
 * $$\operatorname{E} \{ (g_i^*(y)-x_i) g_j(y) \} = 0,$$
 * for all i and j. More succinctly put, the cross-correlation between the minimum estimation error $$\hat{x}_{\operatorname{MMSE}}-x$$ and the estimator $$\hat{x}$$ should be zero,
 * $$\operatorname{E} \{ (\hat{x}_{\operatorname{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$$. This can be directly shown using the Bayes theorem. 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 the analytical expression of the MMSE estimator. Two basic numerical approaches to obtain the MMSE estimate depends on either finding the conditional expectation $$\operatorname{E}\{x\mid y\}$$ or finding the minima of MSE. Direct numerical evaluation of the conditional expectation is computationally expensive since it often requires multidimensional integration usually done via Monte Carlo methods. Another computational approach is to directly seek the minima of the MSE using techniques such as the stochastic gradient descent methods; but this method still requires the evaluation of expectation. While these numerical methods have been fruitful, a closed form expression for the MMSE estimator is nevertheless possible if we are willing to make some compromises.

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$$, $$\operatorname{E}\{x\mid y\} = W y + b$$, where the measurement $$y$$ is a random vector, $$W$$ is a matrix and $$b$$ is a vector. This can be seen as the first order Taylor approximation of $$\operatorname{E}\{x\mid y\}$$. The linear MMSE estimator is the estimator achieving minimum MSE among all estimators of such form. That is, it solves the following optimization problem:
 * $$\min_{W,b} \operatorname{MSE} \qquad \text{s.t.} \qquad \hat{x} = W y + b.$$

One advantage of such linear MMSE estimator is that it is not necessary to explicitly calculate the posterior probability density function of $$x$$. Such linear estimator only depends on the first two moments of $$x$$ and $$y$$. So although it may be convenient to assume that $$x$$ and $$y$$ are jointly Gaussian, it is not necessary to make this assumption, so long as the assumed distribution has well defined first and second moments. The form of the linear estimator does not depend on the type of the assumed underlying distribution.

The expression for optimal $$b$$ and $$W$$ is given by:
 * $$b = \bar{x} - W \bar{y},$$
 * $$ W = C_{XY}C^{-1}_{Y}.$$

where $$\bar{x} = \operatorname{E}\{x\}$$, $$\bar{y} = \operatorname{E}\{y\},$$ the $$C_{XY}$$ is cross-covariance matrix between $$x$$ and $$y$$, the $$C_{Y}$$ is auto-covariance matrix of $$y$$.

Thus, the expression for linear MMSE estimator, its mean, and its auto-covariance is given by
 * $$\hat{x} = C_{XY}C^{-1}_{Y}(y-\bar{y}) + \bar{x},$$
 * $$\operatorname{E}\{\hat{x}\} = \bar{x},$$
 * $$C_{\hat{X}} = C_{XY} C^{-1}_Y C_{YX},$$

where 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},$$
 * $$\operatorname{LMMSE} = \operatorname{tr} \{C_e\}.$$

Let us have the optimal linear MMSE estimator given as $$\hat{x} = Wy+b$$, where we are required to find the expression for $$W$$ and $$b$$. It is required that the MMSE estimator be unbiased. This means,


 * $$\operatorname{E}\{\hat{x}\} = \operatorname{E}\{x\}.$$

Plugging the expression for $$\hat{x}$$ in above, we get


 * $$b = \bar{x} - W \bar{y},$$

where $$\bar{x} = \operatorname{E}\{x\}$$ and $$\bar{y} = \operatorname{E}\{y\}$$. Thus we can re-write the estimator as


 * $$\hat{x} = W(y-\bar{y}) + \bar{x}$$

and the expression for estimation error becomes


 * $$\hat{x} - x = W(y-\bar{y}) - (x-\bar{x}).$$

From the orthogonality principle, we can have $$\operatorname{E} \{ (\hat{x}-x) (y-\bar{y})^T\} = 0$$, where we take $$g(y) = y - \bar{y}$$. Here the left-hand-side term is



\begin{align} \operatorname{E} \{ (\hat{x}-x)(y - \bar{y})^T\} &= \operatorname{E} \{ (W(y-\bar{y}) - (x-\bar{x})) (y - \bar{y})^T \} \\ &= W \operatorname{E} \{(y-\bar{y})(y-\bar{y})^T \} - \operatorname{E} \{ (x-\bar{x})(y-\bar{y})^T \} \\ &= WC_Y - C_{XY}. \end{align} $$

When equated to zero, we obtain the desired expression for $$W$$ as


 * $$ W = C_{XY}C^{-1}_Y .$$

The $$C_{XY}$$ is cross-covariance matrix between X and Y, and $$C_{Y}$$ is auto-covariance matrix of Y. Since $$C_{XY}=C^T_{YX}$$, the expression can also be re-written in terms of $$C_{YX}$$ as


 * $$W^T = C^{-1}_Y C_{YX} .$$

Thus the full expression for the linear MMSE estimator is


 * $$\hat{x} = C_{XY} C^{-1}_Y (y-\bar{y}) + \bar{x}.$$

Since the estimate $$\hat{x}$$ is itself a random variable with $$\operatorname{E}\{\hat{x}\} = \bar{x}$$, we can also obtain its auto-covariance as



\begin{align} C_{\hat{X}} &= \operatorname{E}\{(\hat x - \bar x)(\hat x - \bar x)^T\} \\ &= W \operatorname{E}\{(y-\bar{y})(y-\bar{y})^T\} W^T \\ &= W C_Y W^T .\\ \end{align} $$

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 &= \operatorname{E}\{(\hat x - x)(\hat x - x)^T\} \\ &= \operatorname{E}\{(\hat x - x)(W(y-\bar{y}) - (x-\bar{x}))^T\} \\ &= \underbrace{\operatorname{E}\{(\hat x - x)(y-\bar{y})^T \}}_0 W^T - \operatorname{E}\{(\hat x - x)(x-\bar{x})^T\} \\ &= - \operatorname{E}\{(W(y-\bar{y}) - (x-\bar{x}))(x-\bar{x})^T\} \\ &= \operatorname{E}\{(x-\bar{x})(x-\bar{x})^T\} - W \operatorname{E}\{(y-\bar{y})(x-\bar{x})^T\} \\ &= C_X - WC_{YX}. \end{align} $$

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


 * $$\operatorname{LMMSE} = \operatorname{tr}\{C_e\} $$.

Univariate case
For the special case when both $$x$$ and $$y$$ are scalars, the above relations simplify to


 * $$ \hat{x} = \frac{\sigma_{XY}}{\sigma_Y^2}(y-\bar{y}) + \bar{x} = \rho \frac{\sigma_{X}}{\sigma_Y}(y-\bar{y}) + \bar{x},$$
 * $$\sigma^2_e = \sigma_X^2 - \frac{\sigma_{XY}^2}{\sigma_Y^2} = (1 - \rho^2)\sigma_X^2,$$

where $$\rho = \frac{\sigma_{XY}}{\sigma_X \sigma_Y}$$ is the Pearson's correlation coefficient between $$x$$ and $$y$$.

The above two equations allows us to interpret the correlation coefficient either as normalized slope of linear regression


 * $$ \left(\frac{\hat{x} - \bar{x}}{\sigma_{X}}\right) = \rho \left(\frac{y-\bar{y}}{\sigma_Y}\right)$$

or as square root of the ratio of two variances


 * $$\rho^2 = \frac{\sigma_X^2 - \sigma_e^2}{\sigma_X^2} = \frac{\sigma^2_{\hat{X}}}{\sigma^2_X}$$.

When $$\rho = 0$$, we have $$\hat{x} = \bar{x}$$ and $$\sigma^2_e = \sigma_X^2$$. In this case, no new information is gleaned from the measurement which can decrease the uncertainty in $$x$$. On the other hand, when $$\rho = \pm 1$$, we have $$\hat{x} = \frac{\sigma_{XY}}{\sigma_Y}(y-\bar{y}) + \bar{x}$$ and $$\sigma^2_e = 0$$. Here $$x$$ is completely determined by $$y$$, as given by the equation of straight line.

Computation
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, while for large sparse systems conjugate gradient method is more effective. 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.

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 $$\operatorname{E}\{z\}=0$$ and cross-covariance $$C_{XZ} = 0$$. Here the required mean and the covariance matrices will be


 * $$\operatorname{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. Lastly, this technique can handle cases where the noise is correlated.

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},$$

and
 * $$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 ridge regression, 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 $$W = (A^TC_Z^{-1}A)^{-1} A^TC_Z^{-1}$$ 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 and have equal variance such that $$C_Z = \sigma^2 I,$$ where $$I$$ is an identity matrix, then $$W = (A^TA)^{-1}A^T$$ is identical to the ordinary least square estimate. When apriori information is available as $$C_X^{-1}=\lambda I$$ and the $$z$$ are uncorrelated and have equal variance, we have $$W = (A^TA + \lambda I)^{-1}A^T$$, which is identical to ridge regression solution.

Sequential linear MMSE estimation
In many real-time applications, observational data is not available in a single batch. Instead the observations are made in a sequence. One possible approach is to use the sequential observations to update an old estimate as additional data becomes available, leading to finer estimates. One crucial difference between batch estimation and sequential estimation is that sequential estimation requires an additional Markov assumption.

In the Bayesian framework, such recursive estimation is easily facilitated using Bayes' rule. Given $$k$$ observations, $$y_1, \ldots, y_k$$, Bayes' rule gives us the posterior density of $$x_k$$ as



\begin{align} p(x_k|y_1, \ldots, y_k) &\propto p(y_k|x,y_1,\ldots,y_{k-1}) p(x_k|y_1, \ldots, y_{k-1}) \\ &= p(y_k|x_k) p(x_k|y_1, \ldots, y_{k-1}). \end{align} $$

The $$p(x_k|y_1, \ldots, y_k)$$ is called the posterior density, $$p(y_k|x_k)$$ is called the likelihood function, and $$p(x_k|y_1, \ldots, y_{k-1})$$ is the prior density of k-th time step. Here we have assumed the conditional independence of $$y_k$$ from previous observations $$y_1, \ldots, y_{k-1}$$ given $$x$$ as


 * $$p(y_k|x_k,y_1,\ldots,y_{k-1}) = p(y_k|x_k).$$

This is the Markov assumption.

The MMSE estimate $$\hat{x}_k$$ given the k-th observation is then the mean of the posterior density $$p(x_k|y_1,\ldots, y_k)$$. With the lack of dynamical information on how the state $$x$$ changes with time, we will make a further stationarity assumption about the prior:


 * $$p(x_k|y_1, \ldots, y_{k-1}) = p(x_{k-1}|y_1, \ldots, y_{k-1}).$$

Thus, the prior density for k-th time step is the posterior density of (k-1)-th time step. This structure allows us to formulate a recursive approach to estimation.

In the context of linear MMSE estimator, the formula for the estimate will have the same form as before: $$\hat{x} = C_{XY}C^{-1}_{Y}(y-\bar{y}) + \bar{x}.$$ However, the mean and covariance matrices of $$X$$ and $$Y$$ will need to be replaced by those of the prior density $$p(x_k|y_1,\ldots, y_{k-1})$$ and likelihood $$p(y_k|x_k)$$, respectively.

For the prior density $$p(x_k|y_1, \ldots, y_{k-1})$$, its mean is given by the previous MMSE estimate,


 * $$\bar{x}_{k}=\mathrm{E}[x_k|y_1,\ldots,y_{k-1}]=\mathrm{E}[x_{k-1}|y_1,\ldots,y_{k-1}]=\hat{x}_{k-1}$$,

and its covariance matrix is given by the previous error covariance matrix,


 * $$C_{X_k|Y_1,\ldots,Y_{k-1}} = C_{X_{k-1}|Y_1,\ldots,Y_{k-1}} = C_{e_{k-1}},$$

as per by the properties of MMSE estimators and the stationarity assumption.

Similarly, for the linear observation process, the mean of the likelihood $$p(y_k|x_k)$$ is given by $$\bar{y}_k = A\bar{x}_k = A\hat{x}_{k-1}$$ and the covariance matrix is as before



\begin{align} C_{Y_k|X_k} &= A C_{X_k|Y_1,\ldots,Y_{k-1}} A^T + C_Z = A C_{e_{k-1}} A^T + C_Z. \end{align} $$.

The difference between the predicted value of $$Y_k$$, as given by $$\bar{y}_k = A\hat{x}_{k-1}$$, and its observed value $$y_k$$ gives the prediction error $$\tilde{y}_k = y_k - \bar{y}_k$$, which is also referred to as innovation or residual. It is more convenient to represent the linear MMSE in terms of the prediction error, whose mean and covariance are $$\mathrm{E}[\tilde{y}_k] = 0$$ and $$C_{\tilde{Y}_k} = C_{Y_k|X_k}$$.

Hence, in the estimate update formula, we should replace $$\bar{x}$$ and $$C_X$$ by $$\hat{x}_{k-1}$$ and $$C_{e_{k-1}}$$, respectively. Also, we should replace $$\bar{y}$$ and $$C_Y$$ by $$\bar{y}_{k-1}$$ and $$C_{\tilde{Y}_k}$$. Lastly, we replace $$C_{XY}$$ by



\begin{align} C_{X_k Y_k| Y_1,\ldots, Y_{k-1}} &= C_{e_{k-1}\tilde{Y}_k} = C_{e_{k-1}}A^T. \end{align} $$

Thus, we have the new estimate as new observation $$y_k$$ arrives as

\begin{align} \hat{x}_k &= \hat{x}_{k-1} + C_{e_{k-1} \tilde{Y}_k} C_{\tilde{Y}_k}^{-1} (y_k - \bar{y}_k) \\ &= \hat{x}_{k-1} + C_{e_{k-1}}A^T (AC_{e_{k-1}}A^T + C_Z)^{-1}(y_k-A\hat{x}_{k-1}) \end{align} $$ and the new error covariance as
 * $$C_{e_k} = C_{e_{k-1}} - C_{e_{k-1}}A^T(AC_{e_{k-1}}A^T + C_Z)^{-1}AC_{e_{k-1}}.$$

From the point of view of linear algebra, 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.

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


 * $$W_{k} = C_{e_{k-1}} A^T(AC_{e_{k-1}}A^T + C_Z)^{-1},$$
 * $$\hat{x}_{k} = \hat{x}_{k-1} + W_{k} (y_{k}-A\hat{x}_{k-1}),$$
 * $$C_{e_{k}} = (I - W_{k} A)C_{e_{k-1}}.$$

The matrix $$W_k$$ is often referred to as the Kalman gain factor. The alternative formulation of the above algorithm will give


 * $$C_{e_{k}}^{-1} = C_{e_{k-1}}^{-1} + A^T C_Z^{-1} A,$$
 * $$W_{k} = C_{e_{k}} A^T C_Z^{-1},$$
 * $$\hat{x}_{k} = \hat{x}_{k-1} + W_{k} (y_{k}-A\hat{x}_{k-1}),$$

The repetition of these three steps as more data becomes available leads to an iterative estimation algorithm. The generalization of this idea to non-stationary cases gives rise to the Kalman filter. The three update steps outlined above indeed form the update step of the Kalman filter.

Special case: scalar observations
As an important special case, an easy to use recursive expression can be derived when at each k-th time instant the underlying linear observation process yields a scalar such that $$y_k = a_k^T x_k + z_k$$, where $$a_k$$ is n-by-1 known column vector whose values can change with time, $$x_k$$ is n-by-1 random column vector to be estimated, and $$z_k$$ is scalar noise term with variance $$\sigma_k^2$$. After (k+1)-th observation, the direct use of above recursive equations give the expression for the estimate $$\hat{x}_{k+1}$$ as:
 * $$\hat{x}_{k+1} = \hat{x}_k + w_{k+1}(y_{k+1} - a^T_{k+1} \hat{x}_k)$$

where $$y_{k+1}$$ is the new scalar observation and the gain factor $$w_{k+1}$$ is n-by-1 column vector given by
 * $$w_{k+1} = \frac{C_{e_k} a_{k+1}}{\sigma^2_{k+1} + a^T_{k+1}C_{e_k} a_{k+1}}.$$

The $$C_{e_{k+1}}$$ is n-by-n error covariance matrix given by
 * $$C_{e_{k+1}} = (I - w_{k+1}a^T_{k+1})C_{e_k} .$$

Here, no matrix inversion is required. Also, the gain factor, $$w_{k+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$$.

Alternative approaches: This important special case has also given rise to many other iterative methods (or adaptive filters), such as the least mean squares filter and recursive least squares filter, that directly solves the original MSE optimization problem using stochastic gradient descents. However, since the estimation error $$e$$ cannot be directly observed, these methods try to minimize the mean squared prediction error $$\mathrm{E}\{\tilde{y}^T \tilde{y}\}$$. For instance, in the case of scalar observations, we have the gradient $$\nabla_{\hat{x}} \mathrm{E}\{\tilde{y}^2\} = -2 \mathrm{E}\{\tilde{y} a\}.$$ Thus, the update equation for the least mean square filter is given by
 * $$\hat{x}_{k+1} = \hat{x}_k + \eta_k \mathrm{E}\{\tilde{y}_k a_k\},$$

where $$\eta_k$$ is the scalar step size and the expectation is approximated by the instantaneous value $$\mathrm{E}\{a_k \tilde{y}_k\} \approx a_k \tilde{y}_k$$. As we can see, these methods bypass the need for covariance matrices.

Special Case: vector observation with uncorrelated noise
In many practical applications, the observation noise is uncorrelated. That is, $$C_Z$$ is a diagonal matrix. In such cases, it is advantageous to consider the components of $$y$$ as independent scalar measurements, rather than vector measurement. This allows us to reduce computation time by processing the $$m \times 1$$ measurement vector as $$m$$ scalar measurements. The use of scalar update formula avoids matrix inversion in the implementation of the covariance update equations, thus improving the numerical robustness against roundoff errors. The update can be implemented iteratively as:


 * $$w_{k+1}^{(\ell)} = \frac{ C_{e_k}^{(\ell)} A^{(\ell) T}_{k+1} }{ C_{Z_{k+1}}^{(\ell)} + A_{k+1}^{(\ell)} C_{e_k}^{(\ell)} (A^{(\ell) T}_{k+1}) }$$
 * $$C_{e_{k+1}}^{(\ell)} = (I - w_{k+1}^{(\ell)} A_{k+1}^{(\ell)})C_{e_k}^{(\ell)}$$
 * $$\hat{x}_{k+1}^{(\ell)} = \hat{x}_k^{(\ell-1)} + w_{k+1}^{(\ell)}(y_{k+1}^{(\ell)} - A_{k+1}^{(\ell)} \hat{x}_k^{(\ell-1)})$$

where $$\ell = 1, 2, \ldots, m$$, using the initial values $$C_{e_{k+1}}^{(0)} = C_{e_{k}}$$ and $$\hat{x}_{k+1}^{(0)} = \hat{x}_{k}$$. The intermediate variables $$C_{Z_{k+1}}^{(\ell)}$$ is the $$\ell$$-th diagonal element of the $$m \times m$$ diagonal matrix $$C_{Z_{k+1}}$$; while $$A_{k+1}^{(\ell)}$$ is the $$\ell$$-th row of $$m \times n$$ matrix $$A_{k+1}$$. The final values are $$C_{e_{k+1}}^{(m)} = C_{e_{k+1}}$$ and $$\hat{x}_{k+1}^{(m)} = \hat{x}_{k+1}$$.

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

\operatorname{cov}(Z)=\operatorname{E}[zz^{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 z_{4}$$.

In terms of the terminology developed in the previous sections, for this problem we have the observation vector $$y = [z_1, z_2, z_3]^T$$, the estimator matrix $$W = [w_1, w_2, w_3]$$ as a row vector, and the estimated variable $$x = z_4$$ as a scalar quantity. The autocorrelation matrix $$C_Y$$ is defined as
 * $$C_Y=\left[\begin{array}{ccc}

E[z_{1},z_{1}] & E[z_{2},z_{1}] & E[z_{3},z_{1}]\\ E[z_{1},z_{2}] & E[z_{2},z_{2}] & E[z_{3},z_{2}]\\ E[z_{1},z_{3}] & E[z_{2},z_{3}] & E[z_{3},z_{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
 * $$C_{YX}=\left[\begin{array}{c}

E[z_{4},z_{1}]\\ E[z_{4},z_{2}]\\ E[z_{4},z_{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
 * $$C_Y^{-1}C_{YX}=\left[\begin{array}{ccc}

4.85 & -1.71 & -0.142\\ -1.71 & 0.428 & 0.2857\\ -0.142 & 0.2857 & -0.1429\end{array}\right]\left[\begin{array}{c} 4\\ 9\\ 10\end{array}\right]=\left[\begin{array}{c} 2.57\\ -0.142\\ 0.5714\end{array}\right]=W^T.$$

So we have $$w_1=2.57,$$ $$w_2=-0.142,$$ and $$w_{3}=.5714$$ as the optimal coefficients for $$\hat z_4$$. Computing the minimum mean square error then gives $$\left\Vert e\right\Vert _{\min}^2=\operatorname{E}[z_4 z_4]-WC_{YX}=15-WC_{YX}=.2857$$. 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 fixed but unknown 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. Suppose that we know $$[-x_0,x_0]$$ to be the range within which the value of $$x$$ is going to fall in. We can model our uncertainty of $$x$$ by an aprior uniform distribution 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} & \operatorname{E}\{y\} = 0, \\ & C_Y = \operatorname{E}\{yy^T\} = \sigma_X^2 11^T + \sigma_Z^2I, \\ & C_{XY} = \operatorname{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} &= \left(1^T \frac{1}{\sigma_Z^2}I 1 + \frac{1}{\sigma_X^2}\right)^{-1} 1^T \frac{1}{\sigma_Z^2} I y \\ &= \frac{1}{\sigma_Z^2} \left( \frac{N}{\sigma_Z^2} + \frac{1}{\sigma_X^2} \right)^{-1} 1^T y \\ &= \frac{\sigma_X^2}{\sigma_X^2 + \sigma_Z^2/N} \bar{y}, \end{align} $$

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
 * $$\operatorname{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 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. Had the random variable $$x$$ also been Gaussian, then the estimator would have been optimal. Notice, that the form of the estimator will remain unchanged, regardless of the apriori distribution of $$x$$, so long as the mean and variance of these distributions are the same.

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 $$\operatorname{E}\{y_1\} = \operatorname{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 $$\hat{x}$$ 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.$$ Thus, the LMMSE is given by
 * $$\mathrm{LMMSE} = \sigma_{X}^2 - \sigma_{\hat{X}}^2 = \frac{1}{1/\sigma_{Z_1}^2 + 1/\sigma_{Z_2}^2 + 1/\sigma_X^2}.$$

In general, if we have $$N$$ pollsters, then $$\hat{x} = \sum_{i=1}^N w_i (y_i - \bar{x}) + \bar{x},$$ where the weight for i-th pollster is given by $$w_i = \frac{1/\sigma_{Z_i}^2}{\sum_{j=1}^N 1/\sigma_{Z_j}^2 + 1/\sigma_X^2}$$ and the LMMSE is given by $$\mathrm{LMMSE} = \frac{1}{\sum_{j=1}^N 1/\sigma_{Z_j}^2 + 1/\sigma_X^2}.$$

Example 4
Suppose that a musician is playing an instrument and that the sound is received by two microphones, each of them located at two different places. Let the attenuation of sound due to distance at each microphone be $$a_1$$ and $$a_2$$, which are assumed to be known constants. Similarly, let the noise at each microphone be $$z_1$$ and $$z_2$$, each with zero mean and variances $$\sigma_{Z_1}^2$$ and $$\sigma_{Z_2}^2$$ respectively. Let $$x$$ denote the sound produced by the musician, which is a random variable with zero mean and variance $$\sigma_X^2.$$ How should the recorded music from these two microphones be combined, after being synced with each other?

We can model the sound received by each microphone as

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

Here both the $$\operatorname{E}\{y_1\} = \operatorname{E}\{y_2\} = 0$$. Thus, we can combine the two sounds as
 * $$y = w_1 y_1 + w_2 y_2$$

where the i-th weight is given as
 * $$w_i = \frac{a_i/\sigma_{Z_i}^2}{\sum_j a_j^2/\sigma_{Z_j}^2 + 1/\sigma_{X}^2}.$$