openml-benchmark

Fetches OpenML benchmark runs and compares local classifier results against public baselines.

6|1|Updated May 11, 2026
One-click install
npx skills add https://github.com/yakeworld/Synthos --skill openml-benchmark-yakeworld
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: openml-benchmark
Source: https://github.com/yakeworld/Synthos/tree/main/skills/private/research-tools/openml-benchmark
Command: npx skills add https://github.com/yakeworld/Synthos --skill openml-benchmark-yakeworld

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? When reporting classification results (e.g., on the PIDD diabetes dataset), researchers need to position their method against public OpenML baselines without misattributing F1 gaps to preprocessing or misusing Weka-specific methods as core arguments. ## Core Features & Use Cases - Benchmark Fetching: Pulls run lists and per-run evaluation metrics from the OpenML REST API with batching (limit=500) and timeout controls (--max-time 30). - Data Hygiene: Converts string-typed evaluation values to floats, filters invalid runs (accuracy/f1 = 0), and recomputes means independently. - Gap Attribution: Ranks F1 gap causes (model implementation differences > no SMOTE > no standardization > feature selection portability) and flags Weka-specific methods as not portable to sklearn. - Use Case: Given a CatBoost result of F1=0.7759 on PIDD, produce a comparison table against 50+ OpenML runs (WEKA RF F1=0.7648, best 0.8026) with the method's rank and a defensible attribution of the remaining gap. ## Quick Start Ask the agent to fetch OpenML benchmark runs for the PIDD dataset and compare my CatBoost F1 score against the public baselines with a ranked attribution of the gap.

Frequently Asked Questions about openml-benchmark

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I compare my model's F1 score against OpenML benchmarks?

Fetch the run list for the dataset's classification task from the OpenML API, convert string evaluation values to floats, filter runs with accuracy or f1 equal to 0, then compute your rank as the number of valid runs with strictly higher F1 plus one.

How to fetch OpenML run results with the API?

Query the task list endpoint for the data_id, then pull the run list with limit=500 batching and --max-time 30 timeout. Fetch individual run details only after filtering, since each detail query can take over 30 seconds.

Why is my OpenML mean accuracy calculation wrong?

OpenML returns evaluation values as strings, so they must be converted with float() before averaging. Runs with accuracy or f1 equal to 0 are invalid and must be excluded, otherwise the mean is silently corrupted.

Should I use SMOTE on mildly imbalanced datasets like PIDD?

For mild imbalance such as PIDD's 268:500 ratio, SMOTE tends to introduce noise that cancels its benefit. Tree-based and Bayesian models also do not need feature standardization, so both steps can be skipped.

Can Weka OpenML results be compared directly to sklearn models?

Top OpenML entries often use Weka-specific combinations like AttributeSelectedClassifier with CfsSubsetEval feature selection, which are not portable to sklearn. Report the framework difference explicitly and avoid using Weka top rankings as the core argument.