SAX · Sequitur · Re-Pair · linear time & space

Read the grammar hidden in your time series.

GrammarViz discretizes a signal into symbols, induces a context-free grammar over them, and turns the grammar's rare and frequent rules into variable-length anomalies and motifs — interactively, as the signal streams in.

SAX discretization of a time seriesA continuous signal is sliced by equiprobable breakpoints into alphabet bands a–d and read off as a symbol string.dcbabdbcbz-norm → PAA → symbols
Built for people and pipelines

Run it as a desktop app, a CLI, or a library

GrammarViz 3.0 is pure Java and runs anywhere a JVM does. Drive the interactive Swing GUI for exploration, script the command line for batch jobs, or link the core as a dependency. The GUI follows an MVC split so the discovery engine is reusable on its own.

You can watch grammar rules form in real time as a signal is acquired.

GrammarViz 3.0 graphical interface showing a time series and inferred grammar rules
Use it

Get the library

maven central

Add the dependency

GrammarViz ships as net.seninp:grammarviz2:3.0.1 on Maven Central. Build a stand-alone jar with mvn package -DskipTests from the source repository.

<dependency>
  <groupId>net.seninp</groupId>
  <artifactId>grammarviz2</artifactId>
  <version>3.0.1</version>
</dependency>
reference

Cite the work

Senin, P., Lin, J., Wang, X., Oates, T., Gandhi, S., Boedihardjo, A.P., Chen, C., Frankenstein, S. GrammarViz 3.0: Interactive Discovery of Variable-Length Time Series Patterns. ACM TKDD, 2018.

References

The work behind the tool

TKDD 2018
Senin, Lin, Wang, Oates, Gandhi, Boedihardjo, Chen, Frankenstein. DOI ↗
EDBT 2015
Senin, Lin, Wang, Oates, Gandhi, Boedihardjo, Chen, Frankenstein.
ECML/PKDD 2014
Senin, Lin, Wang, Oates, Gandhi, Boedihardjo, Chen, Frankenstein, Lerner.
SDM 2012
Yuan Li, Jessica Lin, Tim Oates.