pytorch/caffe2/python
Alexander Sidorov bf50599c70 Layered LSTM (naive version)
Summary:
This is a naive layering approroach till we have a better
one. It could be c++ based and support diagonal execution. Not integrating into main LSTM API yet as this might be revised a bit. Would like to land so we can compare current implementation in the benchmark and also use this as an example of how LSTMs could be combined (as some folks are doing similar things with some variations).

Later we can LSTM() support API of layered_LSTM() and also change it under the hood so it stacks cells into a bigger cell instead. This way if we make RNN op use a kind of a DAG net, then RNN op can provide more parallelizm in stacked cells.

Reviewed By: urikz

Differential Revision: D4936015

fbshipit-source-id: b1e25f12d985dda582f0c67d9a02508027e5497f
2017-04-27 19:16:58 -07:00
..
docs doxygen python block added 2017-03-29 06:46:16 -07:00
examples resnet train print loss and accuracy 2017-04-25 16:03:58 -07:00
helpers fix LRN order 2017-04-27 16:46:47 -07:00
layers Remove loss ops from eval net 2017-04-26 12:46:25 -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
models Move BeamSearchForwardOnly to OSS 2017-04-27 13:35:53 -07:00
operator_test Layered LSTM (naive version) 2017-04-27 19:16:58 -07:00
predictor Re-apply #266 2017-04-25 21:17:04 -07:00
_import_c_extension.py doxygen python block added 2017-03-29 06:46:16 -07:00
attention.py unbreak test_seq2seq_caffe2_model_cnn_one_stack_encoder 2017-04-20 10:06:25 -07:00
brew.py Adding add_weight_decay and image_input to brew module 2017-04-25 16:03:58 -07:00
brew_test.py rename model_helpers to brew and lowercase all helper functions 2017-04-24 15:52:26 -07:00
caffe_translator.py Add Reduction layer in caffe_translator 2017-04-07 16:17:07 -07:00
caffe_translator_test.py Allow test discovery in caffe2/python/ 2017-03-14 18:16:41 -07:00
checkpoint.py Adds interfaces to check the existence of a DB 2017-04-11 14:07:49 -07:00
checkpoint_test.py Adds interfaces to check the existence of a DB 2017-04-11 14:07:49 -07:00
CMakeLists.txt
cnn.py fix LRN order 2017-04-27 16:46:47 -07:00
context.py doxygen python block added 2017-03-29 06:46:16 -07:00
context_test.py Make ContextManager thread-safe 2017-02-13 19:45:35 -08:00
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 MKL related files with review comments incorporated 2017-04-25 00:31:29 -07:00
core_gradients_test.py Fix backward pass computation when an input is used in a Fill-op input for shape 2017-04-11 19:32:22 -07:00
core_test.py NextScopedBlob with well-defined behavior and respect namescope 2017-02-16 17:16:36 -08:00
crf.py cuDNN version of TransposeOp 2017-04-03 13:33:10 -07:00
data_parallel_model.py share forward activation blobs + pass unused free blobs down all branches + use shape infernece 2017-04-25 14:23:25 -07:00
data_parallel_model_test.py RNNCell, LSTMCell, LSTMWithAttentionCell 2017-04-18 00:47:20 -07:00
data_workers.py Free scratch blobs when data workers exits, add utility function to reset blobs 2017-04-26 13:40:13 -07:00
data_workers_test.py Allow stopping of specific data workers + specify c2 queue size 2017-04-26 11:18:40 -07:00
dataio.py doxygen python block added 2017-03-29 06:46:16 -07:00
dataio_test.py Stop multi_reader if we run out of data before max_examples 2017-03-10 18:03:57 -08:00
dataset.py doxygen python block added 2017-03-29 06:46:16 -07:00
db_test.py
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
experiment_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
extension_loader.py Make extension loader properly handle visibility. 2017-03-30 14:38:38 -07:00
gradient_check_test.py gradient checker for nets 2017-03-28 13:03:14 -07:00
gradient_checker.py add net gradient check 2017-04-19 15:19:55 -07:00
hsm_util.py doxygen python block added 2017-03-29 06:46:16 -07:00
hypothesis_test.py Fix tests for ops without a CUDA backend 2017-04-24 15:52:25 -07:00
hypothesis_test_util.py Add option to control the size of lengths tensor 2017-04-20 09:53:22 -07:00
layer_model_helper.py rename ModelHelperBase 2017-04-24 15:52:26 -07:00
layer_model_instantiator.py layer_model_instantiator: filter layers by tags 2017-04-17 14:18:27 -07:00
layer_test_util.py Re-apply #266 2017-04-25 21:17:04 -07:00
layers_test.py Remove loss ops from eval net 2017-04-26 12:46:25 -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: support dropping hidden / cell states when sequence 2017-04-27 11:47:29 -07:00
memonger.py share forward activation blobs + pass unused free blobs down all branches + use shape infernece 2017-04-25 14:23:25 -07:00
memonger_test.py share forward activation blobs + pass unused free blobs down all branches + use shape infernece 2017-04-25 14:23:25 -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 Replaces the non-existing _param_init_net net by raising an exception. 2017-04-26 10:35:45 -07:00
mpi_python.cc
muji.py doxygen python block added 2017-03-29 06:46:16 -07:00
muji_test.py
net_builder.py doxygen python block added 2017-03-29 06:46:16 -07:00
net_builder_test.py Allow test discovery in caffe2/python/ 2017-03-14 18:16:41 -07:00
net_drawer.py doxygen python block added 2017-03-29 06:46:16 -07:00
net_printer.py doxygen python block added 2017-03-29 06:46:16 -07:00
net_printer_test.py
optimizer.py Returns auxiliary parameters in the optimizers. 2017-04-17 10:16:32 -07:00
optimizer_test.py Returns auxiliary parameters in the optimizers. 2017-04-17 10:16:32 -07:00
optimizer_test_util.py create_net: explicitly specify if one wants to overwrite the network. 2017-04-17 21:46:53 -07:00
pipeline.py doxygen python block added 2017-03-29 06:46:16 -07:00
predictor_constants.py Re-apply #266 2017-04-25 21:17:04 -07:00
pybind_state.cc create_net: explicitly specify if one wants to overwrite the network. 2017-04-17 21:46:53 -07:00
pybind_state.h bugfix for Windows, esp. VS 2017 2017-03-21 05:17:59 -07:00
pybind_state_gpu.cc Cudnn v6 2017-02-28 17:46:33 -08:00
pybind_state_mkl.cc
python_op_test.py
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 LSTM: support dropping hidden / cell states when sequence 2017-04-27 11:47:29 -07:00
rnn_cell.py Layered LSTM (naive version) 2017-04-27 19:16:58 -07:00
schema.py Improving usability of schema 2017-04-25 10:32:08 -07:00
schema_test.py fix getting empty struct 2017-04-19 22:36:05 -07:00
scope.py Fix corruption of NameScope when exception is thrown 2017-04-24 22:46:27 -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 NextScopedBlob with well-defined behavior and respect namescope 2017-02-16 17:16:36 -08:00
sparse_to_dense_mask_test.py
task.py doxygen python block added 2017-03-29 06:46:16 -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 Free scratch blobs when data workers exits, add utility function to reset blobs 2017-04-26 13:40:13 -07:00
visualize.py doxygen python block added 2017-03-29 06:46:16 -07:00
workspace.py create_net: explicitly specify if one wants to overwrite the network. 2017-04-17 21:46:53 -07:00
workspace_test.py create_net: explicitly specify if one wants to overwrite the network. 2017-04-17 21:46:53 -07:00