The developers of NumPy. Theano is based on its ndarray object and uses much of its implementation.
The developers of SciPy. Our sparse matrix support uses their sparse matrix objects. We also reuse other parts.
The developers of Theano
All Aesara contributors.
All Theano users that have given us feedback.
Our random number generator implementation on CPU and GPU uses the MRG31k3p algorithm that is described in:
L’Ecuyer and R. Touzin, Fast Combined Multiple Recursive Generators with Multipliers of the form a = +/- 2^d +/- 2^e, Proceedings of the 2000 Winter Simulation Conference, Dec. 2000, 683–689.
We were authorized by Pierre L’Ecuyer to copy/modify his Java implementation in the SSJ software and to relicense it under BSD 3-Clauses in Theano.