Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visualize the modifier structure of a model #332

Closed
alexander-held opened this issue Feb 25, 2022 · 3 comments · Fixed by #333
Closed

Visualize the modifier structure of a model #332

alexander-held opened this issue Feb 25, 2022 · 3 comments · Fixed by #333
Labels
enhancement New feature or request visualization Related to visualization

Comments

@alexander-held
Copy link
Member

When working with a complex model, it may be useful to be able to visualize its structure. That could mean many things, but concretely it can be the modifiers used per channel, sample, and parameter. That can show where and how parameters act. There are three dimension to this (channel, sample, parameter), so this could be shown as multiple 2d tables.

Slightly related: instead of showing modifier types, it could also be interesting to show the effects of templates to identify which parameters have the biggest effects. Associated pyhf issue: scikit-hep/pyhf#1652.

@alexander-held alexander-held added enhancement New feature or request visualization Related to visualization labels Feb 25, 2022
@alexander-held
Copy link
Member Author

As suggested by @kratsg, the opacity of each field could scale with the size of the impact of each modifier. That allows to still distinguish contributions with large impacts by color, while those with small impact blend more into the background.

@alexander-held
Copy link
Member Author

#333 provides an example script, and should be refactored into the existing API. Using the 10.17182/hepdata.89408.v3 workspace as an example, the visualization currently looks like this:
modifier_grid

@alexander-held
Copy link
Member Author

#333 is going to support two different ways of structuring this visualization, with grids split by channel (default) or by sample (as in the visualization in the previous comment). With an update to a more colorblind-friendly colormap (and inclusion of the missing modifier types), the figures now look like this:

split by channel:
modifier_grid

split by sample:
modifier_grid

This visualization is focused on workspace structure, so it will not include an attempt at visualizing differences in impact across modifiers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request visualization Related to visualization
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant