Releases: pymc-devs/pytensor
Releases · pymc-devs/pytensor
rel-2.26.0
What's Changed
Major Changes 🛠
- Dimshuffle does not need input broadcastable info by @ricardoV94 in #979
- Reduce overhead of function call and deprecate rarely used utilities by @ricardoV94 in #1024
New Features 🎉
- Merge consecutive reduces by @ricardoV94 in #888
- Added rewrites involving block diagonal matrices by @tanish1729 in #967
- Adding rewrites involving kronecker product by @tanish1729 in #975
- Adds functions to rewrite cholesky decomposition of identity and diagonal matrices by @tanish1729 in #925
- Implement Cast in PyTorch backend by @ricardoV94 in #1023
- Implement destructive in-place rewrites for Cholesky and Solve Ops by @ricardoV94 in #1028
- Added Support for Median by @Dhruvanshu-Joshi in #907
- Add Pytorch implementation of Blockwise by @Ch0ronomato in #988
Bugfixes 🐛
- Make blockwise perform method node dependent by @ricardoV94 in #1048
- Fix bug from too strict type check in
_sum_grad_over_bcasted_dimsby @ricardoV94 in #1036 - Fix downcasting bug in
local_[mul|div]_switch_sinkrewrite by @ricardoV94 in #1059 - Fix bugs in
local_useless_sliceandlocal_reduce_joinrewrites by @ricardoV94 in #1057
Documentation 📖
- Small improvements to docs API by @ricardoV94 in #817
Maintenance 🔧
- Canonicalize Subtensor slices by @Dhruvanshu-Joshi in #761
- Remove rarely used shape utilities by @ricardoV94 in #1016
- Simplify logic with
variadic_addandvariadic_mulhelpers by @ricardoV94 in #932 - Remove
_asarrayby @ricardoV94 in #1025 - Direct tests for dispatch implementations in alternative backends by @ricardoV94 in #1021
- Cleanup for Optimal Control Ops by @jessegrabowski in #1045
- Raise NotImplementedError for boolean scalar indexing by @ricardoV94 in #1063
- Add Accelerate framework
blas__ldflagstests by @lucianopaz in #1056
Full Changelog: rel-2.25.5...rel-2.26.0
rel-2.25.5
What's Changed
New Features 🎉
- Add rewrites for inv(diag(x)) and inv(eye) by @tanish1729 in #898
- Implement indexing operations in PyTorch by @HarshvirSandhu in #910
- Implement OpFromGraph in PyTorch backend by @Ch0ronomato in #956
- Add torch implementation of IfElse by @Ch0ronomato in #974
Bugfixes 🐛
Maintenance 🔧
- Do not use deprecated
find_executableby @ricardoV94 in #1000 - Remove error check in ConfigParser by @ricardoV94 in #1009
New Contributors
Full Changelog: rel-2.25.4...rel-2.25.5
rel-2.25.4
What's Changed
Bugfixes 🐛
- Fix bug due to
__props__in OpFromGraph subclasses by @ricardoV94 in #981
Full Changelog: rel-2.25.3...rel-2.25.4
rel-2.25.3
What's Changed
New Features 🎉
- Add
einsumby @jessegrabowski in #722 - Implements shape Ops and MakeVector in PyTorch by @twaclaw in #926
- Implement Dot and BatchedDot in PyTensor by @HangenYuu in #878
- Implement
padby @jessegrabowski in #748 - Implement nlinalg Ops in PyTorch by @twaclaw in #920
- Added rewrite for matrix inv(inv(x)) -> x by @tanish1729 in #893
Documentation 📖
- Added new tutorial on PRNGs with RandomVariables by @HangenYuu in #928
- Fixed dead wiki links by @HangenYuu in #950
- Removed emphasis on dtypes in Introduction by @Krupakar-Reddy-S in #968
Maintenance 🔧
- Add
OpFromGraphwrapper aroundalloc_diagby @jessegrabowski in #915 - Remove more unused config options by @Armavica in #948
- Add building of pyodide universal wheels by @twiecki in #918
- Unpin scipy upper version by @ferrine in #972
- Speedup CAReduce C-implementation with loop reordering by @ricardoV94 in #971
New Contributors
- @Ch0ronomato made their first contribution in #941
- @abhishekshah5486 made their first contribution in #964
- @Krupakar-Reddy-S made their first contribution in #968
Full Changelog: rel-2.25.2...rel-2.25.3
rel-2.25.2
What's Changed
New Features 🎉
- Implemented Sort/Argsort Ops in PyTorch by @twaclaw in #897
- Implemented Repeat and Unique Ops in PyTorch by @twaclaw in #890
Bugfixes 🐛
Documentation 📖
New Contributors
Full Changelog: rel-2.25.1...rel-2.25.2
rel-2.25.1
rel-2.25.0
What's Changed
Major Changes 🛠
- Replace str "output" by a dummy Op in the clients of the FunctionGraph by @ricardoV94 in #790
Bugfixes 🐛
- Increase precision of betainc C implementation by @ricardoV94 in #908
Maintenance 🔧
- Remove unused config options by @Armavica in #806
- Improve string representation of Assert Ops by @Dhruvanshu-Joshi in #891
Full Changelog: rel-2.24.2...rel-2.25.0
rel-2.24.2
What's Changed
New Features 🎉
- Add betainc C implementation by @arthus701 in #798
- Support more cases of advanced indexing in Numba by @ricardoV94 in #818
- Add
nan_to_numhelper by @Dhruvanshu-Joshi in #796 - Implemented Eye Op in PyTorch by @twaclaw in #877
- Add helper to build hessian vector product by @ricardoV94 in #858
- Vectorize
make_vectorby @ricardoV94 in #889
Bugfixes 🐛
- Fix bug in vectorize of random variables with empty size by @ricardoV94 in #886
Documentation 📖
- Run doctest and fix old examples by @ricardoV94 in #865
Maintenance 🔧
- Fix JAX implementation of Argmax by @HangenYuu in #809
- Remove useless SpecifyShape by @ricardoV94 in #885
- Keep stack trace in random_make_inplace by @ricardoV94 in #735
New Contributors
- @arthus701 made their first contribution in #798
- @twaclaw made their first contribution in #877
Full Changelog: rel-2.24.1...rel-2.24.2
rel-2.24.1
✅ Now available on conda-forge after major outage conda-forge/status#181 ✅
What's Changed
New Features 🎉
- Pytorch support for Join and Careduce Ops by @HarshvirSandhu in #869
- Add docs on implementing Pytorch Ops (and CumOp) by @HarshvirSandhu in #837
Bugfixes 🐛
- Fix too restrictive type assert by @ricardoV94 in #880
Full Changelog: rel-2.24.0...rel-2.24.1
rel-2.24.0
What's Changed
Major Changes 🛠
- Add initial support for PyTorch backend by @HarshvirSandhu in #764
- Break MaxandArgmax Op to seperate TensorMax Op and Argmax Op by @Dhruvanshu-Joshi in #731
New Features 🎉
- Implement basic Alloc Ops in PyTorch by @ricardoV94 in #836
- Do not use Numba objmode for supported advanced indexing operations by @ricardoV94 in #805
- Improve static output shapes of Reshape and AdvancedSubtensor1 by @ricardoV94 in #834
- Add more specialized static output shape to Eye by @ricardoV94 in #841
- Update
tensor.whereto allow for case with only condition by @tanish1729 in #844 - Implement JAX dispatch for Argsort and add
stableargument to sorting functions by @ricardoV94 in #848 - Add rewrite to merge multiple SVD Ops with different settings by @HangenYuu in #769
- Implemented JAX backend for Eigvalsh by @HangenYuu in #867
- PyTorch Softmax Ops by @HAKSOAT in #846
- Rewrite determinant of diagonal matrix as product of diagonal by @tanish1729 in #797
Bugfixes 🐛
- Fix numba implementation of cholesky not setting off-diag entries to zero by @aseyboldt in #816
- Replace RNG update in RV lift rewrites by @ricardoV94 in #870
Maintenance 🔧
- Fix E721: do not compare types, for exact checks use is / is not by @maresb in #596
- Minor: Fix dependencies by @maresb in #813
- Add jax dispatch for
KroneckerProductOpby @jessegrabowski in #822 - Fix typing in subtensor module by @michaelosthege in #823
- Upper pin scipy temporarily by @ricardoV94 in #863
- Remove conservative checks for supported Subtensors operations in JAX by @ricardoV94 in #849
- Check for square matrix in make_node to Det by @tanish1729 in #861
- Add dprint shortcut to FunctionGraph and Function by @ricardoV94 in #779
New Contributors
Full Changelog: rel-2.23.0...rel-2.24.0