Skip to content

Latest commit

 

History

History
76 lines (52 loc) · 3.31 KB

README.rst

File metadata and controls

76 lines (52 loc) · 3.31 KB

Time series symbolic discretization with SAX

Latest PyPI version Latest Travis CI build status
This code is released under GPL v.2.0 and implements in Python:
  • Symbolic Aggregate approXimation (i.e., SAX) stack [LIN2002]
  • a simple function for time series motif discovery [PATEL2001]
  • HOT-SAX - a time series anomaly (discord) discovery algorithm [KEOGH2005]
[LIN2002]Lin, J., Keogh, E., Patel, P., and Lonardi, S., Finding Motifs in Time Series, The 2nd Workshop on Temporal Data Mining, the 8th ACM Int'l Conference on KDD (2002)
[PATEL2001]Patel, P., Keogh, E., Lin, J., Lonardi, S., Mining Motifs in Massive Time Series Databases, In Proc. ICDM (2002)
[KEOGH2005]Keogh, E., Lin, J., Fu, A., HOT SAX: Efficiently finding the most unusual time series subsequence, In Proc. ICDM (2005)

Note that the most of the library's functionality is also available in R and Java

Citing this work:

If you are using this implementation for you academic work, please cite our Grammarviz 2.0 paper:

[SENIN2014]Senin, P., Lin, J., Wang, X., Oates, T., Gandhi, S., Boedihardjo, A.P., Chen, C., Frankenstein, S., Lerner, M., GrammarViz 2.0: a tool for grammar-based pattern discovery in time series, ECML/PKDD, 2014.

In a nutshell

SAX is used to transform a sequence of rational numbers (i.e., a time series) into a sequence of letters (i.e., a string) which is (typically) much shorterthan the input time series. Thus, SAX transform addresses a chief problem in time-series analysis -- the dimensionality curse.

This is an illustration of a time series of 128 points converted into the word of 8 letters:

SAX in a nutshell

SAX in a nutshell

As discretization is probably the most used transformation in data mining, SAX has been widely used throughout the field. Find more information about SAX at its authors pages: SAX overview by Jessica Lin, Eamonn Keogh's SAX page, or at sax-vsm wiki page.

Installation

$ pip install saxpy

Requirements

Compatibility

Licence

GNU General Public License v2.0

Authors

saxpy was written by Pavel Senin.