Bump minimum numpyro to >=0.21.0 and remove epsilon padding for zero-mean Poisson/NegBinomial#806
Conversation
…inom means Agent-Logs-Url: https://github.com/CDCgov/PyRenew/sessions/e3b47174-bb21-451e-ae53-e2cc86e16c62 Co-authored-by: dylanhmorris <8032117+dylanhmorris@users.noreply.github.com>
|
@cdc-mitzimorris and/or @damonbayer I think this can be merged pending your review. |
|
Thank you for your contribution @damonbayer 🚀! Your github-pages is ready for download 👉 here 👈! |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #806 +/- ##
==========================================
- Coverage 98.49% 98.49% -0.01%
==========================================
Files 51 51
Lines 1866 1863 -3
==========================================
- Hits 1838 1835 -3
Misses 28 28
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@copilot update uv.lock. |
Agent-Logs-Url: https://github.com/CDCgov/PyRenew/sessions/71113a48-a462-4eb4-a218-268e56df0dcd Co-authored-by: dylanhmorris <8032117+dylanhmorris@users.noreply.github.com>
Done — updated
Done — updated Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
I just bumped everything in uv lock while we're here, so we can close a bunch of other PRs. |
NumPyro >=0.21.0 natively supports zero-mean Poisson and Negative Binomial distributions, eliminating the need for the
1e-10epsilon workaround previously required to avoid numerical instability.Changes
pyproject.toml: Bumpsnumpyro>=0.19.0→numpyro>=0.21.0pyrenew/observation/noise.py: Removes_EPSILON = 1e-10constant;PoissonNoiseandNegativeBinomialNoisenow passpredicteddirectly to their distributionspyrenew/observation/negativebinomial.py: Removesepsparameter fromNegativeBinomialObservation.__init__;samplepassesmudirectlypyrenew/datasets/datagen_he_CA_126.py: Removesmu = np.maximum(mu, 1e-10)clamp insample_negbinom; updates docstring to reflect non-negative (rather than strictly positive)muBefore:
After:
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
astral.sh/usr/bin/curl curl -LsSf REDACTED(dns block)If you need me to access, download, or install something from one of these locations, you can either: