returnn 1.20250122.223647__tar.gz → 1.20250123.173545__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.20250122.223647/returnn.egg-info → returnn-1.20250123.173545}/PKG-INFO +1 -1
- returnn-1.20250123.173545/_setup_info_generated.py +2 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/config.py +76 -85
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/_tensor_op_overloads.py +1 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/basic.py +10 -9
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/basic.py +4 -4
- {returnn-1.20250122.223647 → returnn-1.20250123.173545/returnn.egg-info}/PKG-INFO +1 -1
- returnn-1.20250122.223647/_setup_info_generated.py +0 -2
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/.editorconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/.gitignore +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/.gitmodules +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/.kateconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/CHANGELOG.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/CODEOWNERS +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/CONTRIBUTING.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/LICENSE +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/MANIFEST.in +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/README.rst +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/12AX.cluster_map +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/_setup_returnn_env.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-fwd.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-horovod-mpi.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-horovod-mpi.py.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-horovod-mpi.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-hyper-param-tuning.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-iter-dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-list-devices.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-lua-torch-layer.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-pretrain.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-record-and-push-to-webserver.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-returnn-as-framework.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-rf-pt-benchmark.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-rf.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-rhn-enwik8.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-sprint-interface.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-att-copy.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-attention.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-enc-dec.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-hard-att-copy.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-lstm-benchmark.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm2.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-neural-transducer.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-rec-explicit-lstm.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-rec-explicit-rnn.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-rec-self-att.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-search-compiled-graph.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-timit-lstm-ctc.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-torch.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/README.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/chars.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/config_demo +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/config_fwd +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/config_real +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/decode.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/go.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/lines.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/split/eval.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/split/train.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/split/valid.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/create_test_h5.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/forwardconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/go.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/trainconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/go.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/pyproject.toml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/requirements.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/__main__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/__old_mod_loader__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/__setup__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/audio.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/basic.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/bundle_file.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/cached.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/cached2.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/distrib_files.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/generating.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/hdf.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/lm.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/map.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/meta.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/multi_proc.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/normalization_data.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/numpy_dump.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/postprocessing.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/raw_wav.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/sprint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/stereo.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/text_dict.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/util/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/util/feature_extraction.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/util/strings.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/datasets/util/vocabulary.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/engine/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/engine/base.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/engine/batch.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/__main__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/.git +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/edit.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/reroute.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/select.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/subgraph.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/transform.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/extern/graph_editor/util.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/forward_iface.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_cache.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/backend.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/backend.hpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/module.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/module.hpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/py_utils.hpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/tensor_ops.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_native/tensor_ops.hpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_numpy_backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_random_journal.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/_utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/array_.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/attention.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/audio/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/audio/mel.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/audio/specaugment.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/build_from_dict.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/cond.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/const.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/container.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/control_flow_ctx.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/conv.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/conversions/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/conversions/espnet_e_branchformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/conversions/hf_llama.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/conversions/torch_nn.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/decoder/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/decoder/transformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/device.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/dims.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/dropout.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/dtype.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/base.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/conformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/conformer_v2.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/e_branchformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/encoder/transformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/gradient.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/graph.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/hooks.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/init.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/label_smoothing.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/linear.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/loop.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/loss.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/math_.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/matmul.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/module.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/normalization.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/parameter.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/parametrizations.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/parametrize.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/piecewise_linear.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/rand.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/rec.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/reduce.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/run_ctx.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/signal.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/state.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/stepwise_scheduler.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/tensor_array.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/frontend/types.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/import_/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/import_/common.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/import_/git.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/import_/import_.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/learning_rate_control.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/log.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/native_op.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/native_op.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/pretrain.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/cache.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/control.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/error_signals.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/extern_interface.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/sprint/interface.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/_dim_extra.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/_tensor_extra.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/_tensor_mixin_base.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/control_flow_ctx.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/dim.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/marked_dim.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/tensor.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/tensor_dict.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tensor/utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/compat.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/data_pipeline.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/distributed.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/engine.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/_backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/_utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/cond.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/config_entry_points.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/dims.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/layer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/loop.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/make_layer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/masked_computation.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_low_level/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/frontend_low_level/_backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/horovod.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/hyper_param_tuning.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/base.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/basic.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/rec.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/segmental_model.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/signal_processing.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/layers/variable.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/native_op.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/network.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/sprint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/updater.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/data.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/gradient_checkpoint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/ken_lm.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/tf/util/open_fst.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/extern_data.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/pipeline.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/queued_data_iter.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/data/tensor_utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/distributed.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/engine.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/frontend/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/frontend/_backend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/frontend/_rand.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/frontend/bridge.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/frontend/raw_ops.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/optim/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/optim/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/optim/lion.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/updater.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/array_.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/debug_inf_nan.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/diagnose_gpu.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/exception_helper.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/gradient_checkpoint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/module.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/torch/util/scaled_gradient.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/__init__.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/better_exchook.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/bpe.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/debug.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/debug_helpers.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/file_cache.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/fsa.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/literal_py_to_pickle.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/lru_cache.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/math.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/multi_proc_non_daemonic_spawn.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/native_code_compiler.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/pprint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/py-to-pickle.cpp +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/py_ext_mod_compiler.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/result_with_reason.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/sig_proc.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/task_system.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/train_proc_manager.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn/util/watch_memory.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn.egg-info/SOURCES.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn.egg-info/dependency_links.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/returnn.egg-info/top_level.txt +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/rnn.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/setup.cfg +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/setup.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/DummySprintExec.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm-inspection-profile.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/.gitignore +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/.name +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/misc.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/modules.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/returnn.iml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/_set_num_threads1.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/_setup_returnn_env.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/_setup_test_env.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/bpe-unicode-demo.codes +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/bpe-unicode-demo.vocab +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/lexicon_opt.fst +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/lexicon_opt.isyms +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/lexicon_opt.jpg +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/lexicon_opt.osyms +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/lint_common.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/pycharm-inspect.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/pylint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/returnn-as-framework.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/rf_utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/spelling.dic +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Config.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Fsa.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_GeneratingDataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_HDFDataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_LearningRateControl.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Log.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_MultiProcDataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Pretrain.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_ResNet.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_SprintDataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_SprintInterface.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFEngine.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFNativeOp.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFNetworkLayer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFNetworkRecLayer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFNetworkSigProcLayer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFUpdater.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TFUtil.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TF_determinism.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TaskSystem.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TaskSystem_SharedMem.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_TranslationDataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_Util.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_demos.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_fork_exec.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_hdf_dump.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_array.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_attention.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_base.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_cond.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_const.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_container.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_conv.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_decoder_transformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_encoder_conformer.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_gradient.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_label_smoothing.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_loop.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_math.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_normalization.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_piecewise_linear.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_rec.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_reduce.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_rf_signal.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_tensor.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_threading.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_tools.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_torch_dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_torch_engine.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_torch_frontend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_torch_internal_frontend.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/test_torch_util.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tests/torch_utils.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/_setup_returnn_env.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/analyze-dataset-batches.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/bliss-collect-seq-lens.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/bliss-dump-text.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/bliss-get-segment-names.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/bliss-to-ogg-zip.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/bpe-create-lexicon.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/calculate-word-error-rate.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/cleanup-old-models.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/collect-orth-symbols.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/collect-words.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/compile_native_op.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/compile_tf_graph.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/debug-dump-search-scores.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/debug-plot-search-scores.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-dataset-raw-strings.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-forward-stats.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-forward.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-network-json.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/dump-pickle.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/extract_state_tying_from_dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/get-attention-weights.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/get-best-model-epoch.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/hdf_dump.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/hdf_dump_translation_dataset.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/import-blocks-mt-model.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/import-t2t-mt-model.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/.gitignore +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/Makefile +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/README.md +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/libs_list +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/state_vars_list +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/example/tensor_names_list +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/file.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/main.cc +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/rescorer.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/vocabulary.cc +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/lattice_rescorer/vocabulary.h +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/tf_avg_checkpoints.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/tf_inspect_checkpoint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/tf_inspect_summary_log.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/torch_avg_checkpoints.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/torch_export_to_onnx.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/torch_inspect_checkpoint.py +0 -0
- {returnn-1.20250122.223647 → returnn-1.20250123.173545}/tools/torch_inspect_checkpoint_and_opt.py +0 -0
|
@@ -7,13 +7,16 @@ from __future__ import annotations
|
|
|
7
7
|
__author__ = "Patrick Doetsch"
|
|
8
8
|
__credits__ = ["Patrick Doetsch", "Paul Voigtlaender"]
|
|
9
9
|
|
|
10
|
-
from typing import Optional, Any, Dict, List
|
|
10
|
+
from typing import TypeVar, Type, Optional, Union, Any, Dict, List, Sequence, Tuple
|
|
11
11
|
import contextlib
|
|
12
12
|
import sys
|
|
13
13
|
import os
|
|
14
14
|
import types as _types
|
|
15
15
|
|
|
16
16
|
|
|
17
|
+
T = TypeVar("T")
|
|
18
|
+
|
|
19
|
+
|
|
17
20
|
class Config:
|
|
18
21
|
"""
|
|
19
22
|
Reads in some config file, and provides access to the key/value items.
|
|
@@ -140,11 +143,10 @@ class Config:
|
|
|
140
143
|
self.add_line(key=line[0], value=line[1])
|
|
141
144
|
|
|
142
145
|
@classmethod
|
|
143
|
-
def get_config_file_type(cls, f):
|
|
146
|
+
def get_config_file_type(cls, f: str) -> str:
|
|
144
147
|
"""
|
|
145
|
-
:param
|
|
148
|
+
:param f: file path
|
|
146
149
|
:return: "py", "js" or "txt"
|
|
147
|
-
:rtype: str
|
|
148
150
|
"""
|
|
149
151
|
with open(f, "r") as f:
|
|
150
152
|
start = f.read(3)
|
|
@@ -154,9 +156,9 @@ class Config:
|
|
|
154
156
|
return "js"
|
|
155
157
|
return "txt"
|
|
156
158
|
|
|
157
|
-
def parse_cmd_args(self, args):
|
|
159
|
+
def parse_cmd_args(self, args: Sequence[str]):
|
|
158
160
|
"""
|
|
159
|
-
:param
|
|
161
|
+
:param args:
|
|
160
162
|
"""
|
|
161
163
|
from optparse import OptionParser
|
|
162
164
|
|
|
@@ -262,11 +264,12 @@ class Config:
|
|
|
262
264
|
value = value[1:] # otherwise we never could specify things like "++threshold -0.1"
|
|
263
265
|
self.add_line(key=key[2:], value=value)
|
|
264
266
|
|
|
265
|
-
def add_line(self, key, value):
|
|
267
|
+
def add_line(self, key: str, value: str):
|
|
266
268
|
"""
|
|
267
269
|
Adds one specific configuration (key,value) pair to the inner set of parameters
|
|
268
|
-
|
|
269
|
-
:
|
|
270
|
+
|
|
271
|
+
:param key:
|
|
272
|
+
:param value:
|
|
270
273
|
"""
|
|
271
274
|
if key in self.typed_dict:
|
|
272
275
|
# This is a special case. We overwrite a config value which was typed before.
|
|
@@ -300,69 +303,65 @@ class Config:
|
|
|
300
303
|
else:
|
|
301
304
|
self.dict[key] = value
|
|
302
305
|
|
|
303
|
-
def has(self, key):
|
|
306
|
+
def has(self, key: str) -> bool:
|
|
304
307
|
"""
|
|
305
308
|
Returns whether the given key is present in the inner set of parameters
|
|
306
|
-
|
|
307
|
-
:
|
|
308
|
-
:returns True if and only if the given key is in the inner set of parameters
|
|
309
|
+
|
|
310
|
+
:param key:
|
|
311
|
+
:returns: True if and only if the given key is in the inner set of parameters
|
|
309
312
|
"""
|
|
310
313
|
if key in self.typed_dict:
|
|
311
314
|
return True
|
|
312
315
|
return key in self.dict
|
|
313
316
|
|
|
314
|
-
def is_typed(self, key):
|
|
317
|
+
def is_typed(self, key: str) -> bool:
|
|
315
318
|
"""
|
|
316
|
-
:
|
|
317
|
-
:
|
|
318
|
-
:returns True if and only if the value of the given key has a specified data type
|
|
319
|
+
:param key:
|
|
320
|
+
:returns: True if and only if the value of the given key has a specified data type
|
|
319
321
|
"""
|
|
320
322
|
return key in self.typed_dict
|
|
321
323
|
|
|
322
|
-
def is_true(self, key, default=False):
|
|
324
|
+
def is_true(self, key: str, default: bool = False) -> bool:
|
|
323
325
|
"""
|
|
324
|
-
:param
|
|
325
|
-
:param
|
|
326
|
+
:param key:
|
|
327
|
+
:param default:
|
|
326
328
|
:return: bool(value) if it is set or default
|
|
327
|
-
:rtype: bool
|
|
328
329
|
"""
|
|
329
330
|
if self.is_typed(key):
|
|
330
331
|
return bool(self.typed_dict[key])
|
|
331
332
|
return self.bool(key, default=default)
|
|
332
333
|
|
|
333
|
-
def is_of_type(self, key, types):
|
|
334
|
+
def is_of_type(self, key: str, types: Union[type, Tuple[type, ...]]) -> bool:
|
|
334
335
|
"""
|
|
335
|
-
:param
|
|
336
|
-
:param
|
|
336
|
+
:param key:
|
|
337
|
+
:param types: for isinstance() check
|
|
337
338
|
:return: whether is_typed(key) is True and isinstance(value, types) is True
|
|
338
|
-
:rtype: bool
|
|
339
339
|
"""
|
|
340
340
|
if key in self.typed_dict:
|
|
341
341
|
return isinstance(self.typed_dict[key], types)
|
|
342
342
|
return False
|
|
343
343
|
|
|
344
|
-
def get_of_type(self, key, types, default=None):
|
|
344
|
+
def get_of_type(self, key: str, types: Union[type, Tuple[type, ...], Type[T]], default: Optional[T] = None) -> T:
|
|
345
345
|
"""
|
|
346
346
|
:param str key:
|
|
347
|
-
:param
|
|
348
|
-
:param
|
|
347
|
+
:param types: for isinstance() check
|
|
348
|
+
:param default:
|
|
349
349
|
:return: if is_of_type(key, types) is True, returns the value, otherwise default
|
|
350
|
-
:rtype: T
|
|
351
350
|
"""
|
|
352
351
|
if self.is_of_type(key, types):
|
|
353
352
|
return self.typed_dict[key]
|
|
354
353
|
return default
|
|
355
354
|
|
|
356
|
-
def set(self, key, value):
|
|
355
|
+
def set(self, key: str, value: Any):
|
|
357
356
|
"""
|
|
358
|
-
:
|
|
359
|
-
:
|
|
357
|
+
:param key:
|
|
358
|
+
:param value:
|
|
360
359
|
"""
|
|
361
360
|
self.typed_dict[key] = value
|
|
362
361
|
|
|
363
|
-
def update(self, dikt):
|
|
362
|
+
def update(self, dikt: Dict[str, Any]):
|
|
364
363
|
"""
|
|
365
|
-
:
|
|
364
|
+
:param dikt: dict
|
|
366
365
|
"""
|
|
367
366
|
for key, value in dikt.items():
|
|
368
367
|
self.set(key, value)
|
|
@@ -383,13 +382,12 @@ class Config:
|
|
|
383
382
|
|
|
384
383
|
setattr(self, "value", wrapped_value_func)
|
|
385
384
|
|
|
386
|
-
def value(self, key, default, index=None, list_join_str=","):
|
|
385
|
+
def value(self, key: str, default: T, index: Optional[int] = None, list_join_str: str = ",") -> Union[T, str]:
|
|
387
386
|
"""
|
|
388
|
-
:
|
|
389
|
-
:
|
|
390
|
-
:
|
|
391
|
-
:param
|
|
392
|
-
:rtype: str | T
|
|
387
|
+
:param key:
|
|
388
|
+
:param default:
|
|
389
|
+
:param index:
|
|
390
|
+
:param list_join_str:
|
|
393
391
|
"""
|
|
394
392
|
if key in self.typed_dict:
|
|
395
393
|
ls = self.typed_dict[key]
|
|
@@ -410,12 +408,11 @@ class Config:
|
|
|
410
408
|
return ls[index]
|
|
411
409
|
return default
|
|
412
410
|
|
|
413
|
-
def typed_value(self, key, default=None, index=None):
|
|
411
|
+
def typed_value(self, key: str, default: Optional[T] = None, index: Optional[int] = None) -> Union[T, Any]:
|
|
414
412
|
"""
|
|
415
|
-
:
|
|
416
|
-
:
|
|
417
|
-
:
|
|
418
|
-
:rtype: T | typing.Any
|
|
413
|
+
:param key:
|
|
414
|
+
:param default:
|
|
415
|
+
:param index:
|
|
419
416
|
"""
|
|
420
417
|
value = self.typed_dict.get(key, default)
|
|
421
418
|
if index is not None:
|
|
@@ -426,23 +423,22 @@ class Config:
|
|
|
426
423
|
assert index == 0
|
|
427
424
|
return value
|
|
428
425
|
|
|
429
|
-
def opt_typed_value(self, key, default=None):
|
|
426
|
+
def opt_typed_value(self, key: str, default: Optional[T] = None) -> Union[T, Any, str]:
|
|
430
427
|
"""
|
|
431
|
-
:param
|
|
432
|
-
:param
|
|
433
|
-
:rtype: T|object|str|None
|
|
428
|
+
:param key:
|
|
429
|
+
:param default:
|
|
434
430
|
"""
|
|
435
431
|
if key in self.typed_dict:
|
|
436
432
|
return self.typed_dict[key]
|
|
437
433
|
return self.value(key, default)
|
|
438
434
|
|
|
439
|
-
def int(self, key, default, index=0):
|
|
435
|
+
def int(self, key: str, default: T, index: int = 0) -> Union[int, T]:
|
|
440
436
|
"""
|
|
441
437
|
Parses the value of the given key as integer, returning default if not existent
|
|
442
|
-
|
|
443
|
-
:
|
|
444
|
-
:
|
|
445
|
-
:
|
|
438
|
+
|
|
439
|
+
:param key:
|
|
440
|
+
:param default:
|
|
441
|
+
:param index:
|
|
446
442
|
"""
|
|
447
443
|
if key in self.typed_dict:
|
|
448
444
|
value = self.typed_value(key, default=default, index=index)
|
|
@@ -453,13 +449,13 @@ class Config:
|
|
|
453
449
|
return int(self.value(key, default, index))
|
|
454
450
|
return default
|
|
455
451
|
|
|
456
|
-
def bool(self, key, default, index=0):
|
|
452
|
+
def bool(self, key: str, default: T, index: int = 0) -> Union[bool, T]:
|
|
457
453
|
"""
|
|
458
454
|
Parses the value of the given key as boolean, returning default if not existent
|
|
459
|
-
|
|
460
|
-
:
|
|
461
|
-
:
|
|
462
|
-
:
|
|
455
|
+
|
|
456
|
+
:param key:
|
|
457
|
+
:param default:
|
|
458
|
+
:param index:
|
|
463
459
|
"""
|
|
464
460
|
if key in self.typed_dict:
|
|
465
461
|
value = self.typed_value(key, default=default, index=index)
|
|
@@ -477,13 +473,12 @@ class Config:
|
|
|
477
473
|
|
|
478
474
|
return to_bool(v)
|
|
479
475
|
|
|
480
|
-
def bool_or_other(self, key, default=None, index=0):
|
|
476
|
+
def bool_or_other(self, key: str, default: Optional[T] = None, index: int = 0) -> Union[bool, T, Any]:
|
|
481
477
|
"""
|
|
482
|
-
:param
|
|
483
|
-
:param
|
|
484
|
-
:param
|
|
478
|
+
:param key:
|
|
479
|
+
:param default:
|
|
480
|
+
:param index:
|
|
485
481
|
:return: if we have typed value, just as-is. otherwise try to convert to bool. or default if not there.
|
|
486
|
-
:rtype: bool|T|object
|
|
487
482
|
"""
|
|
488
483
|
if key in self.typed_dict:
|
|
489
484
|
return self.typed_value(key, default=default, index=index)
|
|
@@ -499,13 +494,13 @@ class Config:
|
|
|
499
494
|
except ValueError:
|
|
500
495
|
return v
|
|
501
496
|
|
|
502
|
-
def float(self, key, default, index=0):
|
|
497
|
+
def float(self, key: str, default: T, index: int = 0) -> Union[float, T]:
|
|
503
498
|
"""
|
|
504
499
|
Parses the value of the given key as float, returning default if not existent
|
|
505
|
-
|
|
506
|
-
:
|
|
507
|
-
:
|
|
508
|
-
:
|
|
500
|
+
|
|
501
|
+
:param key:
|
|
502
|
+
:param default:
|
|
503
|
+
:param index:
|
|
509
504
|
"""
|
|
510
505
|
if key in self.typed_dict:
|
|
511
506
|
value = self.typed_value(key, default=default, index=index)
|
|
@@ -519,11 +514,10 @@ class Config:
|
|
|
519
514
|
assert isinstance(value, (int, float))
|
|
520
515
|
return value
|
|
521
516
|
|
|
522
|
-
def list(self, key, default=None):
|
|
517
|
+
def list(self, key: str, default: Optional[T] = None) -> Union[List[str], T]:
|
|
523
518
|
"""
|
|
524
|
-
:
|
|
525
|
-
:
|
|
526
|
-
:rtype: list[str] | T
|
|
519
|
+
:param key:
|
|
520
|
+
:param default:
|
|
527
521
|
"""
|
|
528
522
|
if default is None:
|
|
529
523
|
default = []
|
|
@@ -538,11 +532,10 @@ class Config:
|
|
|
538
532
|
return default
|
|
539
533
|
return self.dict[key]
|
|
540
534
|
|
|
541
|
-
def int_list(self, key, default=None):
|
|
535
|
+
def int_list(self, key: str, default: Optional[T] = None) -> Union[List[int], T]:
|
|
542
536
|
"""
|
|
543
|
-
:
|
|
544
|
-
:
|
|
545
|
-
:rtype: list[int] | T
|
|
537
|
+
:param key:
|
|
538
|
+
:param default:
|
|
546
539
|
"""
|
|
547
540
|
if default is None:
|
|
548
541
|
default = []
|
|
@@ -557,11 +550,10 @@ class Config:
|
|
|
557
550
|
return list(value)
|
|
558
551
|
return [int(x) for x in self.list(key, default)]
|
|
559
552
|
|
|
560
|
-
def float_list(self, key, default=None):
|
|
553
|
+
def float_list(self, key: str, default: Optional[T] = None) -> Union[List[float], T]:
|
|
561
554
|
"""
|
|
562
|
-
:
|
|
563
|
-
:
|
|
564
|
-
:rtype: list[float] | T
|
|
555
|
+
:param key:
|
|
556
|
+
:param default:
|
|
565
557
|
"""
|
|
566
558
|
if default is None:
|
|
567
559
|
default = []
|
|
@@ -576,11 +568,10 @@ class Config:
|
|
|
576
568
|
return list(value)
|
|
577
569
|
return [float(x) for x in self.list(key, default)]
|
|
578
570
|
|
|
579
|
-
def int_pair(self, key, default=None):
|
|
571
|
+
def int_pair(self, key: str, default: Optional[Tuple[int, int]] = None) -> Tuple[int, int]:
|
|
580
572
|
"""
|
|
581
|
-
:param
|
|
582
|
-
:param
|
|
583
|
-
:rtype: (int,int)
|
|
573
|
+
:param key:
|
|
574
|
+
:param default:
|
|
584
575
|
"""
|
|
585
576
|
if default is None:
|
|
586
577
|
default = (0, 0)
|
|
@@ -352,15 +352,16 @@ class OutputWithActivation:
|
|
|
352
352
|
return safe_log(self.y)
|
|
353
353
|
|
|
354
354
|
|
|
355
|
-
def variable_scalar_summaries_dict(
|
|
355
|
+
def variable_scalar_summaries_dict(
|
|
356
|
+
x: Union[tf.Tensor, tf.Variable], name: Optional[str] = None
|
|
357
|
+
) -> Dict[str, tf.Tensor]:
|
|
356
358
|
"""
|
|
357
359
|
Collects all interesting information about `x`, such as min/max/mean, etc. (all scalars).
|
|
358
360
|
This is used by :func:`variable_summaries`.
|
|
359
361
|
|
|
360
|
-
:param
|
|
361
|
-
:param
|
|
362
|
-
:return:
|
|
363
|
-
:rtype: dict[str,tf.Tensor]
|
|
362
|
+
:param x:
|
|
363
|
+
:param name:
|
|
364
|
+
:return: dict with key -> scalar info, e.g. with "%s_mean" % name -> tf.reduce_mean(x)
|
|
364
365
|
"""
|
|
365
366
|
if x.dtype == tf.string:
|
|
366
367
|
return {}
|
|
@@ -1025,7 +1026,7 @@ def setup_tf_thread_pools(num_threads=None, log_file=None, tf_session_opts=None)
|
|
|
1025
1026
|
|
|
1026
1027
|
:param int num_threads: used for both intra and inter parallelism thread pools
|
|
1027
1028
|
:param stream|None log_file:
|
|
1028
|
-
:param dict[str] tf_session_opts:
|
|
1029
|
+
:param dict[str,typing.Any] tf_session_opts:
|
|
1029
1030
|
"""
|
|
1030
1031
|
global _setup_tf_thread_pools_called_once
|
|
1031
1032
|
if _setup_tf_thread_pools_called_once:
|
|
@@ -1056,12 +1057,12 @@ def setup_tf_thread_pools(num_threads=None, log_file=None, tf_session_opts=None)
|
|
|
1056
1057
|
session.close()
|
|
1057
1058
|
|
|
1058
1059
|
|
|
1059
|
-
def check_initial_tf_thread_pool_init(tf_session_opts=None):
|
|
1060
|
+
def check_initial_tf_thread_pool_init(tf_session_opts: Dict[str, Any] = None):
|
|
1060
1061
|
"""
|
|
1061
1062
|
Makes sure that the TF thread pools are initialized with the requested settings.
|
|
1062
1063
|
You probably want to call this very early.
|
|
1063
1064
|
|
|
1064
|
-
:param
|
|
1065
|
+
:param tf_session_opts:
|
|
1065
1066
|
"""
|
|
1066
1067
|
if not _setup_tf_thread_pools_called_once:
|
|
1067
1068
|
from returnn.util.basic import try_get_caller_name
|
|
@@ -1184,7 +1185,7 @@ def print_available_devices(tf_session_opts=None, file=None):
|
|
|
1184
1185
|
Note that a call to this will trigger the internal TF thread pool inits,
|
|
1185
1186
|
so you should call :func:`setup_tf_thread_pools` first.
|
|
1186
1187
|
|
|
1187
|
-
:param dict[str]|None tf_session_opts: if given, will init a temp Session with these opts
|
|
1188
|
+
:param dict[str,typing.Any]|None tf_session_opts: if given, will init a temp Session with these opts
|
|
1188
1189
|
:param typing.TextIO|None file: file stream for print statements, defaults to sys.stdout
|
|
1189
1190
|
"""
|
|
1190
1191
|
if file is None:
|
|
@@ -1963,15 +1963,15 @@ def _py2_unicode_to_str_recursive(s):
|
|
|
1963
1963
|
return s
|
|
1964
1964
|
|
|
1965
1965
|
|
|
1966
|
-
def load_json(filename=None, content=None):
|
|
1966
|
+
def load_json(filename: Optional[str] = None, content: Optional[str] = None) -> Dict[str, Any]:
|
|
1967
1967
|
"""
|
|
1968
|
-
:param
|
|
1969
|
-
:param
|
|
1970
|
-
:rtype: dict[str]
|
|
1968
|
+
:param filename:
|
|
1969
|
+
:param content:
|
|
1971
1970
|
"""
|
|
1972
1971
|
if content:
|
|
1973
1972
|
assert not filename
|
|
1974
1973
|
else:
|
|
1974
|
+
assert filename
|
|
1975
1975
|
content = open(filename).read()
|
|
1976
1976
|
import json
|
|
1977
1977
|
|
|
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.20250122.223647 → returnn-1.20250123.173545}/demos/demo-hyper-param-tuning.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/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.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-chunking-blstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-contribrnn-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-maxgradnorm-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm-lowmem.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm2.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-native-lstm2.12ax.tuned.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-neural-transducer.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-rec-explicit-lstm.config
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-rec-explicit-rnn.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-search-compiled-graph.py
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-tf-vanilla-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/demo-upd-mult-model.lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/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.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/IAM/create_IAM_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/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.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/create_test_h5.py
RENAMED
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20250122.223647 → returnn-1.20250123.173545}/demos/mdlstm/artificial_rgb/trainconfig
RENAMED
|
File without changes
|
|
File without changes
|