Skip to content

feat: verified gold lineages, held out into dev and test - #52

Merged
hedmana merged 2 commits into
mainfrom
feat/gold-lineages
Sep 29, 2026
Merged

hedmana merged 2 commits into
mainfrom
feat/gold-lineages

Conversation

@hedmana

@hedmana hedmana commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Closes #51

What

  • fields/gold/gnn.yaml holds 23 papers and 63 originators. Each entry says why it counts.

  • The rule: an originator is a work the paper's method is built on, extends, or makes trainable. Excluded are tools, datasets, benchmark splits, baselines, related work, and approaches the paper replaces.

  • How entries were checked: against the sentences in which the paper cites the work, taken from Semantic Scholar's citation contexts; where those say too little, against the paper's abstract.

  • Examples:

    • GCN keeps ChebNet, Bruna and Hammond ("Our method is based on spectral graph convolutional neural networks, introduced in Bruna et al."), and drops Planetoid ("We choose the same dataset splits as in Yang et al.").
    • GAT keeps Bahdanau ("the particular attentional setup utilized by us closely follows the work of Bahdanau et al.").
  • Coverage: 11 GNN-era papers join, including GAT, MPNN, SGC, DGI, R-GCN, DiffPool, FastGCN and VGAE. Six draft papers left:

    • five whose citations Semantic Scholar has no contexts for: Computational Capabilities of GNNs, NN4G, the recursive-versus-graph-NN comparison, GraRep and SDNE;
    • Lusci, whose citations come with nothing to judge by.

    GIN was considered and left out: its central originator, the 1968 WL paper, has no identifier anywhere.

  • Splits: each paper is dev (may steer changes to the ranking) or test (only reports it). The split alternates in publication order and was fixed before any tuning.

  • gnn.lineages now reports dev and test apart. Alongside recall, it reports gold found as a count over all originators, because recall over reachable originators moves when coverage moves.

Why

The draft was unverified, and a gold set that steers changes can't also judge them. The served ranking against the verified set:

Scorer dev found dev Recall@10 / nDCG@10 test found test Recall@10 / nDCG@10
learned 22/32 0.806 / 0.650 16/31 0.523 / 0.340
equal-weight walk 22/32 0.806 / 0.571 14/31 0.474 / 0.344
time_decayed_pagerank 21/32 0.778 / 0.567 14/31 0.474 / 0.303
gateway 5/32 0.106 / 0.090 4/31 0.167 / 0.080
in_degree 2/32 0.097 / 0.092 2/31 0.076 / 0.038
path_weight 0/32 0 / 0 0/31 0 / 0

Coverage: dev 28/32 and test 30/31 reachable. The learned top 10 overlaps 93 to 95% across seeds.

Verify

uv run pytest tests/test_lineages.py
uv run python -m gnn.lineages --field gnn   # about 4 minutes

Generated with Claude Code

@hedmana
hedmana merged commit 362a68a into main Sep 29, 2026
4 checks 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.

Verify the gold lineages and hold some out

1 participant