Thanks again @ricardoV94
Removing all the Deterministic calls does not seem to have made a big improvement but it’s a good thing to do regardless.
3 other questions since I’m still puzzled why NUTS says ~15 hours time remaining after running for ~10 min vs. the Slice+Metropolis version saying ~4-6 hours time remaining after running for ~10 min:
-
does pdfs_2d need to be a pytensor variable? It’s currently a fixed numpy array of shape ((400,1000000)) but I could wrap it ahead of the with context via
pdfs_2d = pt.as_tensor_variable(pdfs_2d). Would that speed up pt.tensordot? -
Similarly, in the
z_obs = pm.Poisson(...)likelihood call, should poisson_hist2d also be a pytensor variable? It’s currently a 20x20 2D numpy array. Would that help speed up sampling / calculations? -
Even though NUTS initially says many more hours remaining compared to Slice+Metropolis, do we expect NUTS to speed up later on as it navigates the landscape faster via gradient descent?