Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: alagoz
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 41 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created about 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.md

DOI

⚡ CFIRE: Cross-Representation Feature Extraction for Time Series Classification

CFIRE (Cross-Representation Feature Extraction) is a feature-based time series classification framework that leverages a diverse set of time-domain, frequency-domain, and transformation-based representations. It systematically extracts, combines, and optimizes features across representations to achieve state-of-the-art classification performance.


🚀 Key Features

  • 🔁 Cross-representation feature extraction (Time, Frequency, Derivative, DWT, FFT, Hilbert, etc.)
  • 🧠 Support for popular feature sets: Catch22, TSFresh
  • 🔍 Integrated feature redundancy reduction and optimization
  • ⚙️ Built-in classifier selection and benchmarking (e.g., ExtraTrees, XGBoost, SVM)
  • 🧪 Parallelized feature extraction for scalable performance
  • 📊 Comprehensive experimental suite for reproducible research

📦 Installation

bash git clone https://github.com/alagoz/cfire.git cd cfire pip install -r requirements.txt


🚀 Quick Start Guide

1. Install Requirements

bash pip install numpy pandas scikit-learn aeon tsfresh PyWavelets dtaidistance

2. Load Any UCR Dataset via aeon

CFIRE supports any dataset from the UCR Time Series Archive via the aeon library.

To change the dataset, simply modify the namedset in the script: ``` namedset = "ArrowHead" # Replace with any UCR dataset name ```

✅ Example Datasets
"ECG200"
"GunPoint"
"Coffee"
"Plane"
"ItalyPowerDemand"
"Chinatown"
"Beef"

To list all available datasets: bash from aeon.datasets import get_dataset_names print(get_dataset_names("classification"))

3. Run the Demo

python demo_.py Sample Output on an Intel i7-11700 @2.50 GHz CPU with 8 cores and 32 GB RAM:
bash run:0 acc:0.9535, dur_tr_trans:4.59s, dur_clf_fit:0.15s, dur_te_trans:4.60s, dur_clf_pred:0.02s run:1 acc:0.9302, dur_tr_trans:0.57s, dur_clf_fit:0.15s, dur_te_trans:0.42s, dur_clf_pred:0.00s run:2 acc:0.9070, dur_tr_trans:0.17s, dur_clf_fit:0.11s, dur_te_trans:0.10s, dur_clf_pred:0.01s

🧠 How It Works
- Load a dataset from the UCR archive using aeon.
- Extract features using CFIRE from multiple domains (Fourier, Wavelet, Hilbert, etc.).
- Train a classifier (e.g., Extremely Randomized Trees).
- Evaluate accuracy and compute time.

📁 Project Structure
bash cfire/ ├── demo_.py # Example: Run on any UCR dataset ├── crossfire.py # crossfire implementation (user-defined) ├── README.md # This file

⚙️ Customize Feature Extraction
You can control which feature categories are used in CFIRE:
model_feat = CFIRE( norms=True, stats=True, series=True, temp=True, multiprocessing=True )

📬 Contact
For feedback or questions, open an issue or email celal.alagoz@gmail.com.

Owner

  • Name: Celal ALAGÖZ
  • Login: alagoz
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Alagöz
  given-names: Celal
  orcid: https://orcid.org/0000-0001-9812-1473
title: "CFIRE v1.0.0 – A Reproducible and Interpretable Cross-Representation TSC Framework for Research"
version: v1.0.0
doi: 10.5281/zenodo.15695652
date-released: 2025-06-19
url: "https://github.com/alagoz/cfire"

GitHub Events

Total
  • Release event: 1
  • Push event: 2
Last Year
  • Release event: 1
  • Push event: 2