From 32d7a789832a36c7697c691f617918d0aa92ad4e Mon Sep 17 00:00:00 2001 From: amyoshino Date: Sat, 8 Jul 2023 20:41:05 -0400 Subject: [PATCH 1/5] Fix mathematical notation in conditional_logprob docstrings --- pymc/logprob/basic.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pymc/logprob/basic.py b/pymc/logprob/basic.py index 7b14d10ac6..5144d51fe4 100644 --- a/pymc/logprob/basic.py +++ b/pymc/logprob/basic.py @@ -430,12 +430,12 @@ def conditional_logp( .. math:: - \Sigma^2 \sim& \operatorname{InvGamma}(0.5, 0.5) \\ - Y \sim& \operatorname{N}(0, \Sigma) + s^2 \sim& \operatorname{InvGamma}(0.5, 0.5) \\ + Y \sim& \operatorname{N}(0, s) If we create a value variable for ``Y_rv``, i.e. ``y_vv = pt.scalar("y")``, the graph of ``conditional_logp({Y_rv: y_vv})`` is equivalent to the - conditional log-probability :math:`\log p(Y = y \mid \Sigma^2)`, with a stochastic + conditional log-probability :math:`\log p_{Y \mid s^2}(y \mid s^2)`, with a stochastic ``sigma2_rv``. If we specify a value variable for ``sigma2_rv``, i.e. @@ -445,8 +445,8 @@ def conditional_logp( .. math:: - \log p(Y = y, \Sigma^2 = \sigma^2) = - \log p(Y = y \mid \Sigma^2 = \sigma^2) + \log p(\Sigma^2 = \sigma^2) + \log p_{Y,s^2}(y, \sigma^2) = + \log p_{Y \mid s^2}(y \mid \sigma^2) + \log p_{s^2}(\sigma^2) Parameters From 53b5351ea4d1a85c9870dbdbef366d3d42f71a82 Mon Sep 17 00:00:00 2001 From: "Adriano M. Yoshino" Date: Mon, 10 Jul 2023 21:02:39 -0400 Subject: [PATCH 2/5] Update pymc/logprob/basic.py Accepting change in s. It becomes sigma Co-authored-by: larryshamalama --- pymc/logprob/basic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pymc/logprob/basic.py b/pymc/logprob/basic.py index 5144d51fe4..0d06e48092 100644 --- a/pymc/logprob/basic.py +++ b/pymc/logprob/basic.py @@ -430,7 +430,7 @@ def conditional_logp( .. math:: - s^2 \sim& \operatorname{InvGamma}(0.5, 0.5) \\ + \sigma^2 \sim& \operatorname{InvGamma}(0.5, 0.5) \\ Y \sim& \operatorname{N}(0, s) If we create a value variable for ``Y_rv``, i.e. ``y_vv = pt.scalar("y")``, From 44b3d2b428cb78c48834d22c21d10b184d90a0df Mon Sep 17 00:00:00 2001 From: "Adriano M. Yoshino" Date: Mon, 10 Jul 2023 21:02:59 -0400 Subject: [PATCH 3/5] Update pymc/logprob/basic.py Accepting change in s. It becomes sigma part 2 Co-authored-by: larryshamalama --- pymc/logprob/basic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pymc/logprob/basic.py b/pymc/logprob/basic.py index 0d06e48092..7f4116e843 100644 --- a/pymc/logprob/basic.py +++ b/pymc/logprob/basic.py @@ -431,7 +431,7 @@ def conditional_logp( .. math:: \sigma^2 \sim& \operatorname{InvGamma}(0.5, 0.5) \\ - Y \sim& \operatorname{N}(0, s) + Y \sim& \operatorname{N}(0, \sigma^2) If we create a value variable for ``Y_rv``, i.e. ``y_vv = pt.scalar("y")``, the graph of ``conditional_logp({Y_rv: y_vv})`` is equivalent to the From 7c0dc2f6e9e724fcbc7733cea43127a654232ca1 Mon Sep 17 00:00:00 2001 From: "Adriano M. Yoshino" Date: Mon, 10 Jul 2023 21:05:06 -0400 Subject: [PATCH 4/5] Apply suggestions from code review Co-authored-by: larryshamalama --- pymc/logprob/basic.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pymc/logprob/basic.py b/pymc/logprob/basic.py index 7f4116e843..1aa9f67d60 100644 --- a/pymc/logprob/basic.py +++ b/pymc/logprob/basic.py @@ -435,7 +435,7 @@ def conditional_logp( If we create a value variable for ``Y_rv``, i.e. ``y_vv = pt.scalar("y")``, the graph of ``conditional_logp({Y_rv: y_vv})`` is equivalent to the - conditional log-probability :math:`\log p_{Y \mid s^2}(y \mid s^2)`, with a stochastic + conditional log-probability :math:`\log p_{Y \mid \sigma^2}(y \mid s^2)`, with a stochastic ``sigma2_rv``. If we specify a value variable for ``sigma2_rv``, i.e. @@ -445,8 +445,8 @@ def conditional_logp( .. math:: - \log p_{Y,s^2}(y, \sigma^2) = - \log p_{Y \mid s^2}(y \mid \sigma^2) + \log p_{s^2}(\sigma^2) + \log p_{Y, \sigma^2}(y, s^2) = + \log p_{Y \mid \sigma^2}(y \mid s^2) + \log p_{\sigma^2}(s^2) Parameters From c44a5d2f6f6b17ce28081664840fb8ee9d40d696 Mon Sep 17 00:00:00 2001 From: amyoshino Date: Mon, 10 Jul 2023 21:46:20 -0400 Subject: [PATCH 5/5] s_vv to s2_vv --- pymc/logprob/basic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pymc/logprob/basic.py b/pymc/logprob/basic.py index 1aa9f67d60..64bd17a18c 100644 --- a/pymc/logprob/basic.py +++ b/pymc/logprob/basic.py @@ -439,7 +439,7 @@ def conditional_logp( ``sigma2_rv``. If we specify a value variable for ``sigma2_rv``, i.e. - ``s_vv = pt.scalar("s2")``, then ``conditional_logp({Y_rv: y_vv, sigma2_rv: s_vv})`` + ``s2_vv = pt.scalar("s2")``, then ``conditional_logp({Y_rv: y_vv, sigma2_rv: s2_vv})`` yields the conditional log-probabilities of the two variables. The sum of the two terms gives their joint log-probability.