wildboar is a Python module for temporal machine learning and fast distance computations built on top of scikit-learn and numpy distributed under the BSD 3-Clause license.
It is currently maintained by Isak Samsten
Data | Classification | Regression | Explainability | Metric | Unsupervised | Dimension selection | Outlier |
---|---|---|---|---|---|---|---|
Repositories | ShapeletForestClassifier |
ShapeletForestRegressor |
ShapeletForestCounterfactual |
UCR-suite | ShapeletForestTransform |
DimensionVarianceThreshold |
IsolationShapeletForest |
Classification (wildboar/ucr ) |
ExtraShapeletTreesClassifier |
ExtraShapeletTreesRegressor |
KNearestCounterfactual |
MASS | RandomShapeletEmbedding |
SelectDimensionPercentile |
|
Regression (wildboar/tsereg ) |
RocketTreeClassifier |
RocketRegressor |
PrototypeCounterfactual |
DTW | RocketTransform |
SelectDimensionTopK |
|
Outlier detection (wildboar/outlier:easy ) |
RocketClassifier |
RandomShapeletRegressor |
IntervalImportance |
DDTW | IntervalTransform |
SelectDimensionSignificance |
|
RandomShapeletClassifier |
RocketTreeRegressor |
ShapeletImportance |
WDTW | FeatureTransform |
|||
RocketForestClassifier |
RocketForestRegressor |
MSM | MatrixProfileTransform |
||||
IntervalTreeClassifier |
IntervalTreeRegressor |
TWE | FlossSegmenter |
||||
IntervalForestClassifier |
IntervalForestRegressor |
LCSS | Motif discovery | ||||
ProximityTreeClassifier |
CastorRegressor |
ERP | SAX |
||||
ProximityForestClassifier |
EDR | PAA |
|||||
HydraClassifier |
ADTW | MatrixProfileTransform |
|||||
KNeighborsClassifier |
HydraTransform |
||||||
ElasticEnsembleClassifier |
KMeans with (W)DTW support |
||||||
DilatedShapeletClassifier |
KMedoids |
||||||
CastorClassifier |
DilatedShapeletTransform |
||||||
CastorTransform |
|||||||
QuantTransform |
See the documentation for examples.
wildboar
is available through pip
and can be installed with:
pip install wildboar
Universal binaries are compiled for Python 3.9, 3.10, 3.11 and 3.12 running on GNU/Linux, Windows and macOS.
If you already have a working installation of numpy, scikit-learn, scipy and cython, compiling and installing wildboar is as simple as:
pip install .
To install the requirements, use:
pip install -r requirements.txt
For complete instructions see the documentation
from wildboar.ensemble import ShapeletForestClassifier
from wildboar.datasets import load_dataset
x_train, x_test, y_train, y_test = load_dataset("GunPoint", merge_train_test=False)
c = ShapeletForestClassifier()
c.fit(x_train, y_train)
c.score(x_test, y_test)
The User guide includes more detailed usage instructions.
The changelog records a
history of notable changes to wildboar
.
Contributions are welcome! The developer's guide has detailed information about contributing code and more!
In short, pull requests should:
- be well motivated
- be formatted using Black
- add relevant tests
- add relevant documentation
You can check the latest sources with the command:
git clone https://github.com/wildboar-foundation/wildboar
- HTML documentation: https://wildboar.dev
If you use wildboar
in a scientific publication, I would appreciate
citations to the paper:
-
Karlsson, I., Papapetrou, P. Boström, H., 2016. Generalized Random Shapelet Forests. In the Data Mining and Knowledge Discovery Journal
ShapeletForestClassifier
-
Isak Samsten, 2020. isaksamsten/wildboar: wildboar. Zenodo. doi:10.5281/zenodo.4264063
-
Karlsson, I., Rebane, J., Papapetrou, P. et al. Locally and globally explainable time series tweaking. Knowl Inf Syst 62, 1671–1700 (2020)
ShapeletForestCounterfactual
KNearestCounterfactual