aesara
aesara copied to clipboard
Aesara is a Python library for defining, optimizing, and efficiently evaluating mathematical expressions involving multi-dimensional arrays.
Evaluating etuplized objects fails for some `RandomVariable` ops whose `__call__` function does not defer to `make_node`. In this commit we wrap Ops during etuplization with a class that always defers...
I went deeper into the code and removed overcomplicated caching for compiled modules. This enabled compilation threadsafety feature that was assumed by the old implementation (but had bugs). ## Prior...
For background see #980. This is currently incomplete since the scripts need to be adapted to be Windows-compatible. I don't plan to complete this, so this is for reference in...
Some of the optimizations in `aesara.sandbox.linalg.ops` could be added as default optimizations (e.g. `inv_as_solve`). These optimizations might need more/better tests before we do that, though. These optimizations have been changed...
In #980 it was determined that CI tests should be run for Windows.
`eval_if_etuple` does not work when naively evaluating etuplized random variables. Let us consider the following model: ```python import aesara.tensor as at from etuples import etuple, etuplize srng = at.random.RandomStream(0) Y_rv...
Zenodo initially autogenerated the metadata from the full history. Without having strong opinions about it we decided to reduce that list to the contributors since the last Theano release (...
When `debugprint` prints inner-graph having nodes with multiple outputs, it prints a copy of same inner-graph for each output. This make `debugprint`'s output obnoxious when the inner-graphs are large and/or...
Looking at the codebase, it doesn't seem like we use the `mkl-service` package for anything other than two `mkl.get_version_string()` calls. If there's another way to get the version string, or...
We can improve the display of `debugprint` by using the │,└, ─, ├, and possibly ┬ characters instead.