Skip to main content

A Random Dilated Dictionary Transform for Fast, Accurate and Constrained Memory Time Series Classification

Project description

WEASEL 2.0 - A Random Dilated Dictionary Transform for Fast, Accurate and Memory Constrained Time Series Classification

WEASEL 2.0 combines a novel dilation mapping, small dictionaries and hyper-parameter ensembling to obtain a fast, accurate, and constrained memory TSC. WEASEL 2.0 is significantly more accurate than its predecessor dictionary methods (BOSS, TDE, WEASEL), and in the same group as SotA non-ensemble methods.

ArXiv-Paper: https://arxiv.org/abs/2301.10194

The paper has been accepted within the journal track at ECML-PKDD 2023: https://link.springer.com/article/10.1007/s10994-023-06395-w

Accuracy against dictionary classifiers

UCR_accuracy_subset

Accuracy against SotA classifiers

UCR_accuracy

Runtime against SotA classifiers

UCR_runtime

Installation

Dependencies

aeon >= 0.1.0

Installation

The easiest is to use pip to install weasel-classifier.

a) Install using pip

pip install weasel-classifier

You can also install the project from source.

b) Build from Source

First, download the repository.

git clone https://github.com/patrickzib/dictionary.git

Change into the directory and build the package from source.

pip install .

Train a WEASEL 2.0 classifier

WEASEL v2 follows the aeon pipeline.

from aeon.datasets import load_arrow_head
from weasel.classification.dictionary_based import WEASEL_V2

X_train, y_train = load_arrow_head(split="train", return_type="numpy3d")
X_test, y_test = load_arrow_head(split="test", return_type="numpy3d")
clf = WEASEL_V2(random_state=1379, n_jobs=4)
clf.fit(X_train,y_train)
clf.predict(X_test)

AEON

WEASEL v2 is part of the aeon toolkit, too: https://github.com/aeon-toolkit/aeon

Citing

If you use this algorithm or publication, please cite:

@article{schaefer2023weasel,
  title={WEASEL 2.0: a random dilated dictionary transform for fast, accurate and memory constrained time series classification},
  author={Sch{\"a}fer, Patrick and Leser, Ulf},
  journal={Machine Learning},
  volume={112},
  number={12},
  pages={4763--4788},
  year={2023},
  publisher={Springer}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

weasel_classifier-0.3.0.tar.gz (64.3 kB view details)

Uploaded Source

File details

Details for the file weasel_classifier-0.3.0.tar.gz.

File metadata

  • Download URL: weasel_classifier-0.3.0.tar.gz
  • Upload date:
  • Size: 64.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for weasel_classifier-0.3.0.tar.gz
Algorithm Hash digest
SHA256 64ddda49e675626966138b0d3de44f91e9ba96575d83104e24f10d47bb3f1ef0
MD5 7d93a3365569fc579f68b6c23a9fc7e4
BLAKE2b-256 5dbe29edf71e9b94827ff31a549fd53b25a76c5a7a5b792d0fd5fe831ade43aa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page