============================ Announcing Theano 0.9.0rc1 ============================
This is a release candidate for a major version, with lots of new features, bug fixes, and some interface changes (deprecated or potentially misleading features were removed). The upgrade is recommended for developers who want to help test and report bugs, or want to use new features now. If you have updated to 0.9.0b1, you are highly encouraged to update to 0.9.0rc1. For those using the bleeding edge version in the git repository, we encourage you to update to the `rel-0.9.0rc1` tag. What's New ---------- Highlights: - Better integration of Theano+libgpuarray packages into conda distribution - Better handling of Windows end-lines into C codes - Better compatibility with NumPy 1.12 - Faster scan optimizations - Fixed broadcast checking in scan - Bug fixes related to merge optimizer and shape inference - many other bug fixes and improvements - Updated documentation - Many computation and compilation speed up - More numerical stability by default for some graph - Jenkins (gpu tests run on PR in addition to daily buildbot) - Better handling of corner cases for theano functions and graph optimizations - More graph optimization (faster execution and smaller graph, so more readable) - Less c code compilation - Better Python 3.5 support - Support newer Mac and Windows version - Conda packages for Mac, Linux and Windows - Theano scripts now works on Windows - scan with checkpoint (trade off between speed and memory usage, useful for long sequences) - Added a bool dtype - New GPU back-end: - Value of a shared variable is now set inplace - float16 storage - better mapping between theano device number and nvidia-smi number, using the PCI bus ID of graphic cards - More pooling support on GPU when cuDNN isn't there - ignore_border=False is now implemented for pooling Interface changes: - In MRG, replaced method `multinomial_wo_replacement()` with new method `choice()` - New pooling interface - Pooling parameters can change at run time - When converting empty list/tuple, now we use floatX dtype - The MRG random generator now try to infer the broadcast pattern of its output - Move softsign out of sandbox to theano.tensor.nnet.softsign - Roll make the shift be modulo the size of the axis we roll on - Merge CumsumOp/CumprodOp into CumOp - round() default to the same as NumPy: half_to_even Convolution updates: - Implement conv2d_transpose convenience function - Multi-cores convolution and pooling on CPU - New abstract 3d convolution interface similar to the 2d convolution interface - Dilated convolution GPU: - GPUMultinomialFromUniform op now supports multiple dtypes - cuDNN: support versoin 5.1 and wrap batch normalization (2d and 3d) and RNN functions - Multiple-GPU, synchrone update (via platoon, use NCCL) - GpuAdvancedSubtensor in new back-end - Gemv(matrix-vector product) speed up for special shape - Support for MaxAndArgMax for some axis combination - Support for solve (using cusolver), erfinv and erfcinv - cublas gemv workaround when we reduce on an axis with a dimensions size of 0 - Warn user that some cuDNN algorithms may produce unexpected results in certain environments for convolution backward filter operations New features: - OpFromGraph now allows gradient overriding for every input - Added Abstract Ops for batch normalization that use cuDNN when available and pure Theano CPU/GPU alternatives otherwise - Added new Theano flag cuda.enabled - Added new Theano flag print_global_stats to print some global statistics (time spent) at the end - Add gradient of solve, tensorinv (CPU), tensorsolve (CPU) searchsorted (CPU) - Add Multinomial Without Replacement - conv3d2d support full and half mode (REMOVE?) - Add DownsampleFactorMaxGradGrad.grad - Allow partial evaluation of compiled function - More Rop support - Indexing support ellipsis: a[..., 3], a[1,...,3] - Added theano.tensor.{tensor5,dtensor5, ...} - compiledir_format support device - Added new Theano flag cmodule.age_thresh_use Others: - Split op now has C code for CPU and GPU - "theano-cache list" now includes compilation times - Speed up argmax only on gpu (without also needing the max) - A few unfrequent bugfix - More stack trace in error message - Speed up cholesky grad - log(sum(exp(...))) now get stability optimized Other more detailed changes: - Allow more then one output to be an destructive inplace - Add flag profiling.ignore_first_call, useful to profile the new gpu back-end - Doc/error message fixes/updates - More support of negative axis - Added the keepdims parameter to the norm function - Crash fixes - Make scan gradient more deterministic - Add support for space in path on Windows - remove ProfileMode (use Theano flag profile=True instead) Download and Install -------------------- You can download Theano from http://pypi.python.org/pypi/Theano Installation instructions are available at http://deeplearning.net/software/theano/install.html Description ----------- 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). Resources --------- About Theano: http://deeplearning.net/software/theano/ Theano-related projects: http://github.com/Theano/Theano/wiki/Related-projects About NumPy: http://numpy.scipy.org/ About SciPy: http://www.scipy.org/ Machine Learning Tutorial with Theano on Deep Architectures: http://deeplearning.net/tutorial/ Acknowledgments --------------- I would like to thank all contributors of Theano. For this particular release, many people have helped, notably (in alphabetical order): - affanv14 - Alexander Matyasko - Alexandre de Brebisson - Amjad Almahairi - Andrés Gottlieb - Anton Chechetka - Arnaud Bergeron - Benjamin Scellier - Ben Poole - Bhavishya Pohani - Bryn Keller - Caglar - Carl Thomé - Cesar Laurent - Chiheb Trabelsi - Chinnadhurai Sankar - Christos Tsirigotis - Ciyong Chen - Dimitar Dimitrov - Evelyn Mitchell - Fábio Perez - Faruk Ahmed - Fei Wang - Fei Zhan - Francesco Visin - Frederic Bastien - Fuchai - Gennadiy Tupitsin - Gijs van Tulder - Gilles Louppe - Gokula Krishnan - Greg Ciccarelli - gw0 [http://gw.tnode.com/] - happygds - Harm de Vries - He - hexahedria - hsintone - Huan Zhang - Ilya Kulikov - Iulian Vlad Serban - jakirkham - Jakub Sygnowski - Jan Schlüter - Jesse Livezey - Jonas Degrave - joncrall - Kaixhin - Karthik Karanth - Kelvin Xu - Kevin Keraudren - khaotik - Kirill Bobyrev - Kumar Krishna Agrawal - Kv Manohar - Liwei Cai - Maltimore - Marc-Alexandre Cote - Marco - Marius F. Killinger - Mathieu Germain - Matt Graham - Maxim Kochurov - Mikhail Korobov - mockingjamie - Mohammad Pezeshki - Morgan Stuart - Nan Rosemary Ke - Neil - Nicolas Ballas - Nizar Assaf - Olivier Mastropietro - Ozan Çağlayan - p - Pascal Lamblin - Pierre Luc Carrier - RadhikaG - Ramana Subramanyam - Ray Donnelly - Rebecca N. Palmer - Reyhane Askari - Rithesh Kumar - Rizky Luthfianto - Robin Millette - Roman Ring - root - Ruslana Makovetsky - Saizheng Zhang - Samira Ebrahimi Kahou - Samira Shabanian - Sander Dieleman - Sebastin Santy - Shawn Tan - Simon Lefrancois - Sina Honari - Steven Bocco - superantichrist - Taesup (TS) Kim - texot - theano-bot - Thomas George - tillahoffmann - Tim Cooijmans - Tim Gasper - valtron - Vincent Dumoulin - Vincent Michalski - Vitaliy Kurlin - Wazeer Zulfikar - wazeerzulfikar - Wojciech Głogowski - Xavier Bouthillier - Yang Zhang - Yann N. Dauphin - Yaroslav Ganin - Ying Zhang - you-n-g - Zhouhan LIN Also, thank you to all NumPy and Scipy developers as Theano builds on their strengths. All questions/comments are always welcome on the Theano mailing-lists ( http://deeplearning.net/software/theano/#community ) -- --- You received this message because you are subscribed to the Google Groups "theano-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to theano-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.