Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wildboar-foundation/wildboar
wildboar is a Python module for temporal machine learning
https://github.com/wildboar-foundation/wildboar
cython distance-measures dtw dynamic-time-warping euclidean-distances machine-learning numpy python scipy timeseries
Last synced: 5 days ago
JSON representation
wildboar is a Python module for temporal machine learning
- Host: GitHub
- URL: https://github.com/wildboar-foundation/wildboar
- Owner: wildboar-foundation
- License: bsd-3-clause
- Created: 2018-05-04T10:32:05.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-11-15T15:30:06.000Z (about 1 month ago)
- Last Synced: 2024-12-08T14:35:37.153Z (14 days ago)
- Topics: cython, distance-measures, dtw, dynamic-time-warping, euclidean-distances, machine-learning, numpy, python, scipy, timeseries
- Language: Python
- Homepage: https://wildboar.dev
- Size: 406 MB
- Stars: 28
- Watchers: 4
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
wildboar
[wildboar](https://wildboar.dev/) is a Python module for temporal machine learning and fast
distance computations built on top of
[scikit-learn](https://scikit-learn.org) and [numpy](https://numpy.org)
distributed under the BSD 3-Clause license.It is currently maintained by Isak Samsten
## Features
| **Data** | **Classification** | **Regression** | **Explainability** | **Metric** | **Unsupervised** | **Dimension selection** | **Outlier** |
| --------------------------------------------------------------- | ------------------------------ | ----------------------------- | ------------------------------ | ---------- | ---------------------------- | ----------------------------- | ------------------------- |
| [Repositories](https://wildboar.dev/master/guide/datasets.html) | `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](https://wildboar.dev/master/) for examples.
## Installation
### Binaries
`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.### Compilation
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](https://wildboar.dev/master/install.html#build-and-compile-from-source)
## Usage
```python
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](https://wildboar.dev/master/guide.html) includes more
detailed usage instructions.## Changelog
The [changelog](https://wildboar.dev/master/more/whatsnew.html) records a
history of notable changes to `wildboar`.## Development
Contributions are welcome! The [developer's
guide](https://wildboar.dev/master/more/contributing.html) 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## Source code
You can check the latest sources with the command:
git clone https://github.com/wildboar-foundation/wildboar
## Documentation
- HTML documentation: [https://wildboar.dev](https://wildboar.dev)
## Citation
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`