Release Notes

Theano 0.8.2 (21th of April, 2016)

This is a point release with only the support for cudnn v5 convolution and minor fixes.

Highlight: - cuDNN v5 convolution support (cuDNN v3 isn’t supported anymore) - A few crash fix

Theano 0.8.1 (29th of March, 2016)

This is a point release without any new features. If you experienced compilation issues on MacOS X with XCode 7.3, we encourage you to update.

Highlight: - Fix compilation on Mac with CLT 7.3

Theano 0.8 (21th of March, 2016)

We recommend that everybody update to this version.

Highlights: - Python 2 and 3 support with the same code base - Faster optimization - Integration of cuDNN for better GPU performance - Many Scan improvements (execution speed up, ...) - optimizer=fast_compile moves computation to the GPU. - Better convolution on CPU and GPU. (CorrMM, cuDNN, 3d conv, more parameter) - Interactive visualization of graphs with d3viz - cnmem (better memory management on GPU) - BreakpointOp - Multi-GPU for data parallism via Platoon (https://github.com/mila-udem/platoon/) - More pooling parameter supported - Bilinear interpolation of images - New GPU back-end:

  • Float16 new back-end (need cuda 7.5)
  • Multi dtypes
  • Multi-GPU support in the same process

A total of 141 people contributed to this release, see the list at the bottom.

Installation: - Better BLAS detection - Fixes for more recent software and OS versions - Support Anaconda on Windows

Bug fixes: - GpuJoin now supports negative axis - Fix GpuCumsum for negative axis

Interface Deprecation (a warning is printed): - Deprecate Param class, use In instead

Interface Changes: - Rename DownsampleFactorMax to Pool. - tensor.stack now uses the same interface as numpy.stack - optimizer=fast_compile moves computation to the GPU - Raise the user stack trace more frequently. - Change dev version numbering to follow the PEP 440

New Interface (reuses existing functionality): - theano.tensor.nnet.relu - theano.tensor.nnet.elu - BatchNormalization. - MaxAndArgmax support axis=None - Add theano.tensor.compress (equivalent of numpy.compress) - theano.tensor.signal.downsamples.max_pool_2d_same_size - COp - __props__

New features - tensor.unique - map_variables - erfcx - mgrid, ogrid - allclose - BreakpointOp - Make bincount work on GPU - SolveOp on GPU - Optional optimization remove_all_assert - AllocEmpty - LogSoftmax, for stability optimization when the crossentropy optimization does not apply. - theano.tensor.repeat works on GPU - BatchedDot on the GPU and faster on the CPU. - Faster batched_tensordot and make it work on GPU. - SoftmaxGrad grad - 3d conv via CorrMM on the GPU - CPU Max Pool support of padding and strides!=windows size - theano.function() now accepts a dict for the outputs. When doing this, the function will return a dict. Helpful to keep track of which output is what. - Warn for unknown or misspelled theano config variables - theano.tensor.tile update (accept symbolic reps, work on GPU) - scan how have a strict flag. If set to True, this make scan building faster and could make execution faster. - theano.tensor.signal.conv2d(2d,2d) output 2d answer - More convolution parameter supported - Bilinear interpolation of images

Speed-ups: - Faster SetSubtensor on the GPU. - Support more reduction pattern on the GPU. - More graph optimization - Faster graph optimization - GpuCrossentropySoftmaxArgmax1HotWithBias

Crash/no return fixes: - Fix crash in the assert op grad - Fix curand crash on Mac - Multiple Fix scan crashes - Finish to update all Op.grad() implementation to the new interface

Others: - Support ARM processor. - Better tests - Code clean up. - Doc updates - doctest and sphinx test in travis - More tests tagged as slow - Better same_shape implementation - More op with c code to lower overhead - Custom pickler for SharedVariable theano.misc.pkl_utils.{dump,load} - function_dump to help us reproduce user error during compilation - assert_no_cpu_op - pep8, flake8 - Better error messages - On non-default modes, reduce the number of allocation when allow_gc=False - Better lock

Committers for this dev version only: - Frederic Bastien - Arnaud Bergeron - Pierre Luc Carrier - Iban Harlouchet - Pascal Lamblin - Chienli Ma - Tim Cooijmans - Nicolas Ballas - Amjad Almahairi - David Warde-Farley - Christof Angermueller - Ziye Fan - Caglar - Sina Honari - Roy Xue - hantek - Mohammad Pezeshki - Melanie Ducoffe - Alexandre de Brebisson - Harm de Vries - Samira Shabanian - Alex Lamb - Ramana.S - Francesco Visin - Saizheng Zhang - Ying Zhang - Jan Schlüter - Xavier Bouthillier - Bart van Merrienboer - Cesar Laurent - Iulian Vlad Serban - Li Yao - Sigurd Spieckermann - Dmitrii Serdiuk - Kelvin Xu - Sebastien Jean - Thomas Mesnard - Seon-Wook Park - Vincent Michalski - Dustin Webb - Mikhail Korobov - Orhan Firat - Olivier Mastropietro - Daniel Renshaw - Julien Rebetez - Peng Liu - Sean Lee - TimSalimans - Andre Holzner - Gijs van Tulder - Guillaume Alain - Julien Demouth - Markus Beissinger - Mehdi Mirza - Moslem Kazemi - Saxenauts - Søren Kaae Sønderby - sentient07 - Anatoly Belikov - Diogo Moitinho de Almeida - Jakub Sygnowski - Kashif Rasul - Laurent Dinh - Rémy Léone - Taesup (TS) Kim - gw0 [http://gw.tnode.com/] - mronian - vesis84 - Benni - Chiheb Trabelsi - JesseLivezey - Marius Killinger - Matt Graham - Matthew Willson - Piotr Frankowski - Stefan Krastanov - vdumoulin - Adithya Ganesh - Anish Shah - Balázs Hidasi - Colin Raffel - Cory Lorenz - Doug - Jesse Livezey - John Salvatier - John Zedlewski - Jonathan Ho - Kaixhin - Liang-Chi Hsieh - Lucas Beyer - Luke Metz - Marc-Alexandre Cote - Martin Arjovsky - Matthias Kümmerer - Sirisha Rambhatla - briancheung - cai-lw - ivdorelian - jan-matthis - jojolalpin - joncrall - peterjsadowski - scottsievert - Étienne Simon - A. Flaxman - AlOa - Albert Zeyer - Andrea - Andy Jiang - Balázs - Ben Poole - Brian Cheung - Christophe Van Gysel - Claude Coulombe - Clay McLeod - Dario Garcia - Jakob Lombacher - Joao Felipe Santos - John Arevalo - Jonas Degrave - Martin Thoma - Mathieu Germain - Matthew Koichi Grimes - Michael Eickenberg - Michael Opitz - Paul Hollensen - Prayag Verma - Saatvik Shah - Sergei Lebedev - Vik Kamath - Wei Ouyang - Wojciech Głogowski - Yi-Lin Juang - Yurii Shevchuk - Zach Dwiel - dan - eulerreich - jotterbach - rolf - theaverageguy - wuaalb