pytorch/caffe2/python
Alexander Sidorov bb9077a6cd Network forward / backward equality checker
Summary:
In some cases you have an optimized network and a normal
one. And you would like to make sure they produce same results. If
math under the hood is the same, you could do this with a very high
precision compare to a traditional numerical gradient check. One of
the application - RNNs. There we can unroll RNN into Caffe2 graph and
make sure result is the same as in the optimized version using
RecurrentNetworkOp.

Another possible application - graph transformations. We can verify
that after that nets produce same gradients (cc akyrola on memonger,
bwasti on other transformation ideas)

Reviewed By: bwasti

Differential Revision: D5200855

fbshipit-source-id: 0196af187f0c2feb33de4778ea08d0d288fe1017
2017-06-08 17:48:47 -07:00
..
docs fixed operators schema output to work from only this file for OSS 2017-06-02 13:47:25 -07:00
examples resnet50: fetch right lr 2017-06-07 21:46:35 -07:00
helpers add_helper_function_ElementwiseLinear_op 2017-06-07 13:49:48 -07:00
layers Feature importance in dper 2.0: build network representation 2017-06-05 18:03:34 -07:00
mint doxygen python block added 2017-03-29 06:46:16 -07:00
mkl MKL related files with review comments incorporated 2017-04-25 00:31:29 -07:00
modeling Create ParameterSharing abstraction for Caffe2. 2017-06-05 11:49:54 -07:00
models Probably fixed memonger 2017-06-08 09:19:24 -07:00
operator_test Fixing broken Python tests 2017-06-08 13:34:46 -07:00
predictor Feature importance in dper 2.0: build network representation 2017-06-05 18:03:34 -07:00
rnn CuDNN comparison mode 2017-05-20 15:19:43 -07:00
_import_c_extension.py doxygen python block added 2017-03-29 06:46:16 -07:00
attention.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
brew.py add_helper_function_ElementwiseLinear_op 2017-06-07 13:49:48 -07:00
brew_test.py Fixing broken Python tests 2017-06-08 13:34:46 -07:00
caffe_translator.py Fixed typo caffe_translator.py, fixes bug #397 2017-05-24 12:18:32 -07:00
caffe_translator_test.py
checkpoint.py Adds interfaces to check the existence of a DB 2017-04-11 14:07:49 -07:00
checkpoint_test.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
CMakeLists.txt
cnn.py cnnmodelhelper deprecate warning 2017-05-18 23:35:26 -07:00
context.py doxygen python block added 2017-03-29 06:46:16 -07:00
context_test.py
control.py doxygen python block added 2017-03-29 06:46:16 -07:00
control_test.py
convnet_benchmarks.py doxygen python block added 2017-03-29 06:46:16 -07:00
convnet_benchmarks_test.py
core.py ZeroGradient op 2017-06-08 16:02:38 -07:00
core_gradients_test.py ZeroGradient op 2017-06-08 16:02:38 -07:00
core_test.py Fixing broken Python tests 2017-06-08 13:34:46 -07:00
crf.py Integrate CRF in DeepText + New caffe2 operator for viterbi decode 2017-05-01 20:39:41 -07:00
data_parallel_model.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
data_parallel_model_test.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
data_workers.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
data_workers_test.py add test for input order 2017-05-19 23:46:38 -07:00
dataio.py checkpointing for distributed hive reader. 2017-06-06 14:20:06 -07:00
dataio_test.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
dataset.py doxygen python block added 2017-03-29 06:46:16 -07:00
db_test.py String-related fixes for Python 3 2017-05-26 16:04:32 -07:00
device_checker.py doxygen python block added 2017-03-29 06:46:16 -07:00
dyndep.py doxygen python block added 2017-03-29 06:46:16 -07:00
empty.so Adding video data layer for caffe2 2017-05-05 14:16:38 -07:00
experiment_util.py Port Xray OC workflow to elastic_data_parallel_model 2017-05-01 00:32:47 -07:00
extension_loader.py Make extension loader properly handle visibility. 2017-03-30 14:38:38 -07:00
gradient_check_test.py Network forward / backward equality checker 2017-06-08 17:48:47 -07:00
gradient_checker.py Network forward / backward equality checker 2017-06-08 17:48:47 -07:00
hsm_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
hypothesis_test.py Enable testing the GPU implementations of Adagrad and Adam 2017-06-01 18:10:57 -07:00
hypothesis_test_util.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
layer_model_helper.py fix for realtime training. 2017-05-26 23:49:40 -07:00
layer_model_instantiator.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
layer_test_util.py Add batch normalization layer 2017-05-26 16:46:52 -07:00
layers_test.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
load_save_test.py Allow Load operator to load into overriden names 2017-04-27 01:18:12 -07:00
lstm_benchmark.py lstm_benchmark use rnn_cell.LSTM multicell + assertion 2017-05-04 17:02:32 -07:00
memonger.py Probably fixed memonger 2017-06-08 09:19:24 -07:00
memonger_test.py Probably fixed memonger 2017-06-08 09:19:24 -07:00
mkl_test_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
model_device_test.py
model_helper.py Support fetching of the parameters from the global namescope by '' 2017-06-05 22:32:39 -07:00
mpi_python.cc Fix pybind11 module name for MPI helpers 2017-05-02 23:18:50 -07:00
muji.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
muji_test.py Fixes range/xrange for Python 3 2017-06-07 00:04:26 -07:00
net_builder.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
net_builder_test.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
net_drawer.py net_drawer: --input is required 2017-05-04 11:45:57 -07:00
net_printer.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
net_printer_test.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
optimizer.py Support for position weighted in distributed PS 2017-06-05 17:04:42 -07:00
optimizer_test.py add_weight_decay + restore weight decay to resnet50_trainer 2017-06-02 14:16:56 -07:00
optimizer_test_util.py Fp16 training initializers 2017-06-01 08:34:46 -07:00
pipeline.py Profiles pipe stages. 2017-05-24 12:02:03 -07:00
predictor_constants.py Re-apply #266 2017-04-25 21:17:04 -07:00
pybind_state.cc Infer input and output device from OperatorDef through OperatorSchema 2017-06-05 23:47:33 -07:00
pybind_state.h String-related fixes for Python 3 2017-05-26 16:04:32 -07:00
pybind_state_gpu.cc
pybind_state_mkl.cc
python_op_test.py Allow subsets of gradient outputs / inputs in Python ops 2017-06-05 12:52:01 -07:00
queue_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
record_queue.py doxygen python block added 2017-03-29 06:46:16 -07:00
recurrent.py guard against special case of in-place operation 2017-06-07 12:33:31 -07:00
rnn_cell.py Fixes zip/izip for Python 3 2017-06-07 00:04:26 -07:00
schema.py Fix from_column_list 2017-06-06 01:17:02 -07:00
schema_test.py Fix from_column_list 2017-06-06 01:17:02 -07:00
scope.py quick fix future issue with brew/core/schema/workspace/scope/utils.py 2017-06-05 12:01:48 -07:00
scope_test.py Fix corruption of NameScope when exception is thrown 2017-04-24 22:46:27 -07:00
session.py doxygen python block added 2017-03-29 06:46:16 -07:00
session_test.py Warn on setting blob on Scalar 2017-05-01 20:18:30 -07:00
sparse_to_dense_mask_test.py String-related fixes for Python 3 2017-05-26 16:04:32 -07:00
task.py Remove map() and filter() in favor of comprehensions 2017-05-30 15:32:58 -07:00
test_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
text_file_reader.py doxygen python block added 2017-03-29 06:46:16 -07:00
timeout_guard.py doxygen python block added 2017-03-29 06:46:16 -07:00
toy_regression_test.py
tt_core.py doxygen python block added 2017-03-29 06:46:16 -07:00
tt_core_test.py
utils.py quick fix future issue with brew/core/schema/workspace/scope/utils.py 2017-06-05 12:01:48 -07:00
visualize.py doxygen python block added 2017-03-29 06:46:16 -07:00
workspace.py quick fix future issue with brew/core/schema/workspace/scope/utils.py 2017-06-05 12:01:48 -07:00
workspace_test.py String-related fixes for Python 3 2017-05-26 16:04:32 -07:00