Skip to content

Only plot head-specific test set in results for multihead models#1445

Merged
ilyes319 merged 3 commits into
ACEsuit:developfrom
joehart2001:multihead-eval
Jun 4, 2026
Merged

Only plot head-specific test set in results for multihead models#1445
ilyes319 merged 3 commits into
ACEsuit:developfrom
joehart2001:multihead-eval

Conversation

@joehart2001

@joehart2001 joehart2001 commented Apr 22, 2026

Copy link
Copy Markdown

Issue:
When training a multi-head model, all heads' test sets are plotted on every head's results panel. For a 3-head
model, each panel shows test data from all 3 heads (each evaluated with its own readout), all labelled "Test".
This has two consequences:

  • The relevant per-head test scatter is obscured by test data from other heads
  • When heads span different energy/force ranges, the axes are forced to accommodate all heads' ranges, reducing resolution on the head of interest

Solution:

  • run_train.py: Label each test set with its head name before passing to the plotter
  • visualise_train.py: only plot the test data for the current head + add the head name to the legend label

Testing

  • 2 epochs with: single head, multihead, naive FT, mutlihead FT

  • Multihead before (3 heads) (cropped out training plots as not relevant here):

mutlihead_plotting_before
  • Multihead after:
mutlihead_plotting_after

@ilyes319

ilyes319 commented May 3, 2026

Copy link
Copy Markdown
Contributor

@vue1999 Could you check that?

@vue1999 vue1999 self-requested a review May 12, 2026 00:11

@vue1999 vue1999 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this, I have checked the code and tested it, looks good to me. Could you please sync the branch with main and ensure the unit tests pass?

@joehart2001

joehart2001 commented May 12, 2026

Copy link
Copy Markdown
Author

Thanks for this, I have checked the code and tested it, looks good to me. Could you please sync the branch with main and ensure the unit tests pass?

Thanks @vue1999 for testing. I've rebased now. lt seems the errors are coming from files i have not touched. any advice?

@vue1999 vue1999 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, tested and unit tests pass✅

@vue1999

vue1999 commented May 12, 2026

Copy link
Copy Markdown
Collaborator

Thanks for this, I have checked the code and tested it, looks good to me. Could you please sync the branch with main and ensure the unit tests pass?

Thanks @vue1999 for testing. I've rebased now. lt seems the errors are coming from files i have not touched. any advice?

Thanks, the unit tests were fixed in the main branch changes, so after rebasing they have succeeded as expected

@joehart2001

Copy link
Copy Markdown
Author

Thanks for this, I have checked the code and tested it, looks good to me. Could you please sync the branch with main and ensure the unit tests pass?

Thanks @vue1999 for testing. I've rebased now. lt seems the errors are coming from files i have not touched. any advice?

Thanks, the unit tests were fixed in the main branch changes, so after rebasing they have succeeded as expected

Amazing, thanks!

@ilyes319 ilyes319 changed the base branch from main to develop June 4, 2026 16:54
@ilyes319 ilyes319 merged commit 7972e66 into ACEsuit:develop Jun 4, 2026
25 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.

3 participants