aeon

📁 lifangda/claude-plugins 📅 3 days ago
1
总安装量
1
周安装量
#51537
全站排名
安装命令
npx skills add https://github.com/lifangda/claude-plugins --skill aeon

Agent 安装分布

openclaw 1

Skill 文档

Aeon

Overview

Aeon is a comprehensive Python toolkit for time series machine learning, providing state-of-the-art algorithms and classical techniques for analyzing temporal data. Use this skill when working with sequential/temporal data across seven primary learning tasks: classification, regression, clustering, forecasting, anomaly detection, segmentation, and similarity search.

When to Use This Skill

Apply this skill when:

  • Classifying or predicting from time series data (e.g., ECG classification, activity recognition)
  • Forecasting future values in temporal sequences (e.g., stock prices, energy demand)
  • Detecting anomalies in sensor streams or operational data
  • Clustering temporal patterns or discovering motifs
  • Segmenting time series into meaningful regions (change point detection)
  • Computing distances between time series using specialized metrics (DTW, MSM, ERP)
  • Extracting features from temporal data using ROCKET, Catch22, TSFresh, or shapelets
  • Building deep learning models for time series with specialized architectures

Core Capabilities

1. Time Series Classification

Classify labeled time series using diverse algorithm families:

  • Convolution-based: ROCKET, MiniRocket, MultiRocket, Arsenal, Hydra
  • Deep learning: InceptionTime, ResNet, FCN, TimeCNN, LITE
  • Dictionary-based: BOSS, TDE, WEASEL, MrSEQL (symbolic representations)
  • Distance-based: KNN with elastic distances, Elastic Ensemble, Proximity Forest
  • Feature-based: Catch22, FreshPRINCE, Signature classifiers
  • Interval-based: CIF, DrCIF, RISE, Random Interval variants
  • Shapelet-based: Learning Shapelet, SAST
  • Hybrid ensembles: HIVE-COTE V1/V2

Example:

from aeon.classification.convolution_based import RocketClassifier
from aeon.datasets import load_arrow_head

X_train, y_train = load_arrow_head(split="train")
X_test, y_test = load_arrow_head(split="test")

clf = RocketClassifier()
clf.fit(X_train, y_train)
accuracy = clf.score(X_test, y_test)

2. Time Series Regression

Predict continuous values from time series using adapted classification algorithms:

from aeon.regression.convolution_based import RocketRegressor

reg = RocketRegressor()
reg.fit(X_train, y_train_continuous)
predictions = reg.predict(X_test)

3. Forecasting

Predict future values using statistical and deep learning models:

  • Statistical: ARIMA, ETS, Theta, TAR, AutoTAR, TVP
  • Naive baselines: NaiveForecaster with seasonal strategies
  • Deep learning: TCN (Temporal Convolutional Networks)
  • Regression-based: RegressionForecaster with sliding windows

Example:

from aeon.forecasting.naive import NaiveForecaster

forecaster = NaiveForecaster(strategy="last")
forecaster.fit(y_train)
y_pred = forecaster.predict(fh=[1, 2, 3])  # forecast 3 steps ahead

4. Anomaly Detection

Identify outliers in time series data:

  • Distance-based: KMeansAD, CBLOF, LOF, STOMP, LeftSTAMPi, MERLIN, ROCKAD
  • Distribution-based: COPOD, DWT_MLEAD
  • Outlier detection: IsolationForest, OneClassSVM, STRAY
  • Collection adapters: ClassificationAdapter, OutlierDetectionAdapter

Example:

from aeon.anomaly_detection import STOMP

detector = STOMP(window_size=50)
anomaly_scores = detector.fit_predict(X_series)

5. Clustering

Group similar time series without labels:

from aeon.clustering import TimeSeriesKMeans

clusterer = TimeSeriesKMeans(n_clusters=3, distance="dtw")
clusterer.fit(X_collection)
labels = clusterer.predict(X_new)

6. Segmentation

Divide time series into distinct regions or identify change points:

from aeon.segmentation import ClaSPSegmenter

segmenter = ClaSPSegmenter()
change_points = segmenter.fit_predict(X_series)

7. Similarity Search

Find motifs and nearest neighbors in time series collections using specialized distance metrics and matrix profile techniques.

8. Transformations

Preprocess and extract features from time series:

  • Collection transformers: ROCKET, Catch22, TSFresh, Shapelet, SAX, PAA, SFA
  • Series transformers: Moving Average, Box-Cox, PCA, Fourier, Savitzky-Golay
  • Channel operations: Selection, scoring, balancing
  • Data balancing: SMOTE, ADASYN

Example:

from aeon.transformations.collection.convolution_based import Rocket

rocket = Rocket(num_kernels=10000)
X_transformed = rocket.fit_transform(X_train)

9. Distance Metrics

Compute specialized time series distances:

  • Warping: DTW, WDTW, DDTW, WDDTW, Shape DTW, ADTW
  • Edit distances: ERP, EDR, LCSS, TWE
  • Standard: Euclidean, Manhattan, Minkowski, Squared
  • Specialized: MSM, SBD

Example:

from aeon.distances import dtw_distance, pairwise_distance

dist = dtw_distance(series1, series2)
dist_matrix = pairwise_distance(X_collection, metric="dtw")

Installation

Install aeon using pip:

# Core dependencies only
pip install -U aeon

# All optional dependencies
pip install -U "aeon[all_extras]"

Or using conda:

conda create -n aeon-env -c conda-forge aeon
conda activate aeon-env

Requirements: Python 3.9, 3.10, 3.11, or 3.12

Data Format

Aeon uses standardized data shapes:

  • Collections: (n_cases, n_channels, n_timepoints) as NumPy arrays or pandas DataFrames
  • Single series: NumPy arrays or pandas Series
  • Variable-length: Supported with padding or specialized handling

Load example datasets:

from aeon.datasets import load_arrow_head, load_airline

# Classification dataset
X_train, y_train = load_arrow_head(split="train")

# Forecasting dataset
y = load_airline()

Workflow Patterns

Pipeline Construction

Combine transformers and estimators using scikit-learn pipelines:

from sklearn.pipeline import Pipeline
from aeon.transformations.collection import Catch22
from aeon.classification.distance_based import KNeighborsTimeSeriesClassifier

pipeline = Pipeline([
    ('features', Catch22()),
    ('classifier', KNeighborsTimeSeriesClassifier())
])
pipeline.fit(X_train, y_train)

Discovery and Tags

Find estimators programmatically:

from aeon.utils.discovery import all_estimators

# Find all classifiers
classifiers = all_estimators(type_filter="classifier")

# Find all forecasters
forecasters = all_estimators(type_filter="forecaster")

References

The skill includes modular reference files with comprehensive details:

references/learning_tasks.md

In-depth coverage of classification, regression, clustering, and similarity search, including algorithm categories, use cases, and code patterns.

references/temporal_analysis.md

Detailed information on forecasting, anomaly detection, and segmentation tasks with model descriptions and workflows.

references/core_modules.md

Comprehensive documentation of transformations, distances, networks, datasets, and benchmarking utilities.

references/workflows.md

Common workflow patterns, pipeline examples, cross-validation strategies, and integration with scikit-learn.

Load these reference files as needed for detailed information on specific modules or workflows.