Skip to content

ECG Dataset - #53

Open
atharvas wants to merge 76 commits into
mainfrom
ecg-dataset
Open

ECG Dataset#53
atharvas wants to merge 76 commits into
mainfrom
ecg-dataset

Conversation

@atharvas

@atharvas atharvas commented Mar 13, 2024

Copy link
Copy Markdown
Collaborator

This adds the ECG dataset to the codebase along with a tutorial. This is a pretty messy update and still needs some cleanup (hence the draft).

Remaining TODOs:

  • We want to add the drop-variables production to the DSL. For this we need to redesign the DSL.
    • Format ECG code to be up-to-date with the latest code.
      • Update ECG DSL to use latest API.
    • Factorize data so that sensors with similar semanics are grouped together.

@atharvas
atharvas marked this pull request as draft March 15, 2024 00:02
@atharvas
atharvas marked this pull request as ready for review March 20, 2026 01:04
@atharvas atharvas changed the title [Draft] ECG Dataset ECG Dataset Mar 20, 2026
kavigupta and others added 21 commits March 24, 2026 20:15
compute_metrics short-circuited to {neg_l1_dist, neg_l2_dist} for any
float-dtype labels, making classification metrics (F1, hamming, AUROC)
structurally unreachable for multi-label tasks (whose labels must be
float for BCE loss). Distinguish binary-indicator multi-hot matrices
from continuous regression targets so multi-label routes correctly;
regression path is unchanged. Add macro_auroc as a first-class
validation metric with per-column skip on degenerate single-class
columns, and register it in the NEARTrainerConfig allowlist.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
phase1_typed_ecg_dsl gains 5 new kwargs (disable_add, disable_mul,
disable_ite, disable_linear, disable_embeds) so each combinator and
per-group embed can be omitted independently for ablation. Each gates
the corresponding dslf.production call; defaults preserve T1 behaviour
exactly.

benchmark_reduced_attention_ecg.py exposes matching CLI flags
(--disable-{add,mul,ite,linear}, --disable-embeds a,b,...) plus
--train-seed to sweep data-shuffling seeds.

Add REPORT.md with (a) T1 headline reproduction (bit-exact 0.9017),
(b) 7-arm production ablation (mul is the single load-bearing operator;
add/ite are removable under budget), and (c) a reviewer-driven sweep
covering seed sensitivity, feature-group importance (amp features alone
= 0.899), depth/cost/hidden/LR sweeps, and neural-relaxation
minimisation (20 search epochs or hidden=16 both match T1). 26
experiments, ~80 GPU-hours.

Also extend CASE_STUDY.md (§5.6 multi-label evaluation) and
EXPERIMENTS.md (Phase 5) with the framework-defect narrative and M1-M4
multi-label results.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants