returnn 1.20240919.112211__tar.gz → 1.20240919.155206__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of returnn might be problematic. Click here for more details.
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/PKG-INFO +1 -1
- returnn-1.20240919.155206/_setup_info_generated.py +2 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/decoder/transformer.py +4 -2
- returnn-1.20240919.155206/returnn/frontend/encoder/transformer.py +253 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn.egg-info/PKG-INFO +1 -1
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn.egg-info/SOURCES.txt +1 -0
- returnn-1.20240919.112211/_setup_info_generated.py +0 -2
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/.editorconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/.gitignore +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/.gitmodules +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/.kateconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/CHANGELOG.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/CODEOWNERS +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/CONTRIBUTING.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/LICENSE +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/MANIFEST.in +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/README.rst +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/12AX.cluster_map +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/_setup_returnn_env.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-fwd.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-horovod-mpi.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-horovod-mpi.py.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-horovod-mpi.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-hyper-param-tuning.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-iter-dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-list-devices.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-lua-torch-layer.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-pretrain.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-record-and-push-to-webserver.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-returnn-as-framework.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-rf-pt-benchmark.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-rf.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-rhn-enwik8.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-sprint-interface.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-att-copy.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-attention.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-enc-dec.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-hard-att-copy.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-lstm-benchmark.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm2.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-neural-transducer.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-rec-explicit-lstm.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-rec-explicit-rnn.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-rec-self-att.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-search-compiled-graph.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-timit-lstm-ctc.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-torch.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/README.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/chars.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/config_demo +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/config_fwd +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/config_real +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/decode.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/go.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/lines.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/split/eval.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/split/train.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/split/valid.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/create_test_h5.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/forwardconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/go.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/trainconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/go.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/pyproject.toml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/requirements.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/__main__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/__old_mod_loader__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/__setup__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/config.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/audio.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/basic.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/bundle_file.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/cached.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/cached2.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/distrib_files.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/generating.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/hdf.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/lm.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/map.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/meta.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/multi_proc.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/normalization_data.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/numpy_dump.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/postprocessing.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/raw_wav.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/sprint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/stereo.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/util/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/util/feature_extraction.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/util/strings.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/util/vocabulary.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/engine/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/engine/base.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/engine/batch.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/__main__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/.git +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/edit.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/reroute.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/select.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/subgraph.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/transform.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/graph_editor/util.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/forward_iface.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/backend.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/backend.hpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/module.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/module.hpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/py_utils.hpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/tensor_ops.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_native/tensor_ops.hpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_numpy_backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_random_journal.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/_utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/array_.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/attention.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/audio/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/audio/mel.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/audio/specaugment.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/build_from_dict.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/cond.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/const.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/container.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/control_flow_ctx.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/conv.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/conversions/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/conversions/espnet_e_branchformer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/conversions/hf_llama.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/conversions/torch_nn.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/decoder/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/device.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/dims.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/dropout.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/dtype.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/encoder/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/encoder/base.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/encoder/conformer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/encoder/e_branchformer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/gradient.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/graph.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/hooks.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/init.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/label_smoothing.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/linear.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/loop.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/loss.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/math_.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/matmul.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/module.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/normalization.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/parameter.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/parametrizations.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/parametrize.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/piecewise_linear.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/rand.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/rec.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/reduce.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/run_ctx.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/signal.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/state.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/stepwise_scheduler.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/tensor_array.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/types.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/import_/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/import_/common.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/import_/git.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/import_/import_.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/learning_rate_control.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/log.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/native_op.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/native_op.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/pretrain.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/cache.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/control.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/error_signals.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/extern_interface.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/sprint/interface.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/_dim_extra.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/_tensor_extra.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/_tensor_mixin_base.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/_tensor_op_overloads.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/control_flow_ctx.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/dim.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/marked_dim.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/tensor.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/tensor_dict.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tensor/utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/compat.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/data_pipeline.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/distributed.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/engine.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/_backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/_utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/cond.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/config_entry_points.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/dims.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/layer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/loop.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/make_layer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/masked_computation.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_low_level/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/frontend_low_level/_backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/horovod.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/hyper_param_tuning.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/base.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/basic.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/rec.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/segmental_model.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/signal_processing.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/layers/variable.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/native_op.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/network.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/sprint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/updater.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/basic.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/data.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/gradient_checkpoint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/ken_lm.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/tf/util/open_fst.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/extern_data.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/pipeline.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/queued_data_iter.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/data/tensor_utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/distributed.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/engine.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/frontend/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/frontend/_backend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/frontend/_rand.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/frontend/bridge.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/frontend/raw_ops.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/updater.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/array_.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/diagnose_gpu.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/gradient_checkpoint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/module.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/torch/util/scaled_gradient.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/__init__.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/basic.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/better_exchook.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/bpe.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/debug.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/debug_helpers.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/file_cache.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/fsa.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/literal_py_to_pickle.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/math.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/multi_proc_non_daemonic_spawn.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/native_code_compiler.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/pprint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/py-to-pickle.cpp +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/py_compat.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/py_ext_mod_compiler.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/result_with_reason.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/sig_proc.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/task_system.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/train_proc_manager.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/util/watch_memory.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn.egg-info/dependency_links.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn.egg-info/top_level.txt +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/rnn.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/setup.cfg +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/setup.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/DummySprintExec.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm-inspection-profile.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/.gitignore +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/.name +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/misc.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/modules.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/returnn.iml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/_set_num_threads1.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/_setup_returnn_env.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/_setup_test_env.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/bpe-unicode-demo.codes +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/bpe-unicode-demo.vocab +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/lexicon_opt.fst +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/lexicon_opt.isyms +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/lexicon_opt.jpg +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/lexicon_opt.osyms +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/lint_common.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/pycharm-inspect.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/pylint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/returnn-as-framework.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/rf_utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/spelling.dic +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Config.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Fsa.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_GeneratingDataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_HDFDataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_LearningRateControl.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Log.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_MultiProcDataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Pretrain.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_ResNet.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_SprintDataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_SprintInterface.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFEngine.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFNativeOp.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFNetworkLayer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFNetworkRecLayer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFNetworkSigProcLayer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFUpdater.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TFUtil.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TF_determinism.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TaskSystem.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TaskSystem_SharedMem.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_TranslationDataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_Util.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_demos.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_fork_exec.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_hdf_dump.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_array.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_attention.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_base.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_cond.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_const.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_container.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_conv.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_decoder_transformer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_encoder_conformer.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_gradient.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_label_smoothing.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_loop.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_math.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_normalization.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_piecewise_linear.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_rec.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_reduce.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_rf_signal.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_tensor.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_tools.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_torch_dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_torch_engine.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_torch_frontend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_torch_internal_frontend.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/test_torch_util.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tests/torch_utils.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/_setup_returnn_env.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/analyze-dataset-batches.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/bliss-collect-seq-lens.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/bliss-dump-text.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/bliss-get-segment-names.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/bliss-to-ogg-zip.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/bpe-create-lexicon.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/calculate-word-error-rate.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/cleanup-old-models.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/collect-orth-symbols.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/collect-words.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/compile_native_op.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/compile_tf_graph.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/debug-dump-search-scores.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/debug-plot-search-scores.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-dataset-raw-strings.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-forward-stats.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-forward.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-network-json.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/dump-pickle.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/extract_state_tying_from_dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/get-attention-weights.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/get-best-model-epoch.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/hdf_dump.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/hdf_dump_translation_dataset.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/import-blocks-mt-model.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/import-t2t-mt-model.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/.gitignore +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/Makefile +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/README.md +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/libs_list +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/state_vars_list +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/example/tensor_names_list +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/file.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/main.cc +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/rescorer.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/vocabulary.cc +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/lattice_rescorer/vocabulary.h +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/tf_avg_checkpoints.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/tf_inspect_checkpoint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/tf_inspect_summary_log.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/torch_avg_checkpoints.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/torch_export_to_onnx.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/torch_inspect_checkpoint.py +0 -0
- {returnn-1.20240919.112211 → returnn-1.20240919.155206}/tools/torch_inspect_checkpoint_and_opt.py +0 -0
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/frontend/decoder/transformer.py
RENAMED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"""
|
|
2
2
|
(Label-sync) Transformer decoder, optionally including cross attention to encoder
|
|
3
3
|
|
|
4
|
+
Also see :mod:`returnn.frontend.encoder.transformer`.
|
|
5
|
+
|
|
4
6
|
References:
|
|
5
7
|
|
|
6
8
|
(Original paper of course)
|
|
@@ -25,7 +27,7 @@ from returnn.tensor import Tensor, Dim, single_step_dim
|
|
|
25
27
|
|
|
26
28
|
class TransformerDecoder(rf.Module):
|
|
27
29
|
"""
|
|
28
|
-
Represents Transformer decoder architecture
|
|
30
|
+
Represents the Transformer decoder architecture
|
|
29
31
|
"""
|
|
30
32
|
|
|
31
33
|
def __init__(
|
|
@@ -259,7 +261,7 @@ class TransformerDecoderLayer(rf.Module):
|
|
|
259
261
|
:param ff_activation: activation function for feed-forward network
|
|
260
262
|
:param dropout: the dropout value for the FF block
|
|
261
263
|
:param num_heads: the number of attention heads
|
|
262
|
-
:param self_att: the self-attention layer.
|
|
264
|
+
:param self_att: the self-attention layer. CausalSelfAttention originally and default
|
|
263
265
|
:param self_att_opts: options for the self-attention layer, for :class:`nn.RelPosSelfAttention`
|
|
264
266
|
:param att_dropout: attention dropout value
|
|
265
267
|
:param norm: pre-normalization for FF and attention blocks
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Transformer encoder
|
|
3
|
+
|
|
4
|
+
Also see :mod:`returnn.frontend.decoder.transformer`.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from __future__ import annotations
|
|
8
|
+
from typing import Optional, Union, Any, Callable, Sequence, Dict
|
|
9
|
+
import functools
|
|
10
|
+
import copy as _copy
|
|
11
|
+
from types import FunctionType
|
|
12
|
+
from returnn.util.basic import NotSpecified
|
|
13
|
+
from returnn.tensor import Tensor, Dim
|
|
14
|
+
import returnn.frontend as rf
|
|
15
|
+
from returnn.frontend.decoder.transformer import make_norm, FeedForward
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class TransformerEncoder(rf.Module):
|
|
19
|
+
"""
|
|
20
|
+
Represents the Transformer encoder architecture
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
def __init__(
|
|
24
|
+
self,
|
|
25
|
+
vocab_dim: Dim,
|
|
26
|
+
model_dim: Union[Dim, int] = Dim(512, name="transformer-enc-default-model-dim"),
|
|
27
|
+
*,
|
|
28
|
+
num_layers: int,
|
|
29
|
+
ff: Union[type, Dict[str, Any], rf.Module] = NotSpecified,
|
|
30
|
+
pos_enc: Union[None, Callable, Dict[str, Any], rf.Module] = rf.sinusoidal_positional_encoding,
|
|
31
|
+
dropout: float = 0.1,
|
|
32
|
+
num_heads: int = 8,
|
|
33
|
+
att_dropout: float = 0.1,
|
|
34
|
+
norm: Union[type, Dict[str, Any], rf.Module, Callable] = rf.LayerNorm,
|
|
35
|
+
decoder_layer: Optional[Union[TransformerEncoderLayer, rf.Module, type, Any]] = None,
|
|
36
|
+
embed_dim: Optional[Dim] = None,
|
|
37
|
+
input_embedding_scale: float = None,
|
|
38
|
+
input_dropout: float = None,
|
|
39
|
+
sequential=rf.Sequential,
|
|
40
|
+
):
|
|
41
|
+
"""
|
|
42
|
+
:param vocab_dim:
|
|
43
|
+
:param model_dim: the output feature dimension
|
|
44
|
+
:param num_layers: the number of encoder layers
|
|
45
|
+
:param ff: feed-forward / MLP block. Default is :class:`FeedForward`
|
|
46
|
+
:param pos_enc: positional encoding. Default is sinusoidal positional encoding.
|
|
47
|
+
:param dropout: the dropout value for the FF block
|
|
48
|
+
:param num_heads: the number of attention heads
|
|
49
|
+
:param att_dropout: attention dropout value
|
|
50
|
+
:param norm: pre-normalization for FF and attention blocks
|
|
51
|
+
:param decoder_layer: an instance of :class:`TransformerDecoderLayer` or similar
|
|
52
|
+
:param embed_dim: if given, will first have an embedding [vocab,embed] and then a linear [embed,model].
|
|
53
|
+
:param input_embedding_scale:
|
|
54
|
+
:param input_dropout:
|
|
55
|
+
:param sequential:
|
|
56
|
+
"""
|
|
57
|
+
super().__init__()
|
|
58
|
+
|
|
59
|
+
if not isinstance(vocab_dim, Dim):
|
|
60
|
+
raise TypeError(f"TransformerDecoder: unexpected vocab_dim {vocab_dim!r} type {type(vocab_dim)}")
|
|
61
|
+
if isinstance(model_dim, int):
|
|
62
|
+
model_dim = Dim(model_dim, name="transformer-dec-model-dim")
|
|
63
|
+
if not isinstance(model_dim, Dim):
|
|
64
|
+
raise TypeError(f"TransformerDecoder: unexpected model_dim {model_dim!r} type {type(model_dim)}")
|
|
65
|
+
|
|
66
|
+
self.vocab_dim = vocab_dim
|
|
67
|
+
self.model_dim = model_dim
|
|
68
|
+
self.embed_dim = embed_dim
|
|
69
|
+
|
|
70
|
+
# We could make this optional or configurable if we ever need to.
|
|
71
|
+
# Or maybe you would just have another separate implementation of this module then...
|
|
72
|
+
self.input_embedding = rf.Embedding(vocab_dim, embed_dim or model_dim)
|
|
73
|
+
|
|
74
|
+
self.input_embedding_proj = None
|
|
75
|
+
if embed_dim:
|
|
76
|
+
self.input_embedding_proj = rf.Linear(embed_dim, model_dim, with_bias=False)
|
|
77
|
+
|
|
78
|
+
if pos_enc is None:
|
|
79
|
+
pass
|
|
80
|
+
elif isinstance(pos_enc, dict):
|
|
81
|
+
pos_enc = rf.build_from_dict(
|
|
82
|
+
pos_enc, feat_dim=embed_dim or model_dim, dtype=self.input_embedding.weight.dtype
|
|
83
|
+
)
|
|
84
|
+
elif isinstance(pos_enc, rf.Module):
|
|
85
|
+
pass
|
|
86
|
+
elif isinstance(pos_enc, FunctionType):
|
|
87
|
+
pos_enc = functools.partial(
|
|
88
|
+
pos_enc, feat_dim=embed_dim or model_dim, dtype=self.input_embedding.weight.dtype
|
|
89
|
+
)
|
|
90
|
+
else:
|
|
91
|
+
raise TypeError(f"unexpected pos_enc type {pos_enc!r}")
|
|
92
|
+
self.pos_enc = pos_enc
|
|
93
|
+
if input_embedding_scale is None:
|
|
94
|
+
input_embedding_scale = model_dim.dimension**0.5
|
|
95
|
+
self.input_embedding_scale = input_embedding_scale
|
|
96
|
+
if input_dropout is None:
|
|
97
|
+
input_dropout = dropout
|
|
98
|
+
self.input_dropout = input_dropout
|
|
99
|
+
|
|
100
|
+
if not decoder_layer or isinstance(decoder_layer, type):
|
|
101
|
+
decoder_layer_opts_ = dict(
|
|
102
|
+
out_dim=model_dim,
|
|
103
|
+
ff=ff,
|
|
104
|
+
dropout=dropout,
|
|
105
|
+
num_heads=num_heads,
|
|
106
|
+
att_dropout=att_dropout,
|
|
107
|
+
norm=norm,
|
|
108
|
+
)
|
|
109
|
+
if not decoder_layer:
|
|
110
|
+
decoder_layer = TransformerEncoderLayer(**decoder_layer_opts_)
|
|
111
|
+
elif isinstance(decoder_layer, type):
|
|
112
|
+
decoder_layer = decoder_layer(**decoder_layer_opts_)
|
|
113
|
+
else:
|
|
114
|
+
raise TypeError(f"unexpected decoder_layer {decoder_layer!r}")
|
|
115
|
+
|
|
116
|
+
self.layers = sequential(_copy.deepcopy(decoder_layer) for _ in range(num_layers))
|
|
117
|
+
|
|
118
|
+
self.final_layer_norm = make_norm(norm, model_dim)
|
|
119
|
+
|
|
120
|
+
def default_initial_state(self, *, batch_dims: Sequence[Dim]) -> rf.State:
|
|
121
|
+
"""default initial state"""
|
|
122
|
+
state = rf.State({k: v.default_initial_state(batch_dims=batch_dims) for k, v in self.layers.items()})
|
|
123
|
+
state.pos = rf.zeros((), dtype="int32", device="cpu")
|
|
124
|
+
return state
|
|
125
|
+
|
|
126
|
+
def transform_encoder(self, encoder: Tensor, *, axis: Dim) -> rf.State:
|
|
127
|
+
"""
|
|
128
|
+
Transform encoder output.
|
|
129
|
+
Note that the Transformer decoder usually expects that layer-norm was applied already on the encoder output.
|
|
130
|
+
"""
|
|
131
|
+
return rf.State({k: v.transform_encoder(encoder, axis=axis) for k, v in self.layers.items()})
|
|
132
|
+
|
|
133
|
+
def __call__(
|
|
134
|
+
self, source: Tensor, *, spatial_dim: Dim, collected_outputs: Optional[Dict[str, Tensor]] = None
|
|
135
|
+
) -> Tensor:
|
|
136
|
+
"""
|
|
137
|
+
forward, single step or whole sequence.
|
|
138
|
+
|
|
139
|
+
:param source: labels
|
|
140
|
+
:param spatial_dim: single_step_dim or spatial dim of source
|
|
141
|
+
:param collected_outputs:
|
|
142
|
+
:return: final encoder output, after final layer norm
|
|
143
|
+
"""
|
|
144
|
+
decoded = self.input_embedding(source) * self.input_embedding_scale
|
|
145
|
+
if self.pos_enc is not None:
|
|
146
|
+
decoded = decoded + self.pos_enc(spatial_dim=spatial_dim)
|
|
147
|
+
decoded = rf.dropout(decoded, self.input_dropout)
|
|
148
|
+
if self.input_embedding_proj is not None:
|
|
149
|
+
decoded = self.input_embedding_proj(decoded)
|
|
150
|
+
|
|
151
|
+
for layer_name, layer in self.layers.items():
|
|
152
|
+
layer: TransformerEncoderLayer # or similar
|
|
153
|
+
decoded = layer(decoded, spatial_dim=spatial_dim)
|
|
154
|
+
if collected_outputs is not None:
|
|
155
|
+
collected_outputs[layer_name] = decoded
|
|
156
|
+
|
|
157
|
+
decoded = self.final_layer_norm(decoded)
|
|
158
|
+
return decoded
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
class TransformerEncoderLayer(rf.Module):
|
|
162
|
+
"""
|
|
163
|
+
Represents a Transformer encoder block
|
|
164
|
+
"""
|
|
165
|
+
|
|
166
|
+
def __init__(
|
|
167
|
+
self,
|
|
168
|
+
out_dim: Dim = Dim(512, name="transformer-enc-default-out-dim"),
|
|
169
|
+
*,
|
|
170
|
+
ff: Union[type, Dict[str, Any], rf.Module] = NotSpecified,
|
|
171
|
+
dropout: float = 0.1,
|
|
172
|
+
num_heads: int = 8,
|
|
173
|
+
self_att: Optional[
|
|
174
|
+
Union[rf.CausalSelfAttention, rf.RelPosCausalSelfAttention, rf.Module, type, Dict[str, Any]]
|
|
175
|
+
] = None,
|
|
176
|
+
att_dropout: float = 0.1,
|
|
177
|
+
norm: Union[type, Dict[str, Any], rf.Module, Callable] = rf.LayerNorm,
|
|
178
|
+
):
|
|
179
|
+
"""
|
|
180
|
+
:param out_dim: the output feature dimension
|
|
181
|
+
:param ff: feed-forward / MLP block. Default is :class:`FeedForward`
|
|
182
|
+
:param dropout: the dropout value for the FF block
|
|
183
|
+
:param num_heads: the number of attention heads
|
|
184
|
+
:param self_att: the self-attention layer. SelfAttention originally and default
|
|
185
|
+
:param att_dropout: attention dropout value
|
|
186
|
+
:param norm: pre-normalization for FF and attention blocks
|
|
187
|
+
"""
|
|
188
|
+
super().__init__()
|
|
189
|
+
|
|
190
|
+
self.dropout = dropout
|
|
191
|
+
self.dropout_broadcast = rf.dropout_broadcast_default()
|
|
192
|
+
self.out_dim = out_dim
|
|
193
|
+
|
|
194
|
+
if ff is NotSpecified:
|
|
195
|
+
ff = FeedForward
|
|
196
|
+
if isinstance(ff, rf.Module):
|
|
197
|
+
ff = _copy.deepcopy(ff)
|
|
198
|
+
else:
|
|
199
|
+
ff_kwargs = dict(out_dim=out_dim, dropout=dropout)
|
|
200
|
+
ff_kwargs = {k: v for (k, v) in ff_kwargs.items() if v is not NotSpecified}
|
|
201
|
+
if isinstance(ff, type):
|
|
202
|
+
ff = ff(**ff_kwargs)
|
|
203
|
+
elif isinstance(ff, dict):
|
|
204
|
+
ff = rf.build_from_dict(ff, **ff_kwargs)
|
|
205
|
+
else:
|
|
206
|
+
raise TypeError(f"unexpected ff type {ff!r}")
|
|
207
|
+
assert isinstance(ff, rf.Module)
|
|
208
|
+
|
|
209
|
+
self.ff = ff
|
|
210
|
+
self.ff_layer_norm = make_norm(norm, out_dim)
|
|
211
|
+
|
|
212
|
+
if self_att is None or isinstance(self_att, type) or isinstance(self_att, dict):
|
|
213
|
+
self_att_opts_ = dict(
|
|
214
|
+
in_dim=out_dim,
|
|
215
|
+
proj_dim=out_dim,
|
|
216
|
+
key_dim_total=out_dim,
|
|
217
|
+
value_dim_total=out_dim,
|
|
218
|
+
num_heads=num_heads,
|
|
219
|
+
att_dropout=att_dropout,
|
|
220
|
+
)
|
|
221
|
+
if self_att is None:
|
|
222
|
+
self.self_att = rf.SelfAttention(**self_att_opts_)
|
|
223
|
+
elif isinstance(self_att, type):
|
|
224
|
+
self.self_att = self_att(**self_att_opts_)
|
|
225
|
+
elif isinstance(self_att, dict):
|
|
226
|
+
self.self_att = rf.build_from_dict(self_att, **self_att_opts_)
|
|
227
|
+
else:
|
|
228
|
+
raise TypeError(f"unexpected self_att type {self_att!r}")
|
|
229
|
+
elif isinstance(self_att, rf.Module):
|
|
230
|
+
self.self_att = _copy.deepcopy(self_att)
|
|
231
|
+
else:
|
|
232
|
+
raise TypeError(f"unexpected self_att type {self_att!r}")
|
|
233
|
+
self.self_att_layer_norm = make_norm(norm, out_dim)
|
|
234
|
+
|
|
235
|
+
def default_initial_state(self, *, batch_dims: Sequence[Dim]) -> rf.State:
|
|
236
|
+
"""default initial state"""
|
|
237
|
+
return rf.State(self_att=self.self_att.default_initial_state(batch_dims=batch_dims))
|
|
238
|
+
|
|
239
|
+
def __call__(self, x: Tensor, *, spatial_dim: Dim) -> Tensor:
|
|
240
|
+
"""forward"""
|
|
241
|
+
# (multi-head) self-attention (MHSA or simply SA)
|
|
242
|
+
x_sa_ln = self.self_att_layer_norm(x)
|
|
243
|
+
x_sa = self.self_att(x_sa_ln, axis=spatial_dim)
|
|
244
|
+
x_sa = rf.dropout(x_sa, self.dropout, axis=self.dropout_broadcast and self.out_dim)
|
|
245
|
+
x = x_sa + x
|
|
246
|
+
|
|
247
|
+
# feed-forward (FF)
|
|
248
|
+
x_ff_ln = self.ff_layer_norm(x)
|
|
249
|
+
x_ff = self.ff(x_ff_ln)
|
|
250
|
+
x_ff = rf.dropout(x_ff, self.dropout, axis=self.dropout_broadcast and self.out_dim)
|
|
251
|
+
x = x_ff + x
|
|
252
|
+
|
|
253
|
+
return x
|
|
@@ -219,6 +219,7 @@ returnn/frontend/encoder/__init__.py
|
|
|
219
219
|
returnn/frontend/encoder/base.py
|
|
220
220
|
returnn/frontend/encoder/conformer.py
|
|
221
221
|
returnn/frontend/encoder/e_branchformer.py
|
|
222
|
+
returnn/frontend/encoder/transformer.py
|
|
222
223
|
returnn/import_/__init__.py
|
|
223
224
|
returnn/import_/common.py
|
|
224
225
|
returnn/import_/git.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-hyper-param-tuning.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-record-and-push-to-webserver.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-chunking-blstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-contribrnn-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-maxgradnorm-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm-lowmem.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm2.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-native-lstm2.12ax.tuned.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-neural-transducer.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-rec-explicit-lstm.config
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-rec-explicit-rnn.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-search-compiled-graph.py
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-tf-vanilla-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/demo-upd-mult-model.lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/create_IAM_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/IAM/features/raw/demo.h5
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/create_test_h5.py
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/demos/mdlstm/artificial_rgb/trainconfig
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/normalization_data.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/datasets/util/feature_extraction.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/.git
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/.gitignore
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/LICENSE
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/README.md
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/aligner.gif
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/check.png
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core.cu
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core.h
RENAMED
|
File without changes
|
{returnn-1.20240919.112211 → returnn-1.20240919.155206}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp
RENAMED
|
File without changes
|