NNPDF / nnpdf

An open-source machine learning framework for global analyses of parton distributions.
https://docs.nnpdf.science/
GNU General Public License v3.0
30 stars 6 forks source link

Integrability check #998

Closed tgiani closed 8 months ago

tgiani commented 4 years ago

Integrability should be checked at the level of postfit just as for positivity.

wilsonmr commented 3 years ago

Hi @tgiani I was running some closure tests on the new branch today and I noticed that pretty much all of them have failed postfit with:

[INFO]: 21 replicas pass IntegNumber_3

low number on integrability 3. Is there something weird happening here or should I just change the theshold so more pass?

wilsonmr commented 3 years ago

I'm not sure whether or not I should be concerned about the integrability on a closure test, it might be that the underlying law is not integrable since I picked it from a fit before the filter was there. Also we ignore various other things in closure test, like if the pseudodata is negative etc.

wilsonmr commented 3 years ago

in the discussion on #1007 the high default for integrability was 10, whereas now it is 0.5 although the argparser says 1e-2 (perhaps these should also be made consistent...)

wilsonmr commented 3 years ago

I can get all of the fits to pass with the threshold at 10 but this seems pretty high!

tgiani commented 3 years ago

I don t think there is anything strange here, IntegNumber_3 is the one for T8 which is indeed the more problematic (meaning that unlike other nonsinglet distribution T8 looks less constrained at small x). Personally I would just remove integrability checks from closure tests, setting an high value for the threshold as you did with 10. As you said the underlying law doesn t have to be integrable, and integrability is something which does not concern the data region.

tgiani commented 3 years ago

do you agree?

tgiani commented 3 years ago

in the discussion on #1007 the high default for integrability was 10, whereas now it is 0.5 although the argparser says 1e-2 (perhaps these should also be made consistent...)

right, 1e-2 was definetly too low, 0.5 is the correct one. I ll fix the argparser

wilsonmr commented 3 years ago

I just thought btw, perhaps the preprocessing range on these fits was causing non-integrability?