pytensor
pytensor copied to clipboard
PyTensor allows you to define, optimize, and efficiently evaluate mathematical expressions involving multi-dimensional arrays.
### Description When we find an RV that's not implemented we should fallback to object mode instead of failing like we do now
### Description ``` import pytensor import pytensor.tensor as pt x = pt.tensor("x", shape=(None, None)) y = x.dimshuffle("x", "x") pytensor.function([x], y).dprint() # DeepCopyOp [id A] 1 # └─ DimShuffle{order=[x,x]} [id B]...
This was useful to figure out #1233 Probably can be improved, so take it as a sandbox to be expanded in the future. ---- 📚 Documentation preview 📚: https://pytensor--1234.org.readthedocs.build/en/1234/
### Description Hi I knew using pytensor I had a code that was implemented using the old version of pytensor but now `pytensor.tensor.nnet` and `pytensor.tensor.signal` does not exits anymore I...
## Description ## Related Issue - [ ] Closes # - [ ] Related to # ## Checklist - [ ] Checked that [the pre-commit linting/style checks pass](https://docs.pymc.io/en/latest/contributing/python_style.html) - [...
### Description Right now we assume the inputs to `solve_triangular` are always consistent with the settings passed to the function. For example, if one sets `lower`, we assume that the...
### Description This one is taking over 40 minutes already, making it the longest job in the CI: https://github.com/pymc-devs/pytensor/actions/runs/4172705299/jobs/7224173170 Can we run it only in release?
See commit message for list of changes. The changes are based on feedback from helping other devs and users Tagging @OriolAbril because I'm 100% sure I messed up some sphinx...
Seeing about a 3.5x, (2x for larger x) time speedup for this trivial case: ```python from pytensor.gradient import jacobian from pytensor import function import pytensor.tensor as pt x = pt.vector("x",...
### Description ```python from pytensor.gradient import jacobian import pytensor.tensor as pt x = pt.vector("x", shape=(3,)) y = pt.outer(x[1:], x[2:]) assert y.type.shape == (2, 1) try: jacobian(y, x) except Exception as...