Hi,

I am new to PyMC3 and trying to check my understanding of logp in the context of Lognormal distribution.

sg_sg_prior = 3

sg_hat = 10

with Model() as model_chk:

sg_chk = Lognormal(‘sg_chk’, mu=0, sigma=sg_sg_prior)

print(model_chk.logp({‘sg_chk_log__’: np.log(sg_hat)})) # -2.3121007168993604

print(lognorm.logpdf(sg_hat, sg_sg_prior)) # -4.614685809893406

If I use non-transformed version:

with Model() as model_chk_no_transf:

sg_chk = Lognormal(‘sg_chk’, mu=0, sigma=sg_sg_prior, transform=None)

print(model_chk_no_transf.logp({‘sg_chk’: sg_hat})) # -4.614685809893406

print(lognorm.logpdf(sg_hat, sg_sg_prior)) # -4.614685809893406

I can match the output. What am I missing? Any help would be super helpful!

Thank you very much