Comments (10)
Also the Adler sum rule is approximated: the structure function is never the PDF at higher orders. (And there is not enough cancellation between the ν and ν¯)
Yep (especially also since it does not account for heavy flavors)! That was a typo and is fixed now.
from nnusf.
Fitting parametrization, masks, observables
Here I think a mask (flavormap) as in n3fit might be the easiest solution. Doesn't really matter though, as whatever method we choose, there will not be a gradient corresponding to a structure function that does not contribute to the chi2.
I agree. You can plug a bunch of zeros, and that would be the exact same, but masking is much more efficient, and standard in numpy
(so I'm confident even in tf
).
Covariance Matrix, correlations
Here I believe we'll be able to do something much simpler: according to Juan's review most data are old, and they most likely don't provide correlated systematics, so it might that we'll have variances, but no covariance at all.
In any case, even if we were using vp
, we shuld have had implement covariances our own, since any dataset might implement a different formula, and they are contained in the filters (plus across datasets correlations, but these are not that frequent).
We can support any case, and we just have to provide a matrix at the end, or even some blocks only, so not having to deal with vp
internals we'll just speed up: once we implement suitable formulas (that we should have done anyhow), we'll have our covmat.
Theoretical constraints: sum rules, etc.
Here I'm not sure we want to implement them, since they are only approximated they might be inconsistent with our precision.
In principle we could benchmark the precision in the perturbative regime, but it will be
We can implement as a "hint", but this hint it will be already contained (in the perturbative regime) in the PDFs used to generate predictions with yadism
. We know they respect these constraints, because we imposed ourselves ;)
So, maybe, I'd give up completely on sum rules.
I wonder if Juan we'll be able to provide some information on a vanishing
from nnusf.
What data for the BC are you referring to?
In principle, parts of the datasets we're going to use is fully perturbative (e.g. part of CHORUS). But it's the same: in principle there might some advantage in including directly information (since part of it might not be consumed in a PDF fit), but since it has already been partially consumed we should compute covariances between data and pseudodata.
It's a mess: let's just use pseudodata, for which the covmat is the one we said above (computed through MC replicas) and will be much simpler.
from nnusf.
Closing as the main points here have all been addressed.
from nnusf.
Also the Adler sum rule is approximated: the structure function is never the PDF at higher orders.
(And there is not enough cancellation between the
from nnusf.
Fitting parametrization, masks, observables
Here I think a mask (flavormap) as in n3fit might be the easiest solution. Doesn't really matter though, as whatever method we choose, there will not be a gradient corresponding to a structure function that does not contribute to the chi2.
Custom/Early stopping
The stopping module is actually not that complicated, it consists of many lines because (as you say) n3fit includes much functionality that we are not interested in anyway. A good example of this is the fitting of multiple replicas.
For stopping I think we should indeed use a simple callback function, how fancy we want to make this is up to us, but in the simplest implementation a history class storing the chi2s of the fit will get us a long way.
from nnusf.
Agreed with @alecandido.
On the covmat thing: we may want to keep in mind that for the theory prediction we'll use as boundary condition the covmat will be available.
On the th. constraints: I'm not in favor of enforcing approximations, but it might be worth checking how close we are a posteriori. Pinning the structure functions to 0 at x=1 of course we can do.
from nnusf.
On the covmat thing: we may want to keep in mind that for the theory prediction we'll use as boundary condition the covmat will be available.
Even more: since boundary conditions are data, but possibly even pseudodata yadism
generated, we can exploit MC replicas to get a covmat even for them.
On the th. constraints: I'm not in favor of enforcing approximations, but it might be worth checking how close we are a posteriori.
Good idea, I agree.
Pinning the structure functions to 0 at x=1 of course we can do.
Definitely, but this we can even decide to hard-code (I'm not sure about now, but at least at some point in NNPDF the
from nnusf.
Even more: since boundary conditions are data, but possibly even pseudodata yadism generated, we can exploit MC replicas to get a covmat even for them.
I thought that was how we were going to enforce the boundary conditions, with pseudodata as there we can provide predictions on any (x,Q) grid of our choice (I was indeed thinking exploiting MC replicas to get a covmat). What data for the BC are you referring to?
Definitely, but this we can even decide to hard-code (I'm not sure about now, but at least at some point in NNPDF the
$NN(1)$ was subtracted from $NN(x)$).
That was indeed how I would enforce that constraint in practice ;)
from nnusf.
Positivity
- check if
$F_3^{total}$ is supposed to be positive or not - for positive SF, they have to be positive at all
$Q^2$ , thus impose a trivial Lagrange multiplier
Perturbative regime
- every time
yadism
is run to generate points, check consistency with the overlapping part on existing datasets, and truncate them from the actual data used in the fit (since they are replaced byyadism
) - use nuclear PDFs when relevant
Covariance matrix
- we agreed to generate a covariance matrix in any case: it's easier to extend with actual correlated dataset, or if correlations are provided at some later stage for existing datasets
from nnusf.
Related Issues (20)
- Collect various analyses plots HOT 9
- Some improvements we may want to make to the code HOT 1
- Fix coefficients for some cross sections HOT 6
- Add A=1 boundary conditions HOT 3
- Add option for log frequency of chi2 history to runcard
- Matching for high-Q2 and A=1 does not properly work
- Potential issue with (quoted) Validation chi2 for CDHSW_F2, CHORUS_F2, NUTEV_F2 HOT 3
- Add the possibility to include a Docker container
- Quote experimental chi2 of real data in report summary
- Fix github workflows
- Improve predictions in the small-x extrapolation region HOT 1
- Add theory covmat to Yadism data
- Address potential overfitting wrt matching data HOT 8
- Implement pdf+th error for yadism grids HOT 8
- Re-compute Yadism theory with FFNS5 @ NLO
- Add module that corrects isoscalarity for a given PDF set HOT 1
- Tests to be carried out for the paper once final fit is ready
- Make the Code public
- PyPI package is broken
- Computation of GLS sum rules broke due to changes in EKO HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nnusf.