1 Introduction
x, y, q, f multivariate time series \(\in \textbf{R}^{n\times m}\) | R rotation matrix |
\(x_{ij}\), \(x_{i.}\) the j-th or all dimensions of x at time i | \(x^T\) transposed matrix |
\(\tau \), \(\gamma \), \(\pi \) shift, scaling and rotation operator | \(\cdot \) matrix/scalar multiplication |
\(\mu \), \(\sigma \), s mean, standard deviation, scaling factor | H matrix, R depends on H |
\(\{y\}_{i,n}\) segment of y of length n, starts at time i | ||.|| Euclidean norm |
2 Procrustes analysis
3 Sliding procrustes analysis
3.1 Operators for sliding distance
3.2 Sliding distance: s3kr
3.3 Sliding algorithm: S3KR
3.4 TSS clustering with s3kr
4 Experimental results
-
Section 4.3: Since \(\delta ^f\) is a metric, we can build an M-Tree data structure with \(\delta ^f\) as distance metric. For a nearest neighbor search in a set of trajectories of equal lengths, the M-Tree outperforms the brute force search.
-
Section 4.4: Applied on a benchmark dataset of trajectories of varying lengths, the proposed sliding algorithm s3kr performs better, in terms of accuracy and runtime, compared to the methods from literature.
4.1 Clustering synthetic random walks
4.2 Runtime comparison
4.3 Classifying synthetic random walks with an M-Tree
\(\delta ^f\) & | \(\delta ^f\) | \(\delta \) | cMass | z-norm | shape-sgnt | arc-ang | |
---|---|---|---|---|---|---|---|
M-Tree | [19] | [24] | [3] | ||||
F1 | 0.98 | 0.98 | 0.97 | 0.25 | 0.85 | 0.84 | 0.26 |
runtime (ms) | 20 | 225 | 218 | 3757 | 574 | 669 | 3248 |
4.4 Recognizing handwritten symbols
\(\delta ^f\) | \(\delta \) | cMass [19] | shape-sgnt. [24] | arc-ang. [3] | ||
---|---|---|---|---|---|---|
F1 (%) | 89.40 | 81.63 | 80.02 | 57.35 | 31.67 | 36.80 |
Runtime (ms) | 0.3 | 0.4 | 5.8 | 0.5 | 6.2 | 30.6 |