Discretization

An increasing number of algorithms for inference from experimental data require discrete data as input. For example, dynamic Bayesian network methods and methods that use the framework of finite dynamical systems, such as Boolean networks, all take discrete input. Experimental data, however, are typically continuous and represented by computer floating point numbers. The translation from continuous to discrete data is crucial in preserving the variable dependencies and thus has a significant impact on the performance of the network inference algorithms. It's especially true for EEG signals.

Our first (and current) approach use this kind of prediction algorithm although it exists other tools to predict continous time series. We are well aware of these methods but we made the choice to explore first this area and depending on our first results on real time captured data we will steer our research.

Since we aim to develop a light software enable to predict in real time and on line if you are likely to have a heart-attack, a seizure or a cerebrovascular accident, we need to find an efficient way to discretize our data. Our literature search lead us to SAX algorithm. This is a very simple, light (and efficient) way to discretize time series data without loosing too much original information. So starting from this point, we created a SAX-inspired algorithm to handle dynamic data.

You can learn more about SAX algorithm here and about Dynamic SAX algorithm here. You can also access to the code in our repository.