Release Notes

Theano 0.8.2 (21th of April, 2016)

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

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

Theano 0.8.1 (29th of March, 2016)

This is a point release without any new feature.

It fixes compilation issues on MacOS X with the command line tools forXCode 7.3, which was released shortly after Theano 0.8.0.

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
      • 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