Help understanding why sampling fails in Zero-Inflated Gamma likelihood model

Yes, you can create pm.Deterministic to save the mu and sd:

mu = pm.Deterministic('mu', alpha/beta)
sd = pm.Deterministic('sd', alpha/beta**2)

You can try to monitor the parameters during the approximation (http://docs.pymc.io/notebooks/variational_api_quickstart.html#Tracking-parameters), and check when there is a problem.