Quick Start
Run a binary classification benchmark with evolving feature streams.
from openmoa.datasets import Spambase
from openmoa.classifiers import FESLClassifier
from openmoa.streams import OpenFeatureStream, ShuffledStream
from openmoa.evaluation import prequential_evaluation
# Load and shuffle a static dataset
base_stream = ShuffledStream(Spambase(), random_seed=42)
# Wrap with Trapezoidal Feature Evolution (TDS)
stream = OpenFeatureStream(
base_stream,
evolution_pattern="tds",
tds_mode="ordered",
d_min=2,
random_seed=42
)
# Initialize the FESL classifier
classifier = FESLClassifier(
schema=base_stream.get_schema(),
alpha=1.0,
lambda_=0.1,
window_size=100
)
# Run prequential evaluation
results = prequential_evaluation(
stream=stream,
learner=classifier,
max_instances=10000,
sample_frequency=1000
)
print(f"Accuracy: {results.accuracy()}")