Evan Shelhamer [Fri, 22 May 2015 01:14:16 +0000 (18:14 -0700)]
test equivalence of solving with accumulating gradients
Compare the parameters after solving with a given batch size and the
halved batch size + two iter accumulation of gradients equivalent.
Note: the test net dummy data layer now makes constant data and random
gaussian targets. This assures the standard and gradient accumulation
cases check the same data. Otherwise the difference in batch sizes
causes different orders of random number draws.
Evan Shelhamer [Fri, 22 May 2015 00:06:42 +0000 (17:06 -0700)]
adjust local learning rate and decay according to gradient accumulation
Divide local rate by `iter_size` to normalize the gradient according to
the full minibatch size and not only the computational batch size.
Multiply the local decay by `iter_size` to counter the division of the
local learning rate since the decay is multiplied by the rate in the
update equation.
Jonathan L Long [Sun, 14 Sep 2014 00:41:59 +0000 (17:41 -0700)]
accumulate gradients in cudnn conv layer
Jonathan L Long [Wed, 31 Dec 2014 06:29:35 +0000 (22:29 -0800)]
accumulate gradients in (de)conv layers
Sergio [Sat, 27 Sep 2014 06:03:26 +0000 (23:03 -0700)]
accumulate gradients in inner product layer
Jonathan L Long [Wed, 31 Dec 2014 06:52:07 +0000 (22:52 -0800)]
zero-init param diffs in gradient checker
Jonathan L Long [Tue, 12 Aug 2014 04:38:59 +0000 (21:38 -0700)]
zero-init param diffs and accumulate gradients
(With layers whose backward accumulates gradients), this effectively
decouples the computational batch from the SGD minibatch. Each
iteration accumulates gradients over iter_size batches, then parameters
are updated.
Jeff Donahue [Wed, 27 May 2015 20:42:47 +0000 (13:42 -0700)]
Merge pull request #2518 from shelhamer/dedup_solvers
Deduplicate solver regularization, logging, and local rates and decays
Evan Shelhamer [Wed, 27 May 2015 19:24:06 +0000 (12:24 -0700)]
Solver::MakeUpdate() -> Solver::ApplyUpdate
Designate `Solver::ApplyUpdate()` as the core method to compute
and apply parameter updates given the current state of the Net.
Make `Solver::ComputeUpdateValue()` a subordinate call overloaded by the
`SGDSolver`s to take care of optimization algorithm details.
Evan Shelhamer [Thu, 21 May 2015 23:34:43 +0000 (16:34 -0700)]
deduplicate decay and local rate in solver updates
Cyprien Noel [Tue, 19 May 2015 01:30:00 +0000 (18:30 -0700)]
Refactor solvers regularization and logging code
Evan Shelhamer [Tue, 26 May 2015 20:13:01 +0000 (13:13 -0700)]
Merge pull request #1946 from nickcarlevaris/msra_init
Add MSRAFiller, an Xavier-like filler designed for use with ReLUs
Evan Shelhamer [Tue, 26 May 2015 19:39:14 +0000 (12:39 -0700)]
include comment on Saxe and sqrt(2) scaling factor
although different and independent, the derivation of Saxe et
al. with regards to the scaling factor might be of interest.
Nick Carlevaris-Bianco [Mon, 16 Feb 2015 05:19:43 +0000 (15:49 +1030)]
Added MSRAFiller, an Xavier-like filler designed for use with ReLUs
...instead of tanh. Based on paper: He et al, "Delving Deep into
Rectifiers: Surpassing Human-Level Performance on ImageNet
Classification," 2015.
- add VarianceNorm option to FillerParameters which allows one to
normalize by fan_in, fan_out or their average.
- update XavierFiller to use the VarianceNorm option (default behavior
unchanged).
- add tests for MSRAFiller and XavierFiller.
Evan Shelhamer [Fri, 22 May 2015 20:27:07 +0000 (13:27 -0700)]
Merge pull request #2486 from tiangolo/ipython-notebook-v4
Update IPython Notebooks to version 4, fix #2485
Sebastián Ramírez [Fri, 22 May 2015 01:19:59 +0000 (20:19 -0500)]
Update python/requirements.txt to have ipython>=3.0.0
Evan Shelhamer [Tue, 19 May 2015 18:11:38 +0000 (11:11 -0700)]
Merge pull request #2488 from kibum14/master
[docs] fix typos
Kibum Bae [Tue, 19 May 2015 13:43:49 +0000 (22:43 +0900)]
fix typos in docs
fix typos in install_osx.md and performance_hardware.md
Evan Shelhamer [Tue, 19 May 2015 05:46:56 +0000 (22:46 -0700)]
Merge pull request #2484 from ronghanghu/fix-caffe-test
[bug] fix blob_loss_weights index in test() in caffe.cpp
Evan Shelhamer [Mon, 18 May 2015 18:55:42 +0000 (11:55 -0700)]
Merge pull request #2482 from longjon/clean-message-comments
Clean up redundant protobuf message comments
Sebastián Ramírez [Mon, 18 May 2015 15:21:44 +0000 (10:21 -0500)]
Update IPython Notebooks to version 4
Ronghang Hu [Mon, 18 May 2015 12:27:19 +0000 (20:27 +0800)]
fix blob_loss_weights index in test() in caffe.cpp
Correct the index for blob_loss_weights during output. Previously it was set to test_score index by mistake.
Jonathan L Long [Mon, 18 May 2015 07:45:26 +0000 (00:45 -0700)]
clean up redundant message comments
Jeff Donahue [Sat, 16 May 2015 19:02:59 +0000 (12:02 -0700)]
Merge pull request #2466 from ducha-aiki/mvn-less
Remove unnecessary variance computation from backward in MVN layer
Jeff Donahue [Fri, 15 May 2015 19:51:16 +0000 (12:51 -0700)]
Merge pull request #2095 from mtamburrano/skip_propagate_down_param
Added param skip_propagate_down to LayerParameter
Jon Long [Fri, 15 May 2015 17:43:30 +0000 (10:43 -0700)]
Merge pull request #2467 from MartinThoma/moose
Python: Formatted docstrings to numpydoc (Take, Give -> Parameters, Returns)
Martin Thoma [Fri, 15 May 2015 14:06:49 +0000 (16:06 +0200)]
Python: Formatted docstrings to numpydoc (Take, Give -> Parameters, Returns)
Dmytro Mishkin [Fri, 15 May 2015 13:14:02 +0000 (16:14 +0300)]
Remove unnecessary variance computation from backward in MVN layer
manuele [Fri, 15 May 2015 09:17:00 +0000 (11:17 +0200)]
Added "propagate_down" param to LayerParameter
Jeff Donahue [Fri, 15 May 2015 07:10:30 +0000 (00:10 -0700)]
Merge pull request #2274 from Ashwani001/patch-1
Update generate_sample_data.py
Ashwani001 [Fri, 15 May 2015 02:33:36 +0000 (10:33 +0800)]
Update generate_sample_data.py
made code more clearer and more concise
Evan Shelhamer [Fri, 15 May 2015 01:42:02 +0000 (18:42 -0700)]
Merge pull request #2201 from jeffdonahue/tutorial-fixes
Update docs for ND blobs (#1970) and layer type is a string (#1694)
Jeff Donahue [Thu, 26 Mar 2015 01:45:29 +0000 (18:45 -0700)]
Update docs for ND blobs (#1970) and layer type is a string (#1694)
Jeff Donahue [Fri, 15 May 2015 01:36:22 +0000 (18:36 -0700)]
Merge pull request #2217 from jeffdonahue/ssafar-reshape-rebase
Rebase @ssafar's ReshapeLayer
Jeff Donahue [Thu, 26 Mar 2015 08:13:18 +0000 (01:13 -0700)]
Add ReshapeParameter axis and num_axes to reshape only a particular span
of the input shape
Jeff Donahue [Thu, 26 Mar 2015 09:25:48 +0000 (02:25 -0700)]
basic tests (Forward, Gradient) for ReshapeLayer
Jeff Donahue [Thu, 26 Mar 2015 00:44:37 +0000 (17:44 -0700)]
ReshapeLayer fixups for ND blobs
Simon Safar [Thu, 16 Oct 2014 03:15:14 +0000 (20:15 -0700)]
Added a Reshape layer for copying-free modification of blob dimensions.
Jeff Donahue [Fri, 15 May 2015 01:17:11 +0000 (18:17 -0700)]
Merge pull request #2177 from pgao/spp_layer
Spatial Pyramid Pooling Layer
PETER_GAO [Sat, 21 Mar 2015 23:00:05 +0000 (16:00 -0700)]
Spatial Pyramid Pooling Layer
Jeff Donahue [Thu, 14 May 2015 23:11:06 +0000 (16:11 -0700)]
Merge pull request #2115 from longjon/bogus-cross-entropy-gpu
Remove bogus implementation of SigmoidCrossEntropyLossLayer's Forward_gpu
Jonathan L Long [Fri, 13 Mar 2015 00:59:28 +0000 (17:59 -0700)]
remove bogus implementation of SigmoidCrossEntropyLossLayer::Forward_gpu
It was a verbatim copy of Forward_cpu; there is no proper GPU
implementation.
Jeff Donahue [Thu, 14 May 2015 22:41:57 +0000 (15:41 -0700)]
Merge pull request #1969 from tnarihi/fix-empty-param_name
Fix incorrectly storing empty param_name to param_names_index_
Jeff Donahue [Thu, 14 May 2015 22:14:05 +0000 (15:14 -0700)]
Merge pull request #2168 from longjon/spurious-net-includes
Remove spurious inclusions of net.hpp
Jeff Donahue [Thu, 14 May 2015 22:10:59 +0000 (15:10 -0700)]
Merge pull request #2165 from longjon/auto-reshape
Always call Layer::Reshape in Layer::Forward
Jon Long [Thu, 14 May 2015 22:06:56 +0000 (15:06 -0700)]
Merge pull request #2072 from jeffdonahue/final-snapshot-off-by-one
Bugfix: final snapshot iter number is off by one
Jeff Donahue [Thu, 14 May 2015 22:06:04 +0000 (15:06 -0700)]
Merge pull request #2456 from longjon/python-layer-object
Use bp::object instead of PyObject* for self in Python layer
Jeff Donahue [Thu, 14 May 2015 21:57:52 +0000 (14:57 -0700)]
Merge pull request #2457 from longjon/superfluous-destructors
Remove superfluous empty destructors
Jonathan L Long [Thu, 14 May 2015 05:08:57 +0000 (22:08 -0700)]
remove superfluous empty destructors
The removed definitions do nothing; these classes already have virtual
destructors inherited from their respective base classes.
Takuya Narihira [Thu, 14 May 2015 04:16:28 +0000 (21:16 -0700)]
[pycaffe] use bp::object instead of PyObject* for self in Python layer
This simply allows direct use of the nicer bp::object interface.
Evan Shelhamer [Tue, 12 May 2015 20:52:48 +0000 (13:52 -0700)]
Merge pull request #2321 from nickcarlevaris/contrastive_loss_fix
Fixed contrastive loss layer to be the same as proposed in Hadsell et al 2006
Jon Long [Mon, 11 May 2015 23:34:33 +0000 (16:34 -0700)]
Merge pull request #2441 from gustavla/py3-fix
Fixed wrong io import in Python 3
Evan Shelhamer [Mon, 11 May 2015 22:20:06 +0000 (15:20 -0700)]
Merge pull request #2443 from MartinThoma/master
python: PEP8; changed docstring documentation style to NumPyDoc style
Martin Thoma [Mon, 11 May 2015 20:35:48 +0000 (22:35 +0200)]
python: PEP8; changed docstring documentation style to NumPyDoc style
Gustav Larsson [Mon, 11 May 2015 16:54:45 +0000 (11:54 -0500)]
This imports the wrong io module in Python 3.
The Python standard lib has a module called io, so instead of Python 3
throwing an error, it imports the wrong module without complaining.
Jeff Donahue [Thu, 7 May 2015 00:56:57 +0000 (17:56 -0700)]
Merge pull request #2426 from longjon/check-blob-overflow
Check that count does not overflow in Blob::Reshape
Jonathan L Long [Thu, 7 May 2015 00:40:12 +0000 (17:40 -0700)]
check that count_ does not overflow in Blob::Reshape
Jeff Donahue [Tue, 5 May 2015 18:39:45 +0000 (11:39 -0700)]
Merge pull request #2414 from tnarihi/fix-prelu-redanduncy
Fix #2406: wrong thread blocks setting for PReLU
Takuya Narihira [Mon, 4 May 2015 18:45:33 +0000 (11:45 -0700)]
Modify for better readability regarding temporary bufffer for backward
computation
Takuya Narihira [Mon, 4 May 2015 18:44:44 +0000 (11:44 -0700)]
Fix redundancy of parameter backward computation
Nick Carlevaris-Bianco [Mon, 4 May 2015 02:11:44 +0000 (11:41 +0930)]
Added support for original implementation, using (margin - d^2), through the
legacy_version parameter.
Jeff Donahue [Thu, 30 Apr 2015 22:47:03 +0000 (15:47 -0700)]
Merge pull request #2369 from jeffdonahue/makefile-link-bugfix
Makefile bugfix: debug/release dir link not toggled properly
Jeff Donahue [Sun, 26 Apr 2015 03:57:34 +0000 (20:57 -0700)]
Makefile bugfix: OTHER_BUILD_DIR name set incorrectly when empty due to
lazy variable expansion when using the `?=` operator -- change them
to explicit empty string checks with simple assignment operator `:=`.
Jon Long [Thu, 30 Apr 2015 03:10:14 +0000 (20:10 -0700)]
Merge pull request #2393 from Nerei/feature/minor_cmake_fix
Little CMake fix (can be reviewed and merged quickly)
Anatoly Baksheev [Wed, 29 Apr 2015 18:53:51 +0000 (21:53 +0300)]
minor cmake fix - now Caffe complains when cmake is executed if glog/gflags are not found.
Jeff Donahue [Tue, 28 Apr 2015 07:59:32 +0000 (00:59 -0700)]
Merge pull request #2365 from wakamori/fix_typo_in_gnuplot_example
Typo fix: the label titles in plot_log.gnuplot.example
Sebastián Ramírez [Fri, 3 Apr 2015 01:01:24 +0000 (20:01 -0500)]
Import Pandas in HDF5 IPython notebook. Fix for issue BVLC/caffe#2247
Jon Long [Sun, 26 Apr 2015 22:02:26 +0000 (15:02 -0700)]
Merge pull request #2370 from gdh1995/master
move CPU_ONLY to right place
gdh1995 [Sun, 26 Apr 2015 14:52:41 +0000 (22:52 +0800)]
Net::Update: CPU_ONLY is in wrong place
gdh1995 [Sun, 26 Apr 2015 14:51:21 +0000 (22:51 +0800)]
fix a typo that GFLAGS_GFLAGS_H_ -> GFLAGS_GFAGS_H_
Takuma Wakamori [Sat, 25 Apr 2015 08:09:43 +0000 (17:09 +0900)]
fix typo: swap the titles of xlabel and ylabel
Jon Long [Sat, 25 Apr 2015 03:26:06 +0000 (20:26 -0700)]
Merge pull request #2352 from pgao/rcnn-fix
Fix RCNN model fetching script
Jonathan L Long [Sat, 25 Apr 2015 02:55:31 +0000 (19:55 -0700)]
Merge pull request #2330 from flx42/include_config_file_check
Jonathan L Long [Sat, 25 Apr 2015 02:52:33 +0000 (19:52 -0700)]
clarify Makefile.config check
PETER_GAO [Wed, 22 Apr 2015 18:33:41 +0000 (11:33 -0700)]
Fix RCNN model fetching script
Nick Carlevaris-Bianco [Tue, 21 Apr 2015 07:44:47 +0000 (17:14 +0930)]
added epsilon to prevent possible division by zero in gradient calculation
Felix Abecassis [Fri, 17 Apr 2015 22:53:12 +0000 (15:53 -0700)]
Abort Makefile parsing if the configuration file cannot be found.
Evan Shelhamer [Fri, 17 Apr 2015 19:26:48 +0000 (12:26 -0700)]
set default DISTRIBUTE_DIR -- fix #2328
Nick Carlevaris-Bianco [Fri, 17 Apr 2015 04:46:26 +0000 (14:16 +0930)]
Fixed contrastive loss layer to be the same as proposed in Hadsell et al 2006
Evan Shelhamer [Fri, 10 Apr 2015 18:01:33 +0000 (11:01 -0700)]
Merge pull request #2295 from akiomik/patch-1
[docs] fix brew command for OS X install
Akiomi KAMAKURA [Fri, 10 Apr 2015 06:48:41 +0000 (15:48 +0900)]
improved installation for osx
Evan Shelhamer [Wed, 8 Apr 2015 22:44:36 +0000 (15:44 -0700)]
Merge pull request #2287 from eerwitt/web-demo-import
[example] change `import Image` for forward compatibility
e3 [Wed, 8 Apr 2015 22:00:36 +0000 (15:00 -0700)]
Changing Image import to be imported from PIL.
Ashwani001 [Tue, 7 Apr 2015 09:44:01 +0000 (17:44 +0800)]
Update generate_sample_data.py
Changed os.path.dirname(__file__) as it was returning empty...
Evan Shelhamer [Sun, 5 Apr 2015 18:47:49 +0000 (11:47 -0700)]
[docs] switch lmdb url for manual install, tweak formatting
Evan Shelhamer [Tue, 31 Mar 2015 18:14:30 +0000 (11:14 -0700)]
Merge pull request #2224 from small-yellow-duck/master
[build] check if CPU_ONLY is set when determining CUDA version
Evan Shelhamer [Tue, 31 Mar 2015 18:13:20 +0000 (11:13 -0700)]
Merge pull request #2231 from tnarihi/fix-travis-miniconda
Fix Travis: no need to remove libm in new Miniconda
Takuya Narihira [Tue, 31 Mar 2015 02:52:43 +0000 (19:52 -0700)]
Fix: libm.* doesn not exist
small-yellow-duck [Sun, 29 Mar 2015 21:30:21 +0000 (14:30 -0700)]
Check if CPU_ONLY is set when determining CUDA version
Previously, CUDA_VERSION would appear to be < 7 if there was no CUDA
installed, and that would generate the wrong C++ flags for compiling on
recent OSX versions. Instead, skip the CUDA version check if CPU_ONLY is
set. This change only affects CPU_ONLY installations.
Evan Shelhamer [Fri, 27 Mar 2015 22:58:14 +0000 (15:58 -0700)]
Merge pull request #2192 from lukeyeager/remove-scikit-learn
Remove scikit-learn dependency -- the need is noted in the relevant example
Jon Long [Fri, 27 Mar 2015 22:27:43 +0000 (15:27 -0700)]
Merge pull request #2199 from lukeyeager/downgrade-pillow
Downgrade Pillow pip requirement
Evan Shelhamer [Thu, 26 Mar 2015 23:50:52 +0000 (16:50 -0700)]
Merge pull request #2211 from nsubtil/fix-cudnn-algo
Fallback to different cuDNN algorithm when under memory pressure; fix #2197
Nuno Subtil [Tue, 24 Mar 2015 22:48:16 +0000 (15:48 -0700)]
Fallback to different cuDNN algorithm when under memory pressure
CUDNN_CONVOLUTION_FWD_PREFER_FASTEST requires a lot of GPU memory, which may
not always be available. Add a fallback path that uses
CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM when the allocation fails.
Luke Yeager [Wed, 25 Mar 2015 19:42:17 +0000 (12:42 -0700)]
Downgrade Pillow pip requirement
2.7.0 isn't really necessary - 2.3.0 is sufficient. This is the version
available on Ubuntu 14.04 via apt-get, and seems to be a reasonable lowest
common denominator in general.
http://pillow.readthedocs.org/installation.html#old-versions
Jeff Donahue [Wed, 25 Mar 2015 17:42:22 +0000 (10:42 -0700)]
Merge pull request #2160 from TorosFanny/master
change resorce to resource
Luke Yeager [Wed, 25 Mar 2015 01:15:08 +0000 (18:15 -0700)]
Add note in example about installing scikit-learn
Luke Yeager [Wed, 25 Mar 2015 00:42:56 +0000 (17:42 -0700)]
Remove scikit-learn dependency
Evan Shelhamer [Tue, 24 Mar 2015 21:49:31 +0000 (14:49 -0700)]
Merge pull request #2038 from shelhamer/cudnn-r2
cuDNN v2
Evan Shelhamer [Tue, 24 Mar 2015 21:17:57 +0000 (14:17 -0700)]
note cuDNN v2 convolutional TODOs
Evan Shelhamer [Tue, 17 Feb 2015 01:18:13 +0000 (17:18 -0800)]
cuDNN pooling can pad now