data-centric-env / openenv.yaml
Aswini-Kumar's picture
Audit fixes: remove duplicate torch import, add metadata field, fix stale strings, fix test assertions, update reward docs
36f4bdf
Raw
History Blame Contribute Delete
2.2 kB
name: data-centric-env
description: >
Train an LLM agent to improve ML datasets using the Data-Centric AI paradigm.
The agent coordinates specialist sub-agents (CleanerAgent, AugmenterAgent,
BalancerAgent, ValidatorAgent) to fix data quality issues and improve a fixed
classifier's accuracy — without changing the model architecture or hyperparameters.
Based on Andrew Ng's Data-Centric AI framework.
version: "1.1.0"
tags:
- data-centric-ai
- world-modeling
- professional-tasks
- reinforcement-learning
- grpo
- unsloth
- curriculum-learning
tasks:
- name: task_0_tutorial
description: >
Single-issue tutorial. 100 rows, binary classification, 4 features.
Only issue: 15-30% missing values. Baseline ~0.62, target 0.73. Budget: 30 steps.
Note: query_analyst costs 2 budget total (1 cmd step + 1 internal); query_validator also costs 2 total.
- name: task_1_easy
description: >
Two issues: missing values (8-25%) + mild class imbalance (5-20%).
200 rows, binary, 5 features. Baseline ~0.63, target 0.79. Budget: 25 steps.
- name: task_2_medium
description: >
Four issues: missing values, duplicates, class imbalance, type errors.
500 rows, 3-class, 7 features. Baseline ~0.58, target 0.74. Budget: 40 steps.
- name: task_3_hard
description: >
Six issues: missing values, duplicates, imbalance, type errors, outliers,
cross-column logic errors. 900 rows, 4-class, 10 features.
Baseline ~0.54, target 0.71. Budget: 60 steps.
action_type: text
observation_type: structured
# Reward components (v2 — strict discrimination design):
# accuracy_reward: [-1.0, +0.80] — Δacc×2.5 mid-ep; submit: base+efficiency×budget_fraction+stretch
# process_reward: [-0.20, +0.13] — strict workflow enforcement (blind apply=-0.08, etc.)
# preservation_reward:[-0.50, +0.05] — row preservation ≥92% required for bonus
# efficiency_reward: [-0.10, +0.25] — at submit only; accuracy_gain/budget_used × 3.0
# step_reward: [-0.30, +0.15] — proxy quality delta per apply (no classifier)
# Total clamped to [-1.0, 1.0] by compute_total_reward()
reward_range: [-1.0, 1.0]