So I found another discussion regarding this, but the answers did not fully separate the differenced between SID and ML. Hopefully a discussion here can shed some light on some larger differences both in design and use case situations between the two.

SID and ML seem very similar. They both use known input and output data to identify a model from the data. A few things I notice that set them apart (and correct me if I'm wrong):

  1. Structure - SID has a given model structure according to the input parameters, while ML models don't necessarily have a structure like this.
  2. A machine learning model will predict values accurately (according to the model training) where input data is within a range of the training data. Input data points entering outside the training data range won't necessarily produce the correct output, if the system's dynamics are different outside the training data set values. On the other hand, a sub-space identification model with an optimal estimator like Kalman filter, would capture any changes in the model's dynamics on-the-go.
  3. SID is more specific in it's use case, where the aim is to identify dynamic models from data. ML covers a wider range of use case (regression and classification).

Feel free to add more points if I missed something. So for it's domain specific use in process control, SID methods excel by being computationally lightweight. But if we look away from process control as a domain, and look at other use cases for SID - such as economics, finance, and other empirical modelling domains: is there a clear distinction between SID and ML, and situations where one would be preffered over the other?

Does SID + Kalman filter capture (and predict) the behavior of Dynamic systems and latent variables better? Or has the ML field advanced past the performance of SID in these cases? What are some situations where SID methods would be preffered over ML models, outside of process control?


1 Answer 1


At a high level, conceptually, they are very similar.

When one gets into the details, they come from different communities and were initially designed to solve different tasks, so there are many differences in the specifics.

One difference is that system identification is often most concerned with the particular model (the relationship between input and output), whereas machine learning is often most concerned with making accurate predictions and the model is only a means to an end. Also, system identification is often focused on systems where there is a relatively simple relationship between the input and output, because of the domains where it has typically been used. Also, a very important difference is that system identification is usually focused on stateful systems, whereas machine learning is focused on learning an input-output relationship that is stateless. In system identification, we often have a strong prior on what kinds of relationships are plausible (e.g., because we are dealing with a physical system, that is subject to the laws of physics).

  • $\begingroup$ Interesting points, and great answer! I have heard stories of central banks using SID and/or Kalman filters for estimating certain macroeconomic metrics. Does this tie in with the focus on stateful systems, and to some extent plausible relationships between certain factors in the economy? $\endgroup$ Nov 29, 2022 at 22:25
  • $\begingroup$ @bullfighter, that could be. I'm afraid I don't know much about those subjects -- sorry... $\endgroup$
    – D.W.
    Nov 29, 2022 at 22:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.