This repository contains the official implementation for the models described in Taking ROCKET on an Efficiency Mission: Multivariate Time Series Classification with LightWaveS .
If you find this work helpful in your research, consider citing our paper:
@INPROCEEDINGS{pantiskas2022lightwaves,
author={Pantiskas, Leonardos and Verstoep, Kees and Hoogendoorn, Mark and Bal, Henri},
booktitle={2022 18th International Conference on Distributed Computing in Sensor Systems (DCOSS)},
title={{Taking ROCKET on an Efficiency Mission: Multivariate Time Series Classification with LightWaveS}},
year={2022},
pages={149-152},
doi={10.1109/DCOSS54816.2022.00036}}
The code is written in Python 3.7.13 and has the following main dependencies for the training and evaluation scripts:
- numba==0.55.1
- sympy==1.10.1
- scipy==1.4.1
- sktime==0.10.1
- numpy==1.21.5
- scikit-learn==1.0.2
- pandas==1.3.5
The version of the mpi4py library is 4.0.0.dev0 and has been installed from its repository.
LightWaveS and (MINI)ROCKET are evaluated on the following classification datasets:
- UEA multivariate dataset collection
- MAFAULDA: Machinery Fault Database
- Turbofan Engine Degradation Simulation Data Set
The InsectWingbeat dataset from the UEA collection has been excluded from the experiments since due to its large size it prevented the ROCKET training process from completing successfully.
The MAFAULDA and TURBOFAN datasets have been suitably processed for the classification task. The code for this is in the PrepareDatasets.py file.
The accuracy metrics for ROCKET, MINIROCKET and the default LightWaveS variant (L1L2) on the above datasets can be found here.
The accuracy for the L1, L2 variants of LightWaveS, as well as the L1L2 variant with 1500 featuers, can be found here.
The inference speedup of LightWaveS variants over ROCKET can be found here and over MINIROCKET here.
The number of channels required for the LightWaveS variants during inference, compared to the original number of channels for each dataset, can be found here.