Aesara is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently. Aesara features:
- Tight integration with NumPy – Use
numpy.ndarrayin Aesara-compiled functions.
- Efficient symbolic differentiation – Aesara does your derivatives for functions with one or many inputs.
- Speed and stability optimizations – Get the right answer for
xis really tiny.
- Dynamic C/JAX/Numba code generation – Evaluate expressions faster.
Aesara is based on Theano, which has been powering large-scale computationally intensive scientific investigations since 2007.
Much of the documentation hasn’t been updated and is simply the old Theano documentation.
Aesara is available on PyPI, and can be installed via
pip install Aesara.
Those interested in bleeding-edge features should obtain the latest development version, available via:
git clone git://github.com/aesara-devs/aesara.git
You can then place the checkout directory on your
$PYTHONPATH or use
python setup.py develop to install a
.pth into your
directory, so that when you pull updates via Git, they will be
automatically reflected the “installed” version. For more information about
installation and configuration, see installing Aesara.
Roughly in order of what you’ll want to check out:
- Installing Aesara – How to install Aesara.
- Aesara at a Glance – What is Aesara?
- Tutorial – Learn the basics.
- Troubleshooting – Tips and tricks for common debugging.
- API Documentation – Aesara’s functionality, module by module.
- Frequently Asked Questions – A set of commonly asked questions.
- Optimizations – Guide to Aesara’s graph optimizations.
- Extending Aesara – Learn to add a Type, Op, or graph optimization.
- Developer Start Guide – How to contribute code to Aesara.
- Internal Documentation – How to maintain Aesara and more…
- Acknowledgements – What we took from other projects.
- Related Projects – link to other projects that implement new functionalities on top of Aesara