Mathieu Guillame-Bert
Software Engineer | Google Zurich
Google Zurich

TITAR Learner

Last release: February 2014

TITARL (or TITAR Learner) is a Data Mining algorithm able to extract temporal patterns from symbolic time sequences

Screen capture of Titarl
(click to enlarge)

The package contains the binary of the temporal learning algorithm described in the article "New Approach on Temporal Data Mining for Symbolic Time Sequences: Temporal Tree Associate Rules". The algorithm is also explained in this interactive tutorial. This algorithm extracts Temporal association rules from a Symbolic time sequences. The rules can be printed into HTML files, exported into XML files, applied and evaluated on other data-sets. The package also contains an example of data-set to use with the algorithm. You can refer to the TITARL documentation page.

The package also contains an sample data-set (the 20th part of the Computer Generated Data-set), and an example of configuration to extract and display patterns from this dataset.

This release [public release] does not include (yet) the work done in 2013 and 2014 (Aggregating temporal rules, Randomization approach to estimate robustness of association rules, etc.). If you want to access the full release, send me an email.

Do not forget to subscribe to the Newsletter and
be alerted on new TITARL releases

Event Viewer 2.0.5

Last release: August 2014

Event viewer is a small software that allow you to visualize easily time series and time sequences. You can either directly import and visualize your data (e.g. csv files), or you can define a "view". A view is a powerful way to define what and how the data should be displayed. Data from different files can be combined. Since Event viewer is especially designed for time series and time sequences, it can print very large datasets.

[+] Display symbolic and scalar time series and time sequences.
[+] Fast moving and zooming on plot.
[+] Allow several plotting styles (e.g. curves, stairs, market , bars, crosses, dashed, etc.)
[+] Customizable organization of the plots
[+] Display huge datasets
[+] Possibility to add annotations
[+] Support csv, evt and bin files
[+] Load "directories" i.e. loading all the files in a directory and organizing them.
[+] Directly import files (csv, evt, bin, directory).
[+] Plot histogram of values
[+] Plot cross plot of values

The package contains a sample of data. This sample is based on the "Home activities dataset" by Tim van Kasteren, Athanasios Noulas, Gwenn Englebienne and Ben Krose presented in "Accurate Activity Recognition in a Home Setting", and on the learning algorithm presented in "Temporal Data Mining for Symbolic Time Sequences: Temporal Tree Associate Rules".

Do not forget to subscribe to the Newsletter and
be alerted on new Event Viewer releases

Event Script 1.0.0

Last release: October 2015

Event script is a small but high level flow-oriented declarative programming language designed to facilitate the pre/post processing and the analysis of symbolic and numerical time series and sequences datasets. Event Script has been developed since 2010 an applied on a width range of dataset and problems including Medical datasets, Market dataset, hardward monitoring dataset, human activities datasets, etc.

Example of Event Script and its graph.
This script extract hearth beat events from
an EKG continuous signal.
(click to enlarge)

Some of Event script's notable features are:

  • Simple and compact syntax to make Event Script easy to read and write.
  • High level programming that abstract most of the complexity of dealing with large and asynchronous time sequence datasets. Event script is so simple that it does not have IF or FOR instructions.
  • A large library of existing operators developed and experienced through several research projects (Medical, financial, fault detection, abnormality detection, etc.).
  • Support import and export of Csv files, as well as several other more efficient file formats.
  • The possibility to export a script as a graph for easy script reading and debugging.
  • Comes with an integrated development environment with syntax coloration, auto-completion.
  • Can be interfaced with Event Viewer to real time and/or online visualization of the results.
  • Naturally forbid the use of future data to produce result in the past (unless explicitely forced). In other work, Event Script naturaly garenties that a script produces similar results on static or and online streaming datasets.
  • Memory efficient. While processing time series, it only the strictly necessary data is kept in memory. For every large datasets, Event Script can be run in a greedy streaming mode for a minimal memory consuption (with a higher computational cost).
  • Can be run on datasets or real time data flow.
  • Can be distributed over several computers (TCP computation distribution).
  • Easy to integrate to other project with an easy to use API.
  • Easy to implement new operators (either as a script function or a new C++ class).

Event Script online material includes

The paquage contains:

  • Event Script source code (C++0x).
  • The binaries for Window x64 and Linux x64.
  • Some examples of script on two toy datasets.

Do not forget to subscribe to the Newsletter and
be alerted on new Event Viewer releases

Machine Learning Lab. v0.1

Last release: October 2013

Machine Learning Lab. (MLL) is a small exploratory tool that gives you the opportunity to plays easily with common machines learning algorithms. MLL creates an interactive webpage where you can select a datasets, algorithms, and see the results of applying this algorithm in the dataset.

Screen capture of Machine Learning Lab.
(click to enlarge)

Once your started the program, start your web-browser and open the url http://localhost:2002/.

All the algorithms can be parameterizable. The available algorithms are:

  • Random forest
  • AdaBoost
  • SVN
  • KNN
  • Decision trees
  • Artificial neural networks

Several types of evaluation and way to visual the results are proposed:
  • Accuracy
  • ROC
  • n dimensional plotting of the input space
  • n-folds cross validations

You can also import your own datasets by dropping your csv files in the "IncludedDatasets" directory. Csv specification: CSV file, comma separated, names on the first line, output value in the last column, all values should be real numbers.

Do not forget to subscribe to the Newsletter and
be alerted on new Machine Learning Lab releases