I am trying to understand the usage of lopg and write the lopg myself. There seems to be no specific formula of lopg in the document. As far as I am concerned, the logp seems to be the log of probability density function. Is that true? I’ve done a test to verify my understanding of the logp.
For norm distribution, the logp can be
pm.Normal.dist().logp()
but I want to write the specific formula myself like this:
def logp(value):
return tt.sum(-(value-muc[Siteid])**2/2/sigmac**2)
with pm.Model()…
c=pm.DensityDist('c',logp,observed={'value':FS})
Its result should be the same as that of
c = pm.Normal('c',mu=muc[Siteid],sd=sigmac, observed=FS)
So, take the norm distribution for example, what the logp should be?
Thanks a lot.