Skip to content

feat: Phase 3 FUNSD relation-linking baseline (V1)#18

Merged
AD2000X merged 1 commit into
mainfrom
feature/phase3-funsd-relations
Jun 3, 2026
Merged

feat: Phase 3 FUNSD relation-linking baseline (V1)#18
AD2000X merged 1 commit into
mainfrom
feature/phase3-funsd-relations

Conversation

@AD2000X
Copy link
Copy Markdown
Owner

@AD2000X AD2000X commented Jun 3, 2026

Annotation-only, CPU-only relation P/R/F1 over GT entities (no image pixels, no GPU). Held-out test_50.qa_links F1 0.727 (P 0.946 / R 0.590), untuned a-priori params; train_149 F1 0.665 < test, so no tuning-on-test.

Bundled:

  • src/funsd_extraction.py: parse + undirected link dedupe + qa/all scopes + per-answer-argmax + distance-gate predictor (max_distance_units, min_score)
  • src/eval_funsd.py: set-based prf1 / evaluate_pairs / evaluate_forms
  • scripts/evaluate_funsd.py: split x scope CLI -> phase3_funsd_relations.json
  • scripts/fetch_funsd.py: one-time FUNSD download/extract helper
  • tests/test_funsd_relations.py: 17 synthetic tests (acceptance gate)
  • notebooks/05_phase3_funsd_relations.ipynb: Colab/local runner (no logic)
  • src/config.py: FUNSD paths; .gitignore: plans/
  • DEVLOG.md + PLAN.md: Phase 3 result + section 7 next-steps refresh

Annotation-only, CPU-only relation P/R/F1 over GT entities (no image pixels,
no GPU). Held-out test_50.qa_links F1 0.727 (P 0.946 / R 0.590), untuned
a-priori params; train_149 F1 0.665 < test, so no tuning-on-test.

Bundled:
- src/funsd_extraction.py: parse + undirected link dedupe + qa/all scopes +
  per-answer-argmax + distance-gate predictor (max_distance_units, min_score)
- src/eval_funsd.py: set-based prf1 / evaluate_pairs / evaluate_forms
- scripts/evaluate_funsd.py: split x scope CLI -> phase3_funsd_relations.json
- scripts/fetch_funsd.py: one-time FUNSD download/extract helper
- tests/test_funsd_relations.py: 17 synthetic tests (acceptance gate)
- notebooks/05_phase3_funsd_relations.ipynb: Colab/local runner (no logic)
- src/config.py: FUNSD paths; .gitignore: plans/
- DEVLOG.md + PLAN.md: Phase 3 result + section 7 next-steps refresh
@AD2000X AD2000X merged commit cbc0cf0 into main Jun 3, 2026
1 check passed
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.

1 participant