Zurück zu den Modellen
Transformer

SAX

Symbolic Aggregate approXimation Transformer (SAX).

SAX [2] is a dimensionality reduction technique that z-normalises a time series, applies Piecewise Aggregate Approximation (PAA) [1], and bins the mean of each PAA frame to a discrete value, resulting in a SAX word.

This implementation offers two variants:

1) the original, which takes the desired number of frames and can set the frame size to a fraction to support cases where the time series cannot be divided into the frames equally. 2) a variant that takes the desired frame size and can decrease the frame size of the last frame to support cases where the time series is not evenly divisible into frames.

Schnellstart

python
from sktime.transformations.sax import SAX

estimator = SAX(word_size=8, alphabet_size=5, frame_size=0)

Parameter(3)

word_sizeint, optional (default=8, greater equal 1 if frame_size=0)

length of transformed time series. Ignored if frame_size is set.

alphabet_sizeint, optional (default=5, greater equal 2)
number of discrete values transformed time series is binned to.
frame_sizeint, optional (default=0, greater equal 0)

length of the frames over which the mean is taken. Overrides frames if > 0.

Beispiele

>>> from numpy import arange
>>> from sktime.transformations.sax import SAX
>>> X = arange (10)
>>> sax = SAX (word_size = 3, alphabet_size = 5)
>>> sax. fit_transform (X) array([0, 2, 4])
>>> sax = SAX (frame_size = 2, alphabet_size = 5) array([0, 1, 2, 3, 4])

Referenzen

[1]

Keogh, E., Chakrabarti, K., Pazzani, M., and Mehrotra, S. Dimensionality Reduction for Fast Similarity Search in Large Time Series Databases. Knowledge and Information Systems 3, 263-286 (2001). https://doi.org/10.1007/PL00011669

[2]

Lin, J., Keogh, E., Wei, L., and Lonardi, S. Experiencing SAX: A Novel Symbolic Representation of Time Series. Data Mining and Knowledge Discovery 15, 107-144 (2007). https://doi.org/10.1007/s10618-007-0064-z