0

I am using Python's PyKalman to run the Kalman filter based on the ARMA(p,q) model. The transition matrix should take a very particular form (see, for instance, page 374 of Hamilton's "Times Series Analysis" for the AR(p) example) with some ones and zeros in the right places. When I use PyKalman's EM algorithm, however, it produces a transition matrix of a completely general form. Since the ones and the zeros are gone, the state-space model doesn't correspond anymore to the ARMA setting.

How can I use the EM method of the PyKalman package, while keeping the transition matrix in the very particular ARMA form?

  • Is the matrix initially unknown? I would say it should be known and is not a subject of em optimization, is it? – Anton Jul 02 '19 at 11:00
  • In the simplest version of the Kalman filter these parameters/matrices are indeed set to fixed known values. For the practical purposes, however, it is not always sufficient, as there is no straightforward way to guess them. It is therefore common to use the expectation–maximization (EM) algorithm to determine the maximum likelihood estimates of the parameters. At least, this is the impression I got :) – skuperst Jul 04 '19 at 09:56
  • I see. So you want the EM algorithm to estimate the transition matrix and you need to know how to restrict the estimator to generate it in the ARMA way. – Anton Jul 04 '19 at 11:44
  • You got it absolutely right – skuperst Jul 05 '19 at 12:04

0 Answers0