pytensor icon indicating copy to clipboard operation
pytensor copied to clipboard

PyTensor allows you to define, optimize, and efficiently evaluate mathematical expressions involving multi-dimensional arrays.

Results 395 pytensor issues
Sort by recently updated
recently updated
newest added

### Description fft convolution is actually faster than direct convolution for large inputs. Scipy uses it for n>500 [citation needed]. But even if our inputs are not large, we may...

gradients
graph rewriting
convolution

I added an option `print_inner_graphs` to print inner graphs in the debugprint function. ## Description A boolean argument `print_inner_graphs` is provided to the debugprint function, which defaults to True. In...

Refactored `infer_shape` method of `Ops` to find output shapes using `gufunc_signature` using a newly defined function `_gufunc_to_out_shape`. ## Description `Ops` have a method `infer_shape` which helps to find the shapes...

### Description Seems more powerful and well maintained https://asv.readthedocs.io/en/latest/using.html

help wanted
tests
performance

## Description ## Related Issue - [ ] Closes # - [ ] Related to #1265 ## Checklist - [x] Checked that [the pre-commit linting/style checks pass](https://docs.pymc.io/en/latest/contributing/python_style.html) - [ ]...

## Description The `Constant` class has a getter method `value` which just returns `data`. This PR removes this getter method since it is redundant. ## Related Issue - [ ]...

### Description Several linalg methods like `SVD` and `QR` allow to only request a subset of the outputs. If we have multiple of these with the same input and different...

graph rewriting
Op implementation

### Description Unless this is some lapack constraint? int64 is the default dtype for numpy arrays, downcasting to int32 could lead to surprising errors when working with huge arrays? https://github.com/pymc-devs/pytensor/blob/a149f6c996bd0499406150853bef517e7d7a3c4f/pytensor/link/numba/dispatch/slinalg.py#L125

numba
linalg

### Description Currently, pytensor is converting the random `Generator` objects using [`jax_typify`](https://github.com/pymc-devs/pytensor/blob/main/pytensor/link/jax/dispatch/random.py#L57-L79). The `random_state` is treated as a simple array of uint32s, which is fine for the old `jax.random.PRNGKey` class....

### Description This is much faster, and even more in PyMC models that are usually parametrized with a direct prior on the cholesky. ```python import pytensor import pytensor.tensor as pt...

Op implementation
random variables