# How to do prediction using frequency domain data?

Both linear regression and Kalman filtering can be used to estimate and then predict from a time domain sequence of data (given some assumptions about the model behind the data).

What methods, if any, might be applicable to do prediction using frequency domain data? (e.g. predict a future step, using the output from suitable FFT(s) of previous data, without just going back to the time domain for the estimation.)

What assumptions about the data, or the model behind the data, might be required for what, if any, quality or optimality of prediction in the frequency domain? (But assume it is not apriori known whether the data source is strictly periodic in the FFT aperture width.)

• hotpaw, can you please elaborate on your second paragraph. I am not sure why it would matter to either the linear regressor or kalman filter what the data is, so long as there is an underlying relationship, but perhaps I have not understood your q. May 17 '12 at 22:02
• What, specifically are you trying to predict? The time-domain value $L$ samples ahead? Predictors (intuitively so) typically only predict a small period of time in the future, which doesn't square well with a block-oriented process like the DFT. However, there is a blockwise algorithm for executing the least-mean-squares (LMS) algorithm blockwise in the frequency domain (similar to fast-convolution filtering). I don't have a specific reference here, but I know it's covered in Haykin's "Adaptive Filter Theory." May 17 '12 at 22:05
• sounds similar to dsp.stackexchange.com/a/123/29 May 18 '12 at 0:19
• @endolith : Similar, except I included a very important part 2: Under what assumptions or conditions might this be "reasonable". May 18 '12 at 1:54

An important NOTE: Since you are talking about frequency domain, it is implied that entire DFT spectrum is available and hence estimation is used for smoothing rather than future prediction.

If the signal is stationary, you can apply wiener filter and the model produced is an FIR filter; in this case, the signal estimation in the time domain will be identical to that of frequency domain.

From wiki: Wiener's main accomplishment was solving the case where the causality requirement is in effect, and in an appendix of Wiener's book Levinson gave the FIR solution.

Removing noise using wiener filter using deconvolution is called Wiener deconvolution. This works in frequency domain. And is quite well used in Image deconvolution.

I don't know if there is a formulation possible for Kalman filter to be used for given Frequency domain data (assuming DFT) because usual implementations are actually iterative sample by sample. But kalman smoothing approaches probably can do similar thing.

Using the frequency and time domains to make near-term predictions about one another is problematic due to the uncertainty principle. This means that the better you want to know the spectrum, the more samples you have to collect. This delays your prediction, reducing its usefulness.

The first question I would ask is "how predictable is my time series to begin with?" in order to know how well my forecasting algorithm is performing and decide when to stop. This question can be answered by estimating the entropy rate.

Another thing to remember is that a time series is fully characterized by its joint distribution; transformations can not improve this, but can help when you are working with crude models (e.g., that neglect high-order dependencies).