My first publication with PyMC3

I just wanted to share that my first publication using PyMC3 was accepted:

This is a rather competitive empirical research field focused in calculating the amount of helium the universe was created with. Thanks to PyMC3 we proposed a model which can perform a chemical analysis of star-forming galaxies with better accuracy than the traditional approach but in just a couple of minutes :heart_eyes:.

This achievement could not have been possible without the work and generosity from the PyMC developers. Thank you very much!

I will be expanding and sharing the model in the near future. The biggest issue in using PyMC3 compared to pymc2 has been the complexity in interpolating data grids as a function of the model parameters (which is essential in this field). Fortunately, Foreman-Mackey has done a lot of work implementing this functionality in exoplanet and the future is very bright.

Thanks again!


This sounds pretty interesting. At any rate, congratulations indeed!

Could you elaborate more on the interpolating data grids? That sounds fascinating, but I have no idea what it means.

Congratulations! Nice work.

Thank you very much!!!


Thank you @Gon_F very much for your interest: For example in this work we want to model the flux (number of photons) from excited electrons transitions in regions where stars are being born. This gives us un estimation on the number of ions from each element and hence the chemical composition.

The emissivity values from these ions comes from experiments on earth as a function of the temperature and density. There are parametrisations for these emissivities but you loose precision in the calculation. The common practice is interpolating the 2D grids from the temperature and density measured in the grids. In my code I would like to interpolate these grids according to the temperature and density drawn at each iteration. Aftewards I use these interpolated values in the theoretical model which pymc3 will compare against the true values.

From what I have learned from symbolic programming this is not a feature easy to implement (this is a stackoverflow question on the topic for tensorflow). Currently, I am trying to implemente the exoplanet interpolations by Foreman-Mackey which I think it will solve my issue :heart_eyes: .

P.S. I am very sorry for the delay… I forgot to click reply…


Thank you!!

No problem on the slightly late reply, you must be at least somewhat busy ^^.

So, I understand the 2D grid now as the as the combination of temperature and density producing certain levels of emmisivity (the z-axis), and the grid needs to be interpolated at its missing points because not every combination of the two variables have been experimentally tested on Earth yet. However, now I am a bit confused again. So the standard practice is to use simple interpolation to fill in the grid, and I can imagine that is a bit naive, but how does Bayesian sampling overcome a naive interpolating process in this case?

I am reading your paper, and I sincerely will say it reads clearly and it is organized well, but it is still a bit out of my depth :sweat_smile: .

Exoplanet is a well-made package, I hope it works for you as well.