Skip to content

Releases: pymc-devs/pymc

v5.0.2

19 Jan 17:42
Compare
Choose a tag to compare

What's Changed

Major Changes 🛠

New Features 🎉

  • Infer logprob of absolute operations and fix logprob of powers with negative values by @LukeLB in #6414

Bugfixes 🪲

  • Revert "Add informative error if user tries to use Aesara function with PyTensor variables by @ricardoV94 in #6440
  • Fix bug that does not correctly set the dtype of determinsitic variab… by @jessegrabowski in #6425

Maintenance 🔧

New Contributors

Full Changelog: v5.0.1...v5.0.2

v5.0.1

21 Dec 09:52
982e4c4
Compare
Choose a tag to compare

What's Changed

New Features 🎉

Bugfixes 🐛

  • Update PyTensor dependency and fix bugs in inferred mixture logprob by @ricardoV94 in #6397

Maintenance 🔧

New Contributors

Full Changelog: v5.0.0...v5.0.1

v5.0.0

12 Dec 19:42
f96594b
Compare
Choose a tag to compare

What's Changed

In this major release we are switching our graph computation backend from Aesara to PyTensor, which is a fork of Aesara under PyMC governance.
Read the full announcement here: PyMC is Forking Aesara to PyTensor.

The switch itself should be rather seamless and you can probably just update your imports:

import aesara.tensor as at       # old (pymc >=4,< 5)
import pytensor.tensor as pt     # new (pymc >=5)

If you encounter problems updating please check the latest Discussions and don't hesitate to get in touch.

Major Changes 🛠

  • ⚠ Switched the graph backend from Aesara to PyTensor
  • Merged AePPL into a new logprob submodule. Dispatch methods can be found in logprob.abstract
  • ⚠ The log_likelihood, needed for arviz.compare is no longer computed by default. It can be added with idata = pm.compute_log_likelihood(idata) or using pm.sample(idata_kwargs=dict(log_likelihood=True)) by @ricardoV94 in #6374
  • Changed Minibatch API by @ferrine in #6304
  • Fix ordering transformation for batched dimensions, and deprecate in favor of univariate_ordered and multivariate_ordered by @TimOliverMaier in #6255 and @ricardoV94 in #6375

New Features & Bugfixes 🎉

  • Support logp derivation in DensityDist when random function returns a PyTensor variable by @ricardoV94 in #6361
  • Added alternative parametrization for AsymmetricLaplace by @aloctavodia in #6337

Docs & Maintenance 🔧

New Contributors

Full Changelog: v4.4.0...v5.0.0

v4.4.0

19 Nov 21:05
cb37afa
Compare
Choose a tag to compare

What's Changed

Major Changes 🛠

  • Removed support for selectively tracking variables via pm.sample(trace=[...]). by @michaelosthege in #6269
  • Do not rely on tag information for rv and logp conversions by @ricardoV94 in #6281. This includes:
    • Deprecated accessing any of [value_variable|observations|transform|total_size] via var.tag in favor of model.rvs_to_[values|transforms|total_sizes]
    • Deprecated joint_logp in favor of model.logp
    • Deprecated aesaraf.rvs_to_value_vars in favor of model.replace_rvs_by_values
  • Using keyword seed for initial point no longer supported by @wd60622 in #6291
  • Sampling of transformed variables from prior_predictive is no longer allowed by @ricardoV94 in #6309
  • Require all step methods to return stats by @michaelosthege in #6313. This includes
    • Require all step methods to return stats from their step/astep method.
    • The BlockedStep.generates_stats attribute was removed.

New Features & Bugfixes 🎉

Docs & Maintenance 🔧

New Contributors

Full Changelog: v4.3.0...v4.4.0

v4.3.0

31 Oct 09:04
ea721e4
Compare
Choose a tag to compare

What's Changed

Major Changes 🛠

New Features & Bugfixes 🎉

  • Refactor EulerMaruyama to work in v4 by @junpenglao in #6227
  • Fix bug in get_vars_in_point_list when model does not have variables that exist in the trace by @lucianopaz in #6203

Docs & Maintenance 🔧

  • Speed up posterior predictive sampling by @OriolAbril in #6208
  • Add option to include transformed variables in InferenceData by @dfm in #6232
  • Set start method to "fork" for MacOs ARM devices by @bchen93 in #6218
  • Deprecate sample_posterior_predictive_w by @zaxtax in #6254
  • Fix latex repr of symbolic distributions by @mattiadg in #6231
  • Some doc fixes by @OriolAbril in #6200
  • Modify logo_link to work with new sphinx schema by @hdnl in #6209
  • Fix docstring of the ZeroInflatedPoisson distribution by @cscheffler in #6213
  • Fix debug_print of wrong variable in notebook by @ricardoV94 in #6225
  • Fix flaky TestMixture.test_component_choice_random by @bherwerth in #6222
  • Seed flaky test TestSamplePPC.test_normal_scalar by @mattiadg in #6220
  • Fix flaky TestTruncation.truncation_discrete_random by @mattiadg in #6229
  • Seed pm.sample in BaseSampler(SeededTest) to make deriving test classes deterministic by @mattiadg in #6251

New Contributors

Full Changelog: v4.2.2...v4.3.0

v4.2.2

10 Oct 19:32
Compare
Choose a tag to compare

What's Changed

New Features & Bugfixes 🎉

Docs & Maintenance 🔧

New Contributors

Full Changelog: v4.2.1...v4.2.2

v4.2.1

30 Sep 13:53
Compare
Choose a tag to compare

What's Changed

New Features & Bugfixes 🎉

  • Check shared variable values to determine volatility in posterior predictive sampling by @lucianopaz in #6147
  • Log name of variables that are sampled in predictive sampling functions by @ricardoV94 in #6142
  • Fix DiscreteUniformRV dropping degenerate dimension by @ricardoV94 in #6151
  • Fix shape bug when creating a truncated normal via Truncated by @ricardoV94 in #6165

Docs & Maintenance 🔧

  • Repair the plot of Interpolated and add an example for Deterministic by @Armavica in #6126
  • Add constant_fold helper by @ricardoV94 in #6160
  • Use sigma instead of noise in GP functions 6094 by @wd60622 in #6145
  • Replace multinomial sampling with systematic sampling in sample_smc by @aloctavodia in #6162
  • Assume default_output is the only measurable output in SymbolicRandomVariables by @ricardoV94 in #6161

New Contributors

Full Changelog: v4.2.0...v4.2.1

v4.2.0

19 Sep 08:54
Compare
Choose a tag to compare

What's Changed

Major Changes 🛠

  • Allow broadcasting via observed and dims by @ricardoV94 in #6063
  • Remove support for specifying "dims on the fly" from the shapes of variables by @ricardoV94 in #6112
  • Automatic versioning with versioneer by @cfonnesbeck in #6078

New Features & Bugfixes 🎉

Docs & Maintenance 🔧

New Contributors

Full Changelog: v4.1.7...v4.2.0

v4.1.7

26 Aug 06:51
Compare
Choose a tag to compare

What's Changed

Docs & Maintenance 🔧

  • Remove note that probs are automatically rescaled by @Armavica in #6066
  • update the default value of jitter to JITTER_DEFAULT by @danhphan in #6055

Full Changelog: v4.1.6...v4.1.7

v4.1.6

25 Aug 10:36
Compare
Choose a tag to compare

What's Changed

Docs & Maintenance 🔧

  • adding markdown cell for Watermark by @reshamas in #6051
  • DOC Adding "Git Bash command" to install virtual enviroment by @vitaliset in #6056
  • Fix JAX sampling funcs overwriting existing var's dims and coords by @jhrcook in #6041
  • Remove unused IS_FLOAT32 and IS_WINDOWS from test_ode by @maresb in #6057
  • Add missing file test_printing.py to github runner by @Armavica in #6058
  • Convert pip-installed dev dependencies to Conda by @maresb in #6060
  • Upgrade to aesara=2.8.2 and aeppl=0.0.35 by @Armavica in #6059

New Contributors

Full Changelog: v4.1.5...v4.1.6