returnn 1.20230823.135336__tar.gz → 1.20230824.648__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.20230823.135336/returnn.egg-info → returnn-1.20230824.648}/PKG-INFO +1 -1
- returnn-1.20230824.648/_setup_info_generated.py +2 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/basic.py +1 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/map.py +32 -15
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/multi_proc.py +40 -8
- {returnn-1.20230823.135336 → returnn-1.20230824.648/returnn.egg-info}/PKG-INFO +1 -1
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Config.py +36 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_MultiProcDataset.py +72 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_PTDataset.py +27 -0
- returnn-1.20230823.135336/_setup_info_generated.py +0 -2
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/.editorconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/.gitignore +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/.gitmodules +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/.kateconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/CHANGELOG.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/CODEOWNERS +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/CONTRIBUTING.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/LICENSE +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/MANIFEST.in +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/README.rst +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/12AX.cluster_map +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/_setup_returnn_env.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-fwd.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-horovod-mpi.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-horovod-mpi.py.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-horovod-mpi.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-hyper-param-tuning.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-iter-dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-list-devices.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-lua-torch-layer.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-pretrain.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-record-and-push-to-webserver.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-returnn-as-framework.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-rf.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-rhn-enwik8.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-sprint-interface.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-att-copy.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-attention.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-enc-dec.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-hard-att-copy.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-lstm-benchmark.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm2.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-neural-transducer.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-rec-explicit-lstm.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-rec-explicit-rnn.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-rec-self-att.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-search-compiled-graph.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-timit-lstm-ctc.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-torch.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/README.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/chars.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/config_demo +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/config_fwd +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/config_real +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/decode.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/go.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/lines.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/split/eval.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/split/train.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/split/valid.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial/create_test_h5.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial/forwardconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial/go.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial/trainconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/go.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/pyproject.toml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/requirements.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/__main__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/__old_mod_loader__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/__setup__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/config.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/audio.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/bundle_file.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/cached.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/cached2.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/generating.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/hdf.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/lm.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/meta.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/normalization_data.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/numpy_dump.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/raw_wav.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/sprint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/stereo.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/util/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/util/feature_extraction.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/util/strings.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/util/vocabulary.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/engine/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/engine/base.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/engine/batch.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/__main__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/.git +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/edit.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/reroute.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/select.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/subgraph.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/transform.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/extern/graph_editor/util.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/forward_iface.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/_backend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/_numpy_backend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/_random_journal.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/_utils.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/array_.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/attention.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/audio/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/audio/mel.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/audio/specaugment.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/cond.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/const.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/container.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/control_flow_ctx.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/conv.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/device.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/dims.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/dropout.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/dtype.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/encoder/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/encoder/base.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/encoder/conformer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/gradient.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/graph.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/init.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/label_smoothing.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/linear.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/loop.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/loss.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/math_.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/matmul.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/module.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/normalization.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/parameter.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/rand.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/rec.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/reduce.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/run_ctx.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/signal.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/state.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/tensor_array.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/frontend/types.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/import_/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/import_/common.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/import_/git.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/import_/import_.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/learning_rate_control.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/log.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/native_op.cpp +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/native_op.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/pretrain.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/cache.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/control.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/error_signals.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/extern_interface.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/sprint/interface.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/_dim_extra.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/_tensor_extra.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/_tensor_mixin_base.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/_tensor_op_overloads.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/control_flow_ctx.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/dim.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/marked_dim.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/tensor.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/tensor_dict.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tensor/utils.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/compat.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/data_pipeline.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/distributed.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/engine.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/_backend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/_utils.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/cond.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/config_entry_points.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/dims.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/layer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/loop.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/make_layer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/masked_computation.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_low_level/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/frontend_low_level/_backend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/horovod.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/hyper_param_tuning.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/base.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/basic.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/rec.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/segmental_model.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/signal_processing.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/layers/variable.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/native_op.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/network.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/sprint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/updater.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/basic.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/data.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/gradient_checkpoint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/ken_lm.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/tf/util/open_fst.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/data/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/data/pipeline.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/data/tensor_utils.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/distributed.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/engine.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/frontend/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/frontend/_backend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/frontend/_rand.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/frontend/bridge.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/functional/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/functional/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/functional/scaled_gradient.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/torch/updater.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/__init__.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/basic.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/better_exchook.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/bpe.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/debug.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/debug_helpers.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/fsa.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/literal_py_to_pickle.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/math.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/pprint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/py-to-pickle.cpp +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/py_compat.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/sig_proc.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/util/task_system.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn.egg-info/SOURCES.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn.egg-info/dependency_links.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn.egg-info/top_level.txt +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/rnn.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/setup.cfg +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/setup.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/DummySprintExec.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm-inspection-profile.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/.gitignore +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/.name +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/misc.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/modules.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/returnn.iml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/_set_num_threads1.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/_setup_returnn_env.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/_setup_test_env.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/bpe-unicode-demo.codes +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/bpe-unicode-demo.vocab +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/lexicon_opt.fst +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/lexicon_opt.isyms +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/lexicon_opt.jpg +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/lexicon_opt.osyms +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/lint_common.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/pycharm-inspect.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/pylint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/returnn-as-framework.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/rf_utils.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/spelling.dic +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Fsa.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_GeneratingDataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_HDFDataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_LearningRateControl.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Log.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Pretrain.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_ResNet.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_SprintDataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_SprintInterface.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFEngine.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFNativeOp.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFNetworkLayer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFNetworkRecLayer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFNetworkSigProcLayer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFUpdater.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TFUtil.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TF_determinism.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TaskSystem.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TaskSystem_SharedMem.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_TranslationDataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_Util.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_demos.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_fork_exec.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_hdf_dump.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_array.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_attention.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_base.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_cond.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_const.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_container.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_conv.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_encoder_conformer.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_gradient.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_label_smoothing.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_loop.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_math.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_normalization.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_rec.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_reduce.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_rf_signal.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_tensor.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_tools.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_torch_engine.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_torch_frontend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tests/test_torch_internal_frontend.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/_setup_returnn_env.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/analyze-dataset-batches.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/bliss-collect-seq-lens.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/bliss-dump-text.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/bliss-get-segment-names.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/bliss-to-ogg-zip.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/bpe-create-lexicon.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/calculate-word-error-rate.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/cleanup-old-models.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/collect-orth-symbols.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/collect-words.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/compile_native_op.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/compile_tf_graph.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/debug-dump-search-scores.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/debug-plot-search-scores.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-dataset-raw-strings.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-forward-stats.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-forward.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-network-json.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/dump-pickle.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/extract_state_tying_from_dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/get-attention-weights.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/get-best-model-epoch.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/hdf_dump.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/hdf_dump_translation_dataset.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/import-blocks-mt-model.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/import-t2t-mt-model.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/.gitignore +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/Makefile +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/README.md +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/libs_list +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/state_vars_list +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/example/tensor_names_list +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/file.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/main.cc +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/rescorer.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/vocabulary.cc +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/lattice_rescorer/vocabulary.h +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/tf_avg_checkpoints.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/tf_inspect_checkpoint.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/tf_inspect_summary_log.py +0 -0
- {returnn-1.20230823.135336 → returnn-1.20230824.648}/tools/torch_export_to_onnx.py +0 -0
|
@@ -84,7 +84,7 @@ class MapDatasetWrapper(CachedDataset2):
|
|
|
84
84
|
super(MapDatasetWrapper, self).__init__(**kwargs)
|
|
85
85
|
|
|
86
86
|
if callable(map_dataset):
|
|
87
|
-
map_dataset = map_dataset(
|
|
87
|
+
map_dataset = map_dataset()
|
|
88
88
|
assert isinstance(map_dataset, MapDatasetBase)
|
|
89
89
|
|
|
90
90
|
self._dataset = map_dataset
|
|
@@ -92,6 +92,13 @@ class MapDatasetWrapper(CachedDataset2):
|
|
|
92
92
|
assert map_dataset.data_types, f"{self}: map_dataset {map_dataset} needs to provide data_types"
|
|
93
93
|
self.num_outputs = {key: _get_num_outputs_entry(key, opts) for key, opts in map_dataset.data_types.items()}
|
|
94
94
|
|
|
95
|
+
@property
|
|
96
|
+
def map_dataset(self) -> MapDatasetBase: # also important for Dataset.__reduce__
|
|
97
|
+
"""
|
|
98
|
+
:return: the wrapped MapDataset
|
|
99
|
+
"""
|
|
100
|
+
return self._dataset
|
|
101
|
+
|
|
95
102
|
@property
|
|
96
103
|
def num_seqs(self):
|
|
97
104
|
"""
|
|
@@ -118,22 +125,32 @@ class MapDatasetWrapper(CachedDataset2):
|
|
|
118
125
|
"""
|
|
119
126
|
super(MapDatasetWrapper, self).init_seq_order(epoch=epoch, seq_list=seq_list, seq_order=seq_order)
|
|
120
127
|
|
|
121
|
-
if seq_list is not None
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
128
|
+
if seq_list is not None:
|
|
129
|
+
assert seq_order is None
|
|
130
|
+
tag_to_idx = {
|
|
131
|
+
self._dataset.get_seq_tag(corpus_seq_idx): corpus_seq_idx
|
|
132
|
+
for corpus_seq_idx in range(len(self._dataset))
|
|
133
|
+
}
|
|
134
|
+
seq_order = [tag_to_idx[tag] for tag in seq_list]
|
|
135
|
+
if seq_order is not None:
|
|
136
|
+
self._seq_order = seq_order
|
|
137
|
+
else:
|
|
127
138
|
try:
|
|
128
|
-
self._seq_order = self.
|
|
129
|
-
epoch=epoch, num_seqs=len(self._dataset), get_seq_len=self._dataset.get_seq_len
|
|
130
|
-
)
|
|
139
|
+
self._seq_order = self._dataset.get_seq_order(epoch=epoch)
|
|
131
140
|
except OptionalNotImplementedError:
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
141
|
+
try:
|
|
142
|
+
self._seq_order = self.get_seq_order_for_epoch(
|
|
143
|
+
epoch=epoch, num_seqs=len(self._dataset), get_seq_len=self._dataset.get_seq_len
|
|
144
|
+
)
|
|
145
|
+
except OptionalNotImplementedError:
|
|
146
|
+
# only support seq_ordering that need no length here
|
|
147
|
+
assert self.seq_ordering in ["default", "reverse", "random"], (
|
|
148
|
+
f"{self}: dataset {self._dataset}.get_seq_len is not implemented,"
|
|
149
|
+
f" seq_ordering {self.seq_ordering!r} is not supported"
|
|
150
|
+
)
|
|
151
|
+
self._seq_order = self.get_seq_order_for_epoch(
|
|
152
|
+
epoch=epoch, num_seqs=len(self._dataset), get_seq_len=None
|
|
153
|
+
)
|
|
137
154
|
|
|
138
155
|
return True
|
|
139
156
|
|
|
@@ -6,6 +6,7 @@ from __future__ import annotations
|
|
|
6
6
|
from typing import Optional, Any, Dict, List
|
|
7
7
|
from .basic import init_dataset, DatasetSeq
|
|
8
8
|
from .cached2 import CachedDataset2
|
|
9
|
+
from returnn.config import Config, get_global_config, set_global_config
|
|
9
10
|
import multiprocessing as mp
|
|
10
11
|
|
|
11
12
|
# noinspection PyProtectedMember
|
|
@@ -51,7 +52,18 @@ class MultiProcDataset(CachedDataset2):
|
|
|
51
52
|
|
|
52
53
|
def initialize(self):
|
|
53
54
|
"""init"""
|
|
55
|
+
self._lazy_init()
|
|
56
|
+
super().initialize()
|
|
57
|
+
|
|
58
|
+
def _lazy_init(self):
|
|
54
59
|
if not self._worker_procs:
|
|
60
|
+
# We send the global config to the subprocesses,
|
|
61
|
+
# because some datasets might use custom functions inside the config,
|
|
62
|
+
# and pickling them would fail otherwise.
|
|
63
|
+
# https://github.com/rwth-i6/returnn/issues/1384
|
|
64
|
+
# Pickling the config works, as the config has special pickling support.
|
|
65
|
+
global_config = get_global_config(raise_exception=False)
|
|
66
|
+
|
|
55
67
|
# Seq order proc directly sends the seq order to each worker.
|
|
56
68
|
seq_order_to_worker = [] # type: List[mpConnection]
|
|
57
69
|
worker_from_seq_order = [] # type: List[mpConnection]
|
|
@@ -71,7 +83,12 @@ class MultiProcDataset(CachedDataset2):
|
|
|
71
83
|
seq_order_proc = _mp.Process(
|
|
72
84
|
name=f"{self.name} seq order proc",
|
|
73
85
|
target=self._seq_order_proc_loop,
|
|
74
|
-
|
|
86
|
+
# We deliberately put global_config first, because pickling of dataset might require
|
|
87
|
+
# that the global config is already loaded, which will have the side effect
|
|
88
|
+
# that it is registered as global config, and the Python module will be registered,
|
|
89
|
+
# so references to it will work.
|
|
90
|
+
args=(global_config, self.dataset, seq_order_proc_child_conn, seq_order_to_worker),
|
|
91
|
+
daemon=True,
|
|
75
92
|
)
|
|
76
93
|
seq_order_proc.start()
|
|
77
94
|
# Make sure the child connection is closed here.
|
|
@@ -86,11 +103,18 @@ class MultiProcDataset(CachedDataset2):
|
|
|
86
103
|
worker_proc = _mp.Process(
|
|
87
104
|
name=f"{self.name} worker proc {i + 1}/{self.num_workers}",
|
|
88
105
|
target=self._worker_proc_loop,
|
|
89
|
-
args=(
|
|
106
|
+
args=(
|
|
107
|
+
global_config, # see above
|
|
108
|
+
self.dataset,
|
|
109
|
+
self.buffer_size,
|
|
110
|
+
worker_child_conns[i],
|
|
111
|
+
worker_from_seq_order[i],
|
|
112
|
+
),
|
|
113
|
+
daemon=True,
|
|
90
114
|
)
|
|
91
115
|
worker_proc.start()
|
|
92
116
|
worker_procs.append(worker_proc)
|
|
93
|
-
worker_child_conns[i].close()
|
|
117
|
+
worker_child_conns[i].close() # see above
|
|
94
118
|
|
|
95
119
|
self._seq_order_proc_parent_conn = seq_order_proc_parent_conn # type: mpConnection
|
|
96
120
|
self._seq_order_proc = seq_order_proc
|
|
@@ -107,8 +131,6 @@ class MultiProcDataset(CachedDataset2):
|
|
|
107
131
|
msg, self.labels = self._seq_order_proc_parent_conn.recv()
|
|
108
132
|
assert msg == "labels"
|
|
109
133
|
|
|
110
|
-
super().initialize()
|
|
111
|
-
|
|
112
134
|
def __del__(self):
|
|
113
135
|
if self._seq_order_proc:
|
|
114
136
|
self._seq_order_proc_parent_conn.send(("exit", {}))
|
|
@@ -120,7 +142,11 @@ class MultiProcDataset(CachedDataset2):
|
|
|
120
142
|
worker_proc.join()
|
|
121
143
|
|
|
122
144
|
@staticmethod
|
|
123
|
-
def _seq_order_proc_loop(
|
|
145
|
+
def _seq_order_proc_loop(
|
|
146
|
+
global_config: Optional[Config], dataset_dict: Dict[str, Any], parent: mpConnection, workers: List[mpConnection]
|
|
147
|
+
):
|
|
148
|
+
if global_config:
|
|
149
|
+
set_global_config(global_config)
|
|
124
150
|
num_workers = len(workers)
|
|
125
151
|
dataset = init_dataset(dataset_dict)
|
|
126
152
|
try:
|
|
@@ -150,8 +176,14 @@ class MultiProcDataset(CachedDataset2):
|
|
|
150
176
|
|
|
151
177
|
@staticmethod
|
|
152
178
|
def _worker_proc_loop(
|
|
153
|
-
|
|
179
|
+
global_config: Optional[Config],
|
|
180
|
+
dataset_dict: Dict[str, Any],
|
|
181
|
+
buffer_size: int,
|
|
182
|
+
parent: mpConnection,
|
|
183
|
+
seq_order: mpConnection,
|
|
154
184
|
):
|
|
185
|
+
if global_config:
|
|
186
|
+
set_global_config(global_config)
|
|
155
187
|
dataset = init_dataset(dataset_dict)
|
|
156
188
|
|
|
157
189
|
got_init_seq_order = False
|
|
@@ -244,8 +276,8 @@ class MultiProcDataset(CachedDataset2):
|
|
|
244
276
|
:returns whether the order changed (True is always safe to return)
|
|
245
277
|
"""
|
|
246
278
|
super().init_seq_order(epoch=epoch, seq_list=seq_list, seq_order=seq_order)
|
|
247
|
-
|
|
248
279
|
if epoch is not None or seq_list is not None or seq_order is not None:
|
|
280
|
+
self._lazy_init()
|
|
249
281
|
self._seq_order_proc_parent_conn.send(
|
|
250
282
|
("init_seq_order", {"epoch": epoch, "seq_list": seq_list, "seq_order": seq_order})
|
|
251
283
|
)
|
|
@@ -296,6 +296,42 @@ def test_config_pickle_function():
|
|
|
296
296
|
assert f_() == 42
|
|
297
297
|
|
|
298
298
|
|
|
299
|
+
def _config_pickle_proc_main(config, f):
|
|
300
|
+
assert isinstance(config, Config)
|
|
301
|
+
assert get_global_config() is config
|
|
302
|
+
assert callable(f)
|
|
303
|
+
f()
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
def test_config_pickle_function_multi_proc():
|
|
307
|
+
# Same as test_config_pickle_function but via multiprocessing,
|
|
308
|
+
# so across process boundaries.
|
|
309
|
+
import multiprocessing
|
|
310
|
+
|
|
311
|
+
_mp = multiprocessing.get_context("spawn")
|
|
312
|
+
|
|
313
|
+
config = Config()
|
|
314
|
+
config.load_file(
|
|
315
|
+
StringIO(
|
|
316
|
+
textwrap.dedent(
|
|
317
|
+
"""\
|
|
318
|
+
#!returnn.py
|
|
319
|
+
|
|
320
|
+
def my_custom_func():
|
|
321
|
+
import sys
|
|
322
|
+
sys.exit(42)
|
|
323
|
+
"""
|
|
324
|
+
)
|
|
325
|
+
)
|
|
326
|
+
)
|
|
327
|
+
with global_config_ctx(config):
|
|
328
|
+
f = config.typed_dict["my_custom_func"]
|
|
329
|
+
proc = _mp.Process(target=_config_pickle_proc_main, args=(config, f))
|
|
330
|
+
proc.start()
|
|
331
|
+
proc.join()
|
|
332
|
+
assert proc.exitcode == 42
|
|
333
|
+
|
|
334
|
+
|
|
299
335
|
if __name__ == "__main__":
|
|
300
336
|
better_exchook.install()
|
|
301
337
|
if len(sys.argv) <= 1:
|
|
@@ -82,6 +82,47 @@ def test_MultiProcDataset_meta():
|
|
|
82
82
|
compare_dataset_seqs(meta_dataset_seqs, mp_dataset_seqs)
|
|
83
83
|
|
|
84
84
|
|
|
85
|
+
def test_MultiProcDataset_via_config():
|
|
86
|
+
# https://github.com/rwth-i6/returnn/issues/1384
|
|
87
|
+
from io import StringIO
|
|
88
|
+
import textwrap
|
|
89
|
+
from returnn.config import Config, global_config_ctx
|
|
90
|
+
|
|
91
|
+
config = Config()
|
|
92
|
+
config.load_file(
|
|
93
|
+
StringIO(
|
|
94
|
+
textwrap.dedent(
|
|
95
|
+
"""\
|
|
96
|
+
#!returnn.py
|
|
97
|
+
|
|
98
|
+
import numpy
|
|
99
|
+
from returnn.datasets.map import MapDatasetBase
|
|
100
|
+
|
|
101
|
+
class MyCustomMapDatasetInConfig(MapDatasetBase):
|
|
102
|
+
def __init__(self):
|
|
103
|
+
super().__init__(data_types={"data": {"shape": (None, 3)}})
|
|
104
|
+
|
|
105
|
+
def __len__(self):
|
|
106
|
+
return 2
|
|
107
|
+
|
|
108
|
+
def __getitem__(self, item):
|
|
109
|
+
return {"data": numpy.zeros((5, 3))}
|
|
110
|
+
"""
|
|
111
|
+
)
|
|
112
|
+
)
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
with timeout(), global_config_ctx(config):
|
|
116
|
+
mp_dataset = MultiProcDataset(
|
|
117
|
+
dataset={"class": "MapDatasetWrapper", "map_dataset": config.typed_dict["MyCustomMapDatasetInConfig"]},
|
|
118
|
+
num_workers=1,
|
|
119
|
+
buffer_size=1,
|
|
120
|
+
)
|
|
121
|
+
mp_dataset.initialize()
|
|
122
|
+
items = dummy_iter_dataset(mp_dataset)
|
|
123
|
+
assert len(items) == 2
|
|
124
|
+
|
|
125
|
+
|
|
85
126
|
class _MyCustomMapDatasetException(Exception):
|
|
86
127
|
pass
|
|
87
128
|
|
|
@@ -138,6 +179,37 @@ def test_MultiProcDataset_exception_at_item():
|
|
|
138
179
|
raise Exception("Expected exception")
|
|
139
180
|
|
|
140
181
|
|
|
182
|
+
class _MyCustomDummyMapDataset(MapDatasetBase):
|
|
183
|
+
def __init__(self):
|
|
184
|
+
super().__init__(data_types={"data": {"shape": (None, 3)}})
|
|
185
|
+
|
|
186
|
+
def __len__(self):
|
|
187
|
+
return 2
|
|
188
|
+
|
|
189
|
+
def __getitem__(self, item):
|
|
190
|
+
return {"data": numpy.zeros((item * 2 + 5, 3))}
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
def test_MultiProcDataset_pickle():
|
|
194
|
+
import pickle
|
|
195
|
+
|
|
196
|
+
with timeout():
|
|
197
|
+
mp_dataset = MultiProcDataset(
|
|
198
|
+
dataset={"class": "MapDatasetWrapper", "map_dataset": _MyCustomDummyMapDataset},
|
|
199
|
+
num_workers=1,
|
|
200
|
+
buffer_size=1,
|
|
201
|
+
)
|
|
202
|
+
mp_dataset.initialize()
|
|
203
|
+
mp_dataset_seqs = dummy_iter_dataset(mp_dataset)
|
|
204
|
+
mp_dataset_serialized = pickle.dumps(mp_dataset)
|
|
205
|
+
|
|
206
|
+
with timeout():
|
|
207
|
+
mp_dataset_ = pickle.loads(mp_dataset_serialized)
|
|
208
|
+
mp_dataset_seqs_ = dummy_iter_dataset(mp_dataset_)
|
|
209
|
+
|
|
210
|
+
compare_dataset_seqs(mp_dataset_seqs, mp_dataset_seqs_)
|
|
211
|
+
|
|
212
|
+
|
|
141
213
|
if __name__ == "__main__":
|
|
142
214
|
better_exchook.install()
|
|
143
215
|
if len(sys.argv) <= 1:
|
|
@@ -85,6 +85,33 @@ def test_HDFDataset():
|
|
|
85
85
|
assert c == n
|
|
86
86
|
|
|
87
87
|
|
|
88
|
+
def test_MultiProcDataset_HDFDataset():
|
|
89
|
+
from test_HDFDataset import generate_hdf_from_other
|
|
90
|
+
from test_MultiProcDataset import timeout
|
|
91
|
+
from returnn.datasets.multi_proc import MultiProcDataset
|
|
92
|
+
|
|
93
|
+
hdf_fn = generate_hdf_from_other({"class": "Task12AXDataset", "num_seqs": 23})
|
|
94
|
+
with timeout(10):
|
|
95
|
+
mp_dataset = MultiProcDataset(
|
|
96
|
+
dataset={"class": "HDFDataset", "files": [hdf_fn], "cache_byte_size": 0},
|
|
97
|
+
num_workers=1,
|
|
98
|
+
buffer_size=1,
|
|
99
|
+
)
|
|
100
|
+
mp_dataset.initialize()
|
|
101
|
+
|
|
102
|
+
mp_manager = torch.multiprocessing.Manager()
|
|
103
|
+
loader = get_loader_from_returnn_dataset(mp_dataset, mp_manager)
|
|
104
|
+
c = 0
|
|
105
|
+
n = 3
|
|
106
|
+
for batch in loader:
|
|
107
|
+
print(batch)
|
|
108
|
+
c += 1
|
|
109
|
+
if c >= n:
|
|
110
|
+
break
|
|
111
|
+
|
|
112
|
+
assert c == n
|
|
113
|
+
|
|
114
|
+
|
|
88
115
|
if __name__ == "__main__":
|
|
89
116
|
better_exchook.install()
|
|
90
117
|
if len(sys.argv) <= 1:
|
|
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
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/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
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-chunking-blstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-contribrnn-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-maxgradnorm-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm-lowmem.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-native-lstm2.12ax.tuned.config
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/demo-tf-neural-transducer.12ax.config
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.20230823.135336 → returnn-1.20230824.648}/demos/demo-upd-mult-model.lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/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
|
|
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.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial/create_test_h5.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/create_test_h5.py
RENAMED
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/demos/mdlstm/artificial_rgb/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/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
|
|
File without changes
|
|
File without changes
|
{returnn-1.20230823.135336 → returnn-1.20230824.648}/returnn/datasets/util/feature_extraction.py
RENAMED
|
File without changes
|
|
File without changes
|