Optimizing compiler for evaluating mathematical expressions on CPUs and GPUs.
Theano is a Python library that allows you to define, optimize, and efficiently evaluate mathematical expressions involving multi-dimensional arrays. It is built on top of NumPy. Theano features:
- tight integration with NumPy: a similar interface to NumPy’s. numpy.ndarrays are also used internally in Theano-compiled functions.
- transparent use of a GPU: perform data-intensive computations up to 140x faster than on a CPU (support for float32 only).
- efficient symbolic differentiation: Theano can compute derivatives for functions of one or many inputs.
- speed and stability optimizations: avoid nasty bugs when computing expressions such as log(1 + exp(x)) for large values of x.
- dynamic C code generation: evaluate expressions faster.
- extensive unit-testing and self-verification: includes tools for detecting and diagnosing bugs and/or potential problems.
Theano has been powering large-scale computationally intensive scientific research since 2007, but it is also approachable enough to be used in the classroom (IFT6266 at the University of Montreal).
Theano 0.10.0beta4 (16th of October, 2017)
This release contains new features, improvements and bug fixes to prepare the upcoming release candidate.
We recommend that every developer updates to this version.
- Announcing that MILA will stop developing Theano
- Bug fixes, crash fixes, warning improvements and documentation updates
A total of 70 people contributed to this release since 0.9.0, see list below.
- Interface changes:
- Generalized AllocDiag for any non-scalar input
- Convolution updates:
- Implemented fractional bilinear upsampling
- cuDNN (GPU):
- Disallowed float16 precision for convolution gradients
- Fixed memory alignment detection
- Added profiling in C debug mode (with theano flag cmodule.debug=True)
- New features:
- Implemented truncated normal distribution with box-muller transform
- Added L_op() overriding option for OpFromGraph
- Added NumPy C-API based fallback implementation for [sd]gemv_ and [sd]dot_
- Other more detailed changes:
- Improved stack trace follow-up for GPU optimizations
- Fixed gradient error for elemwise minimum and maximum when compared values are the same
- Fixed gradient for ARange
- Removed ViewOp subclass during optimization
- Commiters since 0.9.0:
- Frederic Bastien
- João Victor Tozatti Risso
- Arnaud Bergeron
- Steven Bocco
- Mohammed Affan
- Pascal Lamblin
- Reyhane Askari
- Alexander Matyasko
- Shawn Tan
- Simon Lefrancois
- Adam Becker
- Gijs van Tulder
- Faruk Ahmed
- Thomas George
- Andrei Costinescu
- Boris Fomitchev
- Zhouhan LIN
- Aleksandar Botev
- Tegan Maharaj
- Matt Graham
- Cesar Laurent
- Gabe Schwartz
- Juan Camilo Gamboa Higuera
- Tim Cooijmans
- Anirudh Goyal
- Saizheng Zhang
- Yikang Shen
- Florian Bordes
- Sina Honari
- Chiheb Trabelsi
- Shubh Vachher
- Daren Eiri
- Joseph Paul Cohen
- Laurent Dinh
- Mohamed Ishmael Diwan Belghazi
- Jeff Donahue
- Ramana Subramanyam
- Bogdan Budescu
- Dzmitry Bahdanau
- Ghislain Antony Vaillant
- Jan Schlüter
- Nan Jiang
- Xavier Bouthillier
- Aarni Koskela
- Adam Geitgey
- Adrian Keet
- Adrian Seyboldt
- Anmol Sahoo
- Chong Wu
- Holger Kohr
- Jayanth Koushik
- Lilian Besson
- Lv Tao
- Michael Manukyan
- Murugesh Marvel
- Zotov Yuriy
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size Theano-0.10.0beta4.tar.gz (2.8 MB)||File type Source||Python version None||Upload date||Hashes View|