Add Aesara as a backend
I am a core member of Aesara, a fork of the now deprecated Theano. Since there is a Theano backend, do you think it would make sense to have an Aesara backend as well?
@rlouf Absolutely, always happy to review PRs!
Yes it would certiainly be nice to have, I'll just note the requirements are pretty simple:
- [x] ability to dynamically define high dimensional tensors.
- [x]
tensordotimplementation - [ ] (optional)
einsumimplementation -- without this only some contractions can be performed
Possibly relevant question @rlouf, what is the best way to get the shape of a TensorType as a plain tuple of int? They don't have an infer_shape method. Is t.shape.eval() the way to go?
You can try t.type.shape if the shape is known before evaluating the graph. The reason you don't get a tuple of int immediately is that in most cases the shape is not known before evaluating the graph with the inputs; t.type.shape will give you a tuple with int when the dimension is known and None otherwise.