Parameters are tf.Variables while data is not but feed in as constant tensors (or converted to them). RooFit allows to interchange them (think of a gaussian, mu or x can be interchanged, not in TF). Asked Rafa about it, he cannot think of a use-case where interchangeability could be useful. You have something in mind?
Yes, I agree! But it's a difference to RooFit, so just document it. If no one cares, even better. One use case, that implicitly won't work with that, is that we can't integrate over a parameter.
Well, we can always define a different function with parameter a as dimension and explicit dependence. So instead of f(x; a, b) just f(x, a; b) -> integrate over a -> f(x; b). This should work out.
Not sure if I understood the issue in here. I think from the point of view of our current fits, unless I'm missing something, I don't see the use case. In principle people may want to have it, but from my side I wouldn't put this as top priority....
@mayou36 commented on Tue Oct 02 2018
Documentation of limitations
@apuignav commented on Tue Oct 02 2018
Mmm, I am not sure I follow this... What's the idea of this limitation?
@mayou36 commented on Tue Oct 02 2018
Parameters are
tf.Variables
while data is not but feed in as constant tensors (or converted to them). RooFit allows to interchange them (think of a gaussian, mu or x can be interchanged, not in TF). Asked Rafa about it, he cannot think of a use-case where interchangeability could be useful. You have something in mind?@apuignav commented on Tue Oct 02 2018
Ah ok! Sure! However, I wouldn't say this is a limitation, it's almost by construction of a likelihood function, isn't it?
@mayou36 commented on Tue Oct 02 2018
Yes, I agree! But it's a difference to RooFit, so just document it. If no one cares, even better. One use case, that implicitly won't work with that, is that we can't integrate over a parameter.
@apuignav commented on Tue Oct 02 2018
Mmm, that seems bad... @rsilvaco?
@mayou36 commented on Tue Oct 02 2018
Well, we can always define a different function with parameter a as dimension and explicit dependence. So instead of f(x; a, b) just f(x, a; b) -> integrate over a -> f(x; b). This should work out.
@rsilvaco commented on Tue Oct 02 2018
Not sure if I understood the issue in here. I think from the point of view of our current fits, unless I'm missing something, I don't see the use case. In principle people may want to have it, but from my side I wouldn't put this as top priority....
@rsilvaco commented on Tue Oct 02 2018
Yes @mayou36, is probably not strictly the same as RooFit does, but this should naively work ..
@apuignav commented on Tue Oct 02 2018
Fine, we'll accept requests afterwards :-)