This is project I did for UC Berkeley's AY250: Python for Data Science Course.
See the Jupyter notebook called 'PyMC3_Multiple_Computational_Backends.ipynb'. In it, I outline the places in PyMC3 that rely on Theano and how I changed the code minimally to allow the same functionality to be performed by TensorFlow.