-
-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Restore pre-4625 way how the size
kwarg works
#4662
Comments
michaelosthege
added a commit
to michaelosthege/pymc
that referenced
this issue
Apr 24, 2021
Corresponding tests were reverted, or edited to use other parametrization flavors. The Ellipsis feature now works with all three dimensionality kwargs. Closes pymc-devs#4662
michaelosthege
added a commit
to michaelosthege/pymc
that referenced
this issue
Apr 24, 2021
Corresponding tests were reverted, or edited to use other parametrization flavors. The Ellipsis feature now works with all three dimensionality kwargs. The MultinomialRV implementation was removed, because the broadcasting behavior was implemented in Aesara. Closes pymc-devs#4662
michaelosthege
added a commit
to michaelosthege/pymc
that referenced
this issue
Apr 25, 2021
Corresponding tests were reverted, or edited to use other parametrization flavors. The Ellipsis feature now works with all three dimensionality kwargs. The MultinomialRV implementation was removed, because the broadcasting behavior was implemented in Aesara. Closes pymc-devs#4662
|
twiecki
pushed a commit
that referenced
this issue
May 14, 2021
Corresponding tests were reverted, or edited to use other parametrization flavors. The Ellipsis feature now works with all three dimensionality kwargs. The MultinomialRV implementation was removed, because the broadcasting behavior was implemented in Aesara. Closes #4662
Closed
Closed by #4693 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Due to a (big) misunderstanding, my #4625 PR broke the way how
size
parametrization works inv4
.The misunderstanding was specifically about the notion of implied dimensions and what it means for univariate vs. multivariate RVs:
⚠ The pre-#4625 notion was that
size
is in addition to the support dimensions.⚠ The post-#4625 notion was that
size
is in addition to what's implied by parameters other thansize
/shape
/dims
.The difference is subtle and maybe best explained with the following example:
With the changes from #4625 the outcome from specifying
shape=(1,2,3, ...)
andsize=(1,2,3)
is identical.After some discussion about the advantages/disadvantages of either API flavor, we decided to go back to the pre-4625 flavor where
size
is essentiallyshape
but without support dimensions.This is also the way how numpy handles dimensionality of multivariate distributions:
The flexibility added by #4625, namely the ability to not specify dimensions that are implied from RV support or parameters, will continue to work through the
shape
with Ellipsis API:The text was updated successfully, but these errors were encountered: