From 7fc038f26ab02ea6371d9d034b069826d8c93ed8 Mon Sep 17 00:00:00 2001 From: Frederic Bastien Date: Thu, 1 Dec 2016 15:18:07 -0500 Subject: [PATCH] Update the news dev text file --- NEWS_DEV.txt | 241 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 206 insertions(+), 35 deletions(-) diff --git a/NEWS_DEV.txt b/NEWS_DEV.txt index f6bbdc0c718..5455eef1881 100644 --- a/NEWS_DEV.txt +++ b/NEWS_DEV.txt @@ -13,50 +13,221 @@ git shortlog -sn rel-0.8.0.. # docker? +TODO: better Theano conv doc + Highlight: + - 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) + - 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 + - scan with checkpoint (trade off between speed and memory usage, useful for long sequences) + - Added a bool dtype -Computation and compilation speed up -Multi-cores convolution and pooling on CPU -More numerical stability by default for some graph. -New 3d convolution and pooling interface -CuDNN: 5.1, batch normalization, RNN -Dilated convolution -Multiple-GPU, synchrone update (via platoon, use NCCL) -Partial function evaluation -Add gradient of solve, tensorinv (CPU), tensorsolve (CPU) searchsorted (CPU) -Add Multinomial Without Replacement -Pooling parameters can change at run time -Jenkins (gpu tests run on PR in addition to daily buildbot) + - New back-end: + - float16 storage + - print pci bus id + - More pooling support on GPU when cudnn isn't there. +Interface changes: + - 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 -Add DownsampleFactorMaxGradGrad.grad -Better Python 3.5 support -Mac, Windows new versions fixes -More Rop support -More stack trace in error message -Speed up cholesky grad -conv3d2d support full and half mode -indexing support ellipsis a[..., 3], a[1,...,3] +Convolution updates: + - Multi-cores convolution and pooling on CPU + - New abstract 3d convolution interface similar to the 2d convolution interface + - Dilated convolution -Details -Doc/error message fixes/updtes -GpuJoin support negative axis. -Move softsign out of sandbox to theano.tensor.nnet.softsign -norm(keepdims) param added -Add flag profiling.ignore_first_call -More op in the new back-end. -Crash fixes -More graph optimizations -tensor5, dtensor5... -compiledir_format support device -make scan grad more deterministic. -Add support for space in path -Roll make the shift be modulo the size of the axis we roll on +GPU: + - 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 + - cublas gemv workaround when we reduce on an axis with a dimensions size of 0 + +New feature: + - 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 + + +Others: + - 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 -ALL THE PR BELLOW HAVE BEEN CHECKED + +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 gradiant more deterministic + - Add support for space in path on Windows + - remove ProfileMode (use Theano flag profile=True instead) + + + +ALL THE PR BELLOW HAVE BEEN CHECKED +* https://github.com/Theano/Theano/pull/5309 +* https://github.com/Theano/Theano/pull/5306 +* https://github.com/Theano/Theano/pull/5289 +* https://github.com/Theano/Theano/pull/5307 +* https://github.com/Theano/Theano/pull/5290 +* https://github.com/Theano/Theano/pull/5303 +* https://github.com/Theano/Theano/pull/5302 +* https://github.com/Theano/Theano/pull/5300 +* https://github.com/Theano/Theano/pull/5304 +* https://github.com/Theano/Theano/pull/5271 +* https://github.com/Theano/Theano/pull/5247 +* https://github.com/Theano/Theano/pull/5288 +* https://github.com/Theano/Theano/pull/5265 +* https://github.com/Theano/Theano/pull/5223 +* https://github.com/Theano/Theano/pull/5297 +* https://github.com/Theano/Theano/pull/5293 +* https://github.com/Theano/Theano/pull/5286 +* https://github.com/Theano/Theano/pull/5287 +* https://github.com/Theano/Theano/pull/5198 +* https://github.com/Theano/Theano/pull/5282 +* https://github.com/Theano/Theano/pull/5254 +* https://github.com/Theano/Theano/pull/5281 +* https://github.com/Theano/Theano/pull/5231 +* https://github.com/Theano/Theano/pull/5239 +* https://github.com/Theano/Theano/pull/5266 +* https://github.com/Theano/Theano/pull/5277 +* https://github.com/Theano/Theano/pull/5275 +* https://github.com/Theano/Theano/pull/5153 +* https://github.com/Theano/Theano/pull/5269 +* https://github.com/Theano/Theano/pull/5270 +* https://github.com/Theano/Theano/pull/5257 +* https://github.com/Theano/Theano/pull/5245 +* https://github.com/Theano/Theano/pull/5244 +* https://github.com/Theano/Theano/pull/5241 +* https://github.com/Theano/Theano/pull/5251 +* https://github.com/Theano/Theano/pull/5250 +* https://github.com/Theano/Theano/pull/5234 +* https://github.com/Theano/Theano/pull/5242 +* https://github.com/Theano/Theano/pull/5210 +* https://github.com/Theano/Theano/pull/5240 +* https://github.com/Theano/Theano/pull/5229 +* https://github.com/Theano/Theano/pull/5237 +* https://github.com/Theano/Theano/pull/5226 +* https://github.com/Theano/Theano/pull/5212 +* https://github.com/Theano/Theano/pull/4749 +* https://github.com/Theano/Theano/pull/5235 +* https://github.com/Theano/Theano/pull/5214 +* https://github.com/Theano/Theano/pull/5232 +* https://github.com/Theano/Theano/pull/5211 +* https://github.com/Theano/Theano/pull/5205 +* https://github.com/Theano/Theano/pull/5168 +* https://github.com/Theano/Theano/pull/5208 +* https://github.com/Theano/Theano/pull/5199 +* https://github.com/Theano/Theano/pull/5174 +* https://github.com/Theano/Theano/pull/5196 +* https://github.com/Theano/Theano/pull/5185 +* https://github.com/Theano/Theano/pull/5194 +* https://github.com/Theano/Theano/pull/5155 +* https://github.com/Theano/Theano/pull/5193 +* https://github.com/Theano/Theano/pull/5152 +* https://github.com/Theano/Theano/pull/5175 +* https://github.com/Theano/Theano/pull/4355 +* https://github.com/Theano/Theano/pull/5179 +* https://github.com/Theano/Theano/pull/5181 +* https://github.com/Theano/Theano/pull/5132 +* https://github.com/Theano/Theano/pull/5178 +* https://github.com/Theano/Theano/pull/5077 +* https://github.com/Theano/Theano/pull/5159 +* https://github.com/Theano/Theano/pull/5173 +* https://github.com/Theano/Theano/pull/5172 +* https://github.com/Theano/Theano/pull/5164 +* https://github.com/Theano/Theano/pull/5163 +* https://github.com/Theano/Theano/pull/5165 +* https://github.com/Theano/Theano/pull/5166 +* https://github.com/Theano/Theano/pull/5097 +* https://github.com/Theano/Theano/pull/5142 +* https://github.com/Theano/Theano/pull/5133 +* https://github.com/Theano/Theano/pull/5076 +* https://github.com/Theano/Theano/pull/5091 +* https://github.com/Theano/Theano/pull/5160 +* https://github.com/Theano/Theano/pull/5144 +* https://github.com/Theano/Theano/pull/5146 +* https://github.com/Theano/Theano/pull/5119 +* https://github.com/Theano/Theano/pull/5134 +* https://github.com/Theano/Theano/pull/5098 +* https://github.com/Theano/Theano/pull/4736 +* https://github.com/Theano/Theano/pull/5126 +* https://github.com/Theano/Theano/pull/5122 +* https://github.com/Theano/Theano/pull/5086 +* https://github.com/Theano/Theano/pull/4996 +* https://github.com/Theano/Theano/pull/5108 +* https://github.com/Theano/Theano/pull/5105 +* https://github.com/Theano/Theano/pull/4915 +* https://github.com/Theano/Theano/pull/5103 +* https://github.com/Theano/Theano/pull/5096 +* https://github.com/Theano/Theano/pull/5069 +* https://github.com/Theano/Theano/pull/5083 +* https://github.com/Theano/Theano/pull/5073 +* https://github.com/Theano/Theano/pull/5082 +* https://github.com/Theano/Theano/pull/5093 +* https://github.com/Theano/Theano/pull/5084 +* https://github.com/Theano/Theano/pull/5089 +* https://github.com/Theano/Theano/pull/5090 +* https://github.com/Theano/Theano/pull/4948 +* https://github.com/Theano/Theano/pull/5087 +* https://github.com/Theano/Theano/pull/4884 +* https://github.com/Theano/Theano/pull/4862 +* https://github.com/Theano/Theano/pull/5070 +* https://github.com/Theano/Theano/pull/5054 +* https://github.com/Theano/Theano/pull/5060 +* https://github.com/Theano/Theano/pull/5065 +* https://github.com/Theano/Theano/pull/5049 +* https://github.com/Theano/Theano/pull/5062 +* https://github.com/Theano/Theano/pull/5061 +* https://github.com/Theano/Theano/pull/5058 +* https://github.com/Theano/Theano/pull/5057 +* https://github.com/Theano/Theano/pull/4763 +* https://github.com/Theano/Theano/pull/4961 +* https://github.com/Theano/Theano/pull/5050 +* https://github.com/Theano/Theano/pull/5045 +* https://github.com/Theano/Theano/pull/4039 +* https://github.com/Theano/Theano/pull/5028 +* https://github.com/Theano/Theano/pull/4935 +* https://github.com/Theano/Theano/pull/5033 +* https://github.com/Theano/Theano/pull/5038 +* https://github.com/Theano/Theano/pull/5032 +* https://github.com/Theano/Theano/pull/5037 +* https://github.com/Theano/Theano/pull/5031 +* https://github.com/Theano/Theano/pull/5029 +* https://github.com/Theano/Theano/pull/5010 +* https://github.com/Theano/Theano/pull/5014 +* https://github.com/Theano/Theano/pull/5025 +* https://github.com/Theano/Theano/pull/5027 +* https://github.com/Theano/Theano/pull/4992 +* https://github.com/Theano/Theano/pull/5013 +* https://github.com/Theano/Theano/pull/5015 +* https://github.com/Theano/Theano/pull/5023 +* https://github.com/Theano/Theano/pull/4850 * https://github.com/Theano/Theano/pull/5001 * https://github.com/Theano/Theano/pull/5002 * https://github.com/Theano/Theano/pull/4984