returnn 1.20250221.114352__tar.gz → 1.20250225.145151__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.20250221.114352/returnn.egg-info → returnn-1.20250225.145151}/PKG-INFO +1 -1
- returnn-1.20250225.145151/_setup_info_generated.py +2 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_backend.py +8 -3
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/array_.py +95 -6
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/gradient.py +23 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/frontend/_backend.py +10 -5
- {returnn-1.20250221.114352 → returnn-1.20250225.145151/returnn.egg-info}/PKG-INFO +1 -1
- returnn-1.20250221.114352/_setup_info_generated.py +0 -2
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/.editorconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/.gitignore +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/.gitmodules +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/.kateconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/CHANGELOG.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/CODEOWNERS +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/CONTRIBUTING.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/LICENSE +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/MANIFEST.in +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/README.rst +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/12AX.cluster_map +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/_setup_returnn_env.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-fwd.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-horovod-mpi.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-horovod-mpi.py.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-horovod-mpi.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-hyper-param-tuning.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-iter-dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-list-devices.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-lua-torch-layer.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-pretrain.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-record-and-push-to-webserver.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-returnn-as-framework.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-rf-pt-benchmark.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-rf.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-rhn-enwik8.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-sprint-interface.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-att-copy.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-attention.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-enc-dec.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-hard-att-copy.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-lstm-benchmark.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm2.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-neural-transducer.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-rec-explicit-lstm.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-rec-explicit-rnn.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-rec-self-att.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-search-compiled-graph.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-timit-lstm-ctc.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-torch.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/README.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/chars.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/config_demo +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/config_fwd +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/config_real +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/decode.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/go.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/lines.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/split/eval.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/split/train.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/split/valid.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/create_test_h5.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/forwardconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/go.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/trainconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial_rgb/go.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/pyproject.toml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/requirements.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/__main__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/__old_mod_loader__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/__setup__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/config.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/audio.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/basic.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/bundle_file.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/cached.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/cached2.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/distrib_files.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/generating.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/hdf.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/lm.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/map.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/meta.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/multi_proc.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/normalization_data.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/numpy_dump.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/postprocessing.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/raw_wav.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/sprint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/stereo.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/text_dict.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/util/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/util/feature_extraction.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/util/strings.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/datasets/util/vocabulary.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/engine/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/engine/base.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/engine/batch.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/__main__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/.git +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/edit.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/reroute.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/select.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/subgraph.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/transform.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/graph_editor/util.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/forward_iface.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_cache.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/backend.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/backend.hpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/module.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/module.hpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/py_utils.hpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/tensor_ops.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_native/tensor_ops.hpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_numpy_backend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_random_journal.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/_utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/attention.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/audio/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/audio/mel.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/audio/specaugment.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/backend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/build_from_dict.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/cond.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/const.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/container.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/control_flow_ctx.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/conv.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/conversions/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/conversions/espnet_e_branchformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/conversions/hf_llama.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/conversions/torch_nn.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/decoder/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/decoder/transformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/device.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/dims.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/dropout.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/dtype.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/base.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/conformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/conformer_v2.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/e_branchformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/encoder/transformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/graph.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/hooks.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/init.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/label_smoothing.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/linear.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/loop.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/loss.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/math_.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/matmul.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/module.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/nested.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/normalization.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/parameter.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/parametrizations.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/parametrize.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/piecewise_linear.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/rand.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/rec.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/reduce.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/run_ctx.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/signal.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/state.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/stepwise_scheduler.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/tensor_array.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/frontend/types.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/import_/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/import_/common.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/import_/git.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/import_/import_.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/learning_rate_control.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/log.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/native_op.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/native_op.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/pretrain.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/cache.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/control.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/error_signals.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/extern_interface.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/sprint/interface.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/_dim_extra.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/_tensor_extra.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/_tensor_mixin_base.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/_tensor_op_overloads.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/control_flow_ctx.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/dim.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/marked_dim.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/tensor.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/tensor_dict.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tensor/utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/compat.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/data_pipeline.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/distributed.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/engine.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/_backend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/_utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/cond.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/config_entry_points.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/dims.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/layer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/loop.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/make_layer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/masked_computation.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_low_level/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/frontend_low_level/_backend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/horovod.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/hyper_param_tuning.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/base.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/basic.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/rec.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/segmental_model.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/signal_processing.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/layers/variable.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/native_op.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/network.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/sprint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/updater.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/basic.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/data.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/gradient_checkpoint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/ken_lm.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/tf/util/open_fst.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/extern_data.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/pipeline.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/queued_data_iter.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/data/tensor_utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/distributed.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/engine.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/frontend/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/frontend/_rand.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/frontend/bridge.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/frontend/raw_ops.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/optim/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/optim/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/optim/lion.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/updater.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/array_.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/debug_inf_nan.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/diagnose_gpu.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/exception_helper.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/gradient_checkpoint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/module.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/torch/util/scaled_gradient.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/__init__.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/basic.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/better_exchook.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/bpe.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/debug.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/debug_helpers.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/file_cache.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/fsa.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/literal_py_to_pickle.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/lru_cache.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/math.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/multi_proc_non_daemonic_spawn.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/native_code_compiler.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/pprint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/py-to-pickle.cpp +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/py_ext_mod_compiler.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/result_with_reason.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/sig_proc.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/task_system.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/train_proc_manager.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/util/watch_memory.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn.egg-info/SOURCES.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn.egg-info/dependency_links.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn.egg-info/requires.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn.egg-info/top_level.txt +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/rnn.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/setup.cfg +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/setup.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/DummySprintExec.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm-inspection-profile.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/.gitignore +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/.name +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/misc.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/modules.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/returnn.iml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/_set_num_threads1.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/_setup_returnn_env.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/_setup_test_env.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/bpe-unicode-demo.codes +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/bpe-unicode-demo.vocab +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/lexicon_opt.fst +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/lexicon_opt.isyms +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/lexicon_opt.jpg +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/lexicon_opt.osyms +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/lint_common.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/pycharm-inspect.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/pylint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/returnn-as-framework.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/rf_utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/spelling.dic +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Config.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Fsa.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_GeneratingDataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_HDFDataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_LearningRateControl.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Log.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_MultiProcDataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Pretrain.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_ResNet.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_SprintDataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_SprintInterface.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFEngine.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFNativeOp.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFNetworkLayer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFNetworkRecLayer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFNetworkSigProcLayer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFUpdater.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TFUtil.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TF_determinism.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TaskSystem.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TaskSystem_SharedMem.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_TranslationDataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_Util.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_demos.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_fork_exec.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_hdf_dump.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_array.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_attention.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_base.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_cond.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_const.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_container.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_conv.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_decoder_transformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_encoder_conformer.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_gradient.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_label_smoothing.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_loop.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_math.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_normalization.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_piecewise_linear.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_rec.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_reduce.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_rf_signal.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_tensor.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_threading.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_tools.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_torch_dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_torch_engine.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_torch_frontend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_torch_internal_frontend.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/test_torch_util.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tests/torch_utils.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/_setup_returnn_env.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/analyze-dataset-batches.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/bliss-collect-seq-lens.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/bliss-dump-text.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/bliss-get-segment-names.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/bliss-to-ogg-zip.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/bpe-create-lexicon.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/calculate-word-error-rate.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/cleanup-old-models.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/collect-orth-symbols.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/collect-words.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/compile_native_op.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/compile_tf_graph.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/debug-dump-search-scores.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/debug-plot-search-scores.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-dataset-raw-strings.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-forward-stats.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-forward.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-network-json.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/dump-pickle.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/extract_state_tying_from_dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/get-attention-weights.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/get-best-model-epoch.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/hdf_dump.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/hdf_dump_translation_dataset.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/import-blocks-mt-model.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/import-t2t-mt-model.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/.gitignore +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/Makefile +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/README.md +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/libs_list +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/state_vars_list +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/example/tensor_names_list +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/file.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/main.cc +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/rescorer.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/vocabulary.cc +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/lattice_rescorer/vocabulary.h +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/tf_avg_checkpoints.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/tf_inspect_checkpoint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/tf_inspect_summary_log.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/torch_avg_checkpoints.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/torch_export_to_onnx.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/torch_inspect_checkpoint.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/torch_inspect_checkpoint_and_opt.py +0 -0
- {returnn-1.20250221.114352 → returnn-1.20250225.145151}/tools/torch_scale_tuning.py +0 -0
|
@@ -350,6 +350,11 @@ class Backend(Generic[T]):
|
|
|
350
350
|
"""
|
|
351
351
|
raise NotImplementedError
|
|
352
352
|
|
|
353
|
+
@staticmethod
|
|
354
|
+
def stop_gradient_scope() -> Any:
|
|
355
|
+
"""stop gradient scope"""
|
|
356
|
+
raise NotImplementedError
|
|
357
|
+
|
|
353
358
|
@staticmethod
|
|
354
359
|
def scaled_gradient(tensor: Tensor, scale: Union[float, Tensor]) -> Tensor:
|
|
355
360
|
"""
|
|
@@ -905,9 +910,9 @@ class Backend(Generic[T]):
|
|
|
905
910
|
) -> Tensor:
|
|
906
911
|
"""
|
|
907
912
|
Scatters into new zero-tensor.
|
|
908
|
-
If entries in indices are duplicated, the corresponding values in source will be added together
|
|
909
|
-
(scatter_add in PyTorch).
|
|
910
|
-
(
|
|
913
|
+
If entries in indices are duplicated, with mode="sum", the corresponding values in source will be added together
|
|
914
|
+
(``scatter_add`` in PyTorch), otherwise min/max.
|
|
915
|
+
(segment_sum can be implemented via this.)
|
|
911
916
|
|
|
912
917
|
:param source: [batch_dims..., indices_dim(s)..., feature_dims...]
|
|
913
918
|
:param indices: [batch_dims..., indices_dim(s)...] -> out_dim
|
|
@@ -40,6 +40,8 @@ __all__ = [
|
|
|
40
40
|
"gather",
|
|
41
41
|
"scatter",
|
|
42
42
|
"scatter_argmax",
|
|
43
|
+
"scatter_logsumexp",
|
|
44
|
+
"scatter_logmeanexp",
|
|
43
45
|
"slice",
|
|
44
46
|
"shift_right",
|
|
45
47
|
"shift_left",
|
|
@@ -174,6 +176,12 @@ def merge_dims(
|
|
|
174
176
|
:param out_dim:
|
|
175
177
|
:return: tensor, out_dim
|
|
176
178
|
"""
|
|
179
|
+
if not dims:
|
|
180
|
+
if out_dim:
|
|
181
|
+
assert out_dim.dimension == 1
|
|
182
|
+
else:
|
|
183
|
+
out_dim = Dim(1, name="ext")
|
|
184
|
+
return rf.expand_dim(source, out_dim), out_dim
|
|
177
185
|
# noinspection PyProtectedMember
|
|
178
186
|
return source._raw_backend.merge_dims(source, dims=dims, out_dim=out_dim)
|
|
179
187
|
|
|
@@ -758,19 +766,20 @@ def scatter(
|
|
|
758
766
|
) -> Tensor:
|
|
759
767
|
"""
|
|
760
768
|
Scatters into new zero-tensor.
|
|
761
|
-
If entries in indices are duplicated,
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
or otherwise it will take the
|
|
769
|
+
If entries in indices are duplicated, with ``mode=="sum"``,
|
|
770
|
+
the corresponding values in source will be added together
|
|
771
|
+
(``scatter_add`` in PyTorch),
|
|
772
|
+
or otherwise it will take the respective reduction.
|
|
765
773
|
|
|
766
774
|
``scatter`` is the inverse of :func:`gather`.
|
|
767
775
|
|
|
768
|
-
(
|
|
776
|
+
(segment_sum can be implemented via this.)
|
|
769
777
|
|
|
770
778
|
:param source: [batch_dims..., indices_dim(s)..., feature_dims...]
|
|
771
779
|
:param indices: [batch_dims..., indices_dim(s)...] -> out_dim
|
|
772
780
|
:param indices_dim:
|
|
773
|
-
:param mode: "sum"
|
|
781
|
+
:param mode: "sum", "max", "min", "logsumexp", "logmeanexp", "argmax".
|
|
782
|
+
(Note: If you ever need mean, argmin, etc, please open an issue/PR.)
|
|
774
783
|
:param fill_value:
|
|
775
784
|
:param out_dim: The indices target dim.
|
|
776
785
|
If not given, will be automatically determined as the sparse_dim from indices.
|
|
@@ -778,6 +787,16 @@ def scatter(
|
|
|
778
787
|
and then we use :func:`rf.split_dims` afterwards.
|
|
779
788
|
:return: [batch_dims..., out_dim(s)..., feature_dims...]
|
|
780
789
|
"""
|
|
790
|
+
if mode == "logsumexp":
|
|
791
|
+
return scatter_logsumexp(
|
|
792
|
+
source, indices=indices, indices_dim=indices_dim, fill_value=fill_value, out_dim=out_dim
|
|
793
|
+
)
|
|
794
|
+
if mode == "logmeanexp":
|
|
795
|
+
return scatter_logmeanexp(
|
|
796
|
+
source, indices=indices, indices_dim=indices_dim, fill_value=fill_value, out_dim=out_dim
|
|
797
|
+
)
|
|
798
|
+
if mode == "argmax":
|
|
799
|
+
return scatter_argmax(source, indices=indices, indices_dim=indices_dim, invalid_idx=fill_value, out_dim=out_dim)
|
|
781
800
|
if not out_dim:
|
|
782
801
|
assert isinstance(indices, Tensor) and indices.sparse_dim
|
|
783
802
|
out_dim = indices.sparse_dim
|
|
@@ -858,6 +877,76 @@ def scatter_argmax(
|
|
|
858
877
|
return out
|
|
859
878
|
|
|
860
879
|
|
|
880
|
+
def scatter_logsumexp(
|
|
881
|
+
source: Tensor,
|
|
882
|
+
*,
|
|
883
|
+
indices: Tensor,
|
|
884
|
+
indices_dim: Union[Dim, Sequence[Dim]],
|
|
885
|
+
fill_value: Optional[Union[int, float]] = None,
|
|
886
|
+
out_dim: Optional[Union[Dim, Sequence[Dim]]] = None,
|
|
887
|
+
) -> Tensor:
|
|
888
|
+
"""
|
|
889
|
+
Scatters into new zero-tensor.
|
|
890
|
+
If entries in indices are duplicated, the corresponding values in source will be log-sum-exp'ed together.
|
|
891
|
+
This is like :func:`scatter` with ``mode="logsumexp"``.
|
|
892
|
+
|
|
893
|
+
:param source: [batch_dims..., indices_dim(s)..., feature_dims...]
|
|
894
|
+
:param indices: [batch_dims..., indices_dim(s)...] -> out_dim
|
|
895
|
+
:param indices_dim:
|
|
896
|
+
:param fill_value:
|
|
897
|
+
:param out_dim: The indices target dim.
|
|
898
|
+
If not given, will be automatically determined as the sparse_dim from indices.
|
|
899
|
+
If multiple out dims, use indices into the merged out dims,
|
|
900
|
+
and then we use :func:`rf.split_dims` afterwards.
|
|
901
|
+
:return: [batch_dims..., out_dim(s)..., feature_dims...]
|
|
902
|
+
"""
|
|
903
|
+
if not out_dim:
|
|
904
|
+
assert isinstance(indices, Tensor) and indices.sparse_dim
|
|
905
|
+
out_dim = indices.sparse_dim
|
|
906
|
+
with rf.stop_gradient_scope():
|
|
907
|
+
max_x = rf.scatter(source, indices=indices, indices_dim=indices_dim, mode="max", out_dim=out_dim) # [D_out,...]
|
|
908
|
+
max_x_ = rf.gather(max_x, indices=indices, axis=out_dim) # [D_src,...]
|
|
909
|
+
src_ = rf.exp(source - max_x_)
|
|
910
|
+
if fill_value is not None:
|
|
911
|
+
fill_value = rf.exp(fill_value - max_x_)
|
|
912
|
+
tensor = rf.scatter(
|
|
913
|
+
src_, indices=indices, indices_dim=indices_dim, mode="sum", fill_value=fill_value, out_dim=out_dim
|
|
914
|
+
)
|
|
915
|
+
tensor = rf.log(tensor)
|
|
916
|
+
tensor = rf.where(rf.is_neg_infinite(max_x), rf.zeros((), dtype=source.dtype, device=source.device), tensor)
|
|
917
|
+
tensor += max_x
|
|
918
|
+
return tensor
|
|
919
|
+
|
|
920
|
+
|
|
921
|
+
def scatter_logmeanexp(
|
|
922
|
+
source: Tensor,
|
|
923
|
+
*,
|
|
924
|
+
indices: Tensor,
|
|
925
|
+
indices_dim: Union[Dim, Sequence[Dim]],
|
|
926
|
+
fill_value: Optional[Union[int, float]] = None,
|
|
927
|
+
out_dim: Optional[Union[Dim, Sequence[Dim]]] = None,
|
|
928
|
+
) -> Tensor:
|
|
929
|
+
"""
|
|
930
|
+
Scatters into new zero-tensor.
|
|
931
|
+
If entries in indices are duplicated, the corresponding values in source will be log-mean-exp'ed together.
|
|
932
|
+
This is like :func:`scatter` with ``mode="logmeanexp"``.
|
|
933
|
+
|
|
934
|
+
:param source: [batch_dims..., indices_dim(s)..., feature_dims...]
|
|
935
|
+
:param indices: [batch_dims..., indices_dim(s)...] -> out_dim
|
|
936
|
+
:param indices_dim:
|
|
937
|
+
:param fill_value:
|
|
938
|
+
:param out_dim: The indices target dim.
|
|
939
|
+
If not given, will be automatically determined as the sparse_dim from indices.
|
|
940
|
+
If multiple out dims, use indices into the merged out dims,
|
|
941
|
+
and then we use :func:`rf.split_dims` afterwards.
|
|
942
|
+
:return: [batch_dims..., out_dim(s)..., feature_dims...]
|
|
943
|
+
"""
|
|
944
|
+
ones = rf.ones(dims=indices.dims, dtype=source.dtype, device=source.device)
|
|
945
|
+
counts = rf.scatter(ones, indices=indices, indices_dim=indices_dim, fill_value=1, out_dim=out_dim)
|
|
946
|
+
y = scatter_logsumexp(source, indices=indices, indices_dim=indices_dim, fill_value=fill_value, out_dim=out_dim)
|
|
947
|
+
return y - rf.log(counts)
|
|
948
|
+
|
|
949
|
+
|
|
861
950
|
# noinspection PyShadowingBuiltins
|
|
862
951
|
def slice(
|
|
863
952
|
source: Tensor,
|
|
@@ -11,6 +11,7 @@ __all__ = [
|
|
|
11
11
|
"set_requires_gradient",
|
|
12
12
|
"gradient",
|
|
13
13
|
"stop_gradient",
|
|
14
|
+
"stop_gradient_scope",
|
|
14
15
|
"scaled_gradient",
|
|
15
16
|
"scaled_gradient_ext",
|
|
16
17
|
"gradient_checkpoint_scope",
|
|
@@ -42,6 +43,28 @@ def stop_gradient(source: Tensor) -> Tensor:
|
|
|
42
43
|
return source._raw_backend.stop_gradient(source)
|
|
43
44
|
|
|
44
45
|
|
|
46
|
+
def stop_gradient_scope():
|
|
47
|
+
"""
|
|
48
|
+
Create a stop gradient scope.
|
|
49
|
+
All tensors created within this scope will have their gradient stopped.
|
|
50
|
+
|
|
51
|
+
Example::
|
|
52
|
+
|
|
53
|
+
a = ...
|
|
54
|
+
b = ...
|
|
55
|
+
with stop_gradient_scope():
|
|
56
|
+
x = a + b
|
|
57
|
+
y = x * c
|
|
58
|
+
|
|
59
|
+
In this example, the tensor ``x`` will have its gradient stopped,
|
|
60
|
+
i.e. the gradient of ``x`` w.r.t. ``a`` and ``b`` will be zero.
|
|
61
|
+
|
|
62
|
+
:return: context manager which enables stopping the gradient. It supports __enter__ and __exit__,
|
|
63
|
+
and the intended usage is with the `with` statement.
|
|
64
|
+
"""
|
|
65
|
+
return global_backend.stop_gradient_scope()
|
|
66
|
+
|
|
67
|
+
|
|
45
68
|
def scaled_gradient(source: Tensor, scale: Union[float, Tensor]) -> Tensor:
|
|
46
69
|
"""
|
|
47
70
|
:param source:
|
|
@@ -3,7 +3,7 @@ Backend for exposing PyTorch-specific functionality.
|
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
|
-
from typing import Optional, Union, Sequence, Tuple, List, Dict, Generator
|
|
6
|
+
from typing import Optional, Union, Any, Sequence, Tuple, List, Dict, Generator
|
|
7
7
|
import contextlib
|
|
8
8
|
import torch
|
|
9
9
|
import numpy
|
|
@@ -212,6 +212,11 @@ class TorchBackend(Backend[torch.Tensor]):
|
|
|
212
212
|
out.raw_tensor = out.raw_tensor.detach()
|
|
213
213
|
return out
|
|
214
214
|
|
|
215
|
+
@staticmethod
|
|
216
|
+
def stop_gradient_scope() -> Any:
|
|
217
|
+
"""stop gradient scope"""
|
|
218
|
+
return torch.no_grad()
|
|
219
|
+
|
|
215
220
|
@staticmethod
|
|
216
221
|
def scaled_gradient(tensor: Tensor, scale: Union[float, Tensor]) -> Tensor:
|
|
217
222
|
"""scaled gradient"""
|
|
@@ -1061,9 +1066,9 @@ class TorchBackend(Backend[torch.Tensor]):
|
|
|
1061
1066
|
) -> Tensor:
|
|
1062
1067
|
"""
|
|
1063
1068
|
Scatters into new zero-tensor.
|
|
1064
|
-
If entries in indices are duplicated, the corresponding values in source will be added together
|
|
1065
|
-
(scatter_add in PyTorch).
|
|
1066
|
-
(
|
|
1069
|
+
If entries in indices are duplicated, with mode="sum", the corresponding values in source will be added together
|
|
1070
|
+
(``scatter_add`` in PyTorch), otherwise min/max.
|
|
1071
|
+
(segment_sum can be implemented via this.)
|
|
1067
1072
|
|
|
1068
1073
|
:param source: [batch_dims..., indices_dim(s)..., feature_dims...]
|
|
1069
1074
|
:param indices: [batch_dims..., indices_dim(s)...] -> out_dim
|
|
@@ -1496,7 +1501,7 @@ class TorchBackend(Backend[torch.Tensor]):
|
|
|
1496
1501
|
mask = source.get_sequence_mask_broadcast(dim)
|
|
1497
1502
|
source.raw_tensor = torch.where(mask, source.raw_tensor, mask_value)
|
|
1498
1503
|
func = getattr(torch, mode)
|
|
1499
|
-
if not res_dims:
|
|
1504
|
+
if not res_dims and mode != "logsumexp": # logsumexp requires dim arg
|
|
1500
1505
|
raw_result = func(source.raw_tensor)
|
|
1501
1506
|
elif len(raw_dims) == 1:
|
|
1502
1507
|
raw_result = func(source.raw_tensor, dim=raw_dims[0])
|
|
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.20250221.114352 → returnn-1.20250225.145151}/demos/demo-hyper-param-tuning.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/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.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-chunking-blstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-contribrnn-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-maxgradnorm-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm-lowmem.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm2.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-native-lstm2.12ax.tuned.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-neural-transducer.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-rec-explicit-lstm.config
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-rec-explicit-rnn.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-search-compiled-graph.py
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-tf-vanilla-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/demo-upd-mult-model.lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/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.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/IAM/create_IAM_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/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.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/create_test_h5.py
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/demos/mdlstm/artificial_rgb/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/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.20250221.114352 → returnn-1.20250225.145151}/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
|
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/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.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/.git
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/.gitignore
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/LICENSE
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/README.md
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/aligner.gif
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/check.png
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core.cu
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core.h
RENAMED
|
File without changes
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp
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
|
{returnn-1.20250221.114352 → returnn-1.20250225.145151}/returnn/extern/WarpRna/warp-rna/ref_rna.py
RENAMED
|
File without changes
|