returnn 1.20240723.142327__tar.gz → 1.20240723.153926__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.20240723.142327 → returnn-1.20240723.153926}/PKG-INFO +1 -1
- returnn-1.20240723.153926/_setup_info_generated.py +2 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/lm.py +94 -54
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn.egg-info/PKG-INFO +1 -1
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Dataset.py +152 -0
- returnn-1.20240723.142327/_setup_info_generated.py +0 -2
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/.editorconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/.gitignore +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/.gitmodules +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/.kateconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/CHANGELOG.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/CODEOWNERS +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/CONTRIBUTING.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/LICENSE +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/MANIFEST.in +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/README.rst +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/12AX.cluster_map +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/_setup_returnn_env.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-fwd.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-horovod-mpi.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-horovod-mpi.py.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-horovod-mpi.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-hyper-param-tuning.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-iter-dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-list-devices.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-lua-torch-layer.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-pretrain.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-record-and-push-to-webserver.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-returnn-as-framework.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-rf-pt-benchmark.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-rf.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-rhn-enwik8.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-sprint-interface.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-att-copy.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-attention.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-enc-dec.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-hard-att-copy.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-lstm-benchmark.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm2.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-neural-transducer.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-rec-explicit-lstm.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-rec-explicit-rnn.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-rec-self-att.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-search-compiled-graph.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-timit-lstm-ctc.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-torch.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/README.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/chars.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/config_demo +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/config_fwd +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/config_real +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/decode.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/go.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/lines.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/split/eval.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/split/train.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/split/valid.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/create_test_h5.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/forwardconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/go.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/trainconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial_rgb/go.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/pyproject.toml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/requirements.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/__main__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/__old_mod_loader__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/__setup__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/config.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/audio.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/basic.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/bundle_file.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/cached.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/cached2.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/distrib_files.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/generating.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/hdf.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/map.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/meta.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/multi_proc.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/normalization_data.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/numpy_dump.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/raw_wav.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/sprint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/stereo.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/util/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/util/feature_extraction.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/util/strings.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/datasets/util/vocabulary.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/engine/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/engine/base.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/engine/batch.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/__main__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/.git +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/edit.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/reroute.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/select.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/subgraph.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/transform.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/extern/graph_editor/util.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/forward_iface.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/backend.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/backend.hpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/module.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/module.hpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/py_utils.hpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/tensor_ops.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_native/tensor_ops.hpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_numpy_backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_random_journal.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/_utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/array_.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/attention.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/audio/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/audio/mel.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/audio/specaugment.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/build_from_dict.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/cond.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/const.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/container.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/control_flow_ctx.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/conv.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/decoder/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/decoder/transformer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/device.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/dims.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/dropout.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/dtype.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/encoder/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/encoder/base.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/encoder/conformer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/gradient.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/graph.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/hooks.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/init.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/label_smoothing.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/linear.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/loop.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/loss.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/math_.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/matmul.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/module.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/normalization.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/parameter.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/parametrizations.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/parametrize.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/piecewise_linear.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/rand.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/rec.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/reduce.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/run_ctx.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/signal.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/state.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/stepwise_scheduler.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/tensor_array.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/frontend/types.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/import_/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/import_/common.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/import_/git.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/import_/import_.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/learning_rate_control.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/log.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/native_op.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/native_op.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/pretrain.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/cache.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/control.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/error_signals.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/extern_interface.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/sprint/interface.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/_dim_extra.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/_tensor_extra.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/_tensor_mixin_base.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/_tensor_op_overloads.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/control_flow_ctx.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/dim.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/marked_dim.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/tensor.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/tensor_dict.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tensor/utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/compat.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/data_pipeline.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/distributed.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/engine.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/_backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/_utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/cond.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/config_entry_points.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/dims.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/layer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/loop.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/make_layer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/masked_computation.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_low_level/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/frontend_low_level/_backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/horovod.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/hyper_param_tuning.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/base.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/basic.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/rec.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/segmental_model.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/signal_processing.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/layers/variable.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/native_op.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/network.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/sprint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/updater.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/basic.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/data.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/gradient_checkpoint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/ken_lm.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/tf/util/open_fst.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/extern_data.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/pipeline.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/queued_data_iter.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/data/tensor_utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/distributed.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/engine.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/frontend/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/frontend/_backend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/frontend/_rand.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/frontend/bridge.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/frontend/raw_ops.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/updater.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/array_.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/diagnose_gpu.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/gradient_checkpoint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/torch/util/scaled_gradient.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/__init__.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/basic.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/better_exchook.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/bpe.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/debug.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/debug_helpers.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/file_cache.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/fsa.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/literal_py_to_pickle.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/math.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/multi_proc_non_daemonic_spawn.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/native_code_compiler.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/pprint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/py-to-pickle.cpp +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/py_compat.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/py_ext_mod_compiler.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/result_with_reason.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/sig_proc.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/task_system.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/train_proc_manager.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn/util/watch_memory.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn.egg-info/SOURCES.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn.egg-info/dependency_links.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/returnn.egg-info/top_level.txt +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/rnn.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/setup.cfg +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/setup.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/DummySprintExec.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm-inspection-profile.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/.gitignore +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/.name +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/misc.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/modules.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/returnn.iml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/_set_num_threads1.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/_setup_returnn_env.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/_setup_test_env.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/bpe-unicode-demo.codes +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/bpe-unicode-demo.vocab +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/lexicon_opt.fst +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/lexicon_opt.isyms +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/lexicon_opt.jpg +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/lexicon_opt.osyms +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/lint_common.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/pycharm-inspect.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/pylint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/returnn-as-framework.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/rf_utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/spelling.dic +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Config.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Fsa.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_GeneratingDataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_HDFDataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_LearningRateControl.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Log.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_MultiProcDataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Pretrain.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_ResNet.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_SprintDataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_SprintInterface.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFEngine.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFNativeOp.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFNetworkLayer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFNetworkRecLayer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFNetworkSigProcLayer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFUpdater.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TFUtil.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TF_determinism.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TaskSystem.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TaskSystem_SharedMem.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_TranslationDataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_Util.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_demos.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_fork_exec.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_hdf_dump.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_array.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_attention.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_base.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_cond.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_const.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_container.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_conv.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_encoder_conformer.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_gradient.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_label_smoothing.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_loop.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_math.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_normalization.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_piecewise_linear.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_rec.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_reduce.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_rf_signal.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_tensor.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_tools.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_torch_dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_torch_engine.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_torch_frontend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_torch_internal_frontend.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/test_torch_util.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tests/torch_utils.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/_setup_returnn_env.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/analyze-dataset-batches.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/bliss-collect-seq-lens.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/bliss-dump-text.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/bliss-get-segment-names.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/bliss-to-ogg-zip.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/bpe-create-lexicon.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/calculate-word-error-rate.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/cleanup-old-models.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/collect-orth-symbols.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/collect-words.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/compile_native_op.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/compile_tf_graph.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/debug-dump-search-scores.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/debug-plot-search-scores.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-dataset-raw-strings.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-forward-stats.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-forward.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-network-json.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/dump-pickle.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/extract_state_tying_from_dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/get-attention-weights.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/get-best-model-epoch.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/hdf_dump.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/hdf_dump_translation_dataset.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/import-blocks-mt-model.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/import-t2t-mt-model.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/.gitignore +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/Makefile +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/README.md +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/libs_list +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/state_vars_list +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/example/tensor_names_list +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/file.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/main.cc +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/rescorer.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/vocabulary.cc +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/lattice_rescorer/vocabulary.h +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/tf_avg_checkpoints.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/tf_inspect_checkpoint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/tf_inspect_summary_log.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/torch_avg_checkpoints.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/torch_export_to_onnx.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/torch_inspect_checkpoint.py +0 -0
- {returnn-1.20240723.142327 → returnn-1.20240723.153926}/tools/torch_inspect_checkpoint_and_opt.py +0 -0
|
@@ -23,6 +23,7 @@ from returnn.log import log
|
|
|
23
23
|
|
|
24
24
|
from .basic import DatasetSeq
|
|
25
25
|
from .cached2 import CachedDataset2
|
|
26
|
+
from .util.vocabulary import Vocabulary
|
|
26
27
|
|
|
27
28
|
|
|
28
29
|
class LmDataset(CachedDataset2):
|
|
@@ -37,6 +38,7 @@ class LmDataset(CachedDataset2):
|
|
|
37
38
|
self,
|
|
38
39
|
corpus_file,
|
|
39
40
|
skip_empty_lines=True,
|
|
41
|
+
orth_vocab=None,
|
|
40
42
|
orth_symbols_file=None,
|
|
41
43
|
orth_symbols_map_file=None,
|
|
42
44
|
orth_replace_map_file=None,
|
|
@@ -76,6 +78,7 @@ class LmDataset(CachedDataset2):
|
|
|
76
78
|
|
|
77
79
|
:param str|()->str|list[str]|()->list[str] corpus_file: Bliss XML or line-based txt. optionally can be gzip.
|
|
78
80
|
:param bool skip_empty_lines: for line-based txt
|
|
81
|
+
:param dict[str,typing.Any]|Vocabulary orth_vocab:
|
|
79
82
|
:param str|()->str|None orth_symbols_file: a text file containing a list of orthography symbols
|
|
80
83
|
:param str|()->str|None orth_symbols_map_file: either a list of orth symbols, each line: "<symbol> <index>",
|
|
81
84
|
a python dict with {"<symbol>": <index>, ...}
|
|
@@ -87,7 +90,7 @@ class LmDataset(CachedDataset2):
|
|
|
87
90
|
:param str|None seq_end_symbol: what to add at the end, if given.
|
|
88
91
|
will be set as postfix=[seq_end_symbol] or postfix=[] for parse_orth_opts.
|
|
89
92
|
:param str|None unknown_symbol: token to represent unknown words.
|
|
90
|
-
:param dict[str]|None parse_orth_opts: kwargs for parse_orthography().
|
|
93
|
+
:param dict[str,typing.Any]|None parse_orth_opts: kwargs for parse_orthography().
|
|
91
94
|
:param dict|None phone_info: A dict containing parameters including a lexicon file for
|
|
92
95
|
:class:`LmDataset.PhoneSeqGenerator`.
|
|
93
96
|
:param int add_random_phone_seqs: will add random seqs with the same len as the real seq as additional data.
|
|
@@ -102,6 +105,13 @@ class LmDataset(CachedDataset2):
|
|
|
102
105
|
"""
|
|
103
106
|
super(LmDataset, self).__init__(**kwargs)
|
|
104
107
|
|
|
108
|
+
self._corpus_file = corpus_file
|
|
109
|
+
self._skip_empty_lines = skip_empty_lines
|
|
110
|
+
self._orth_symbols_file = orth_symbols_file
|
|
111
|
+
self._orth_symbols_map_file = orth_symbols_map_file
|
|
112
|
+
self._orth_replace_map_file = orth_replace_map_file
|
|
113
|
+
self._phone_info = phone_info
|
|
114
|
+
|
|
105
115
|
if callable(corpus_file):
|
|
106
116
|
corpus_file = corpus_file()
|
|
107
117
|
if callable(orth_symbols_file):
|
|
@@ -117,30 +127,31 @@ class LmDataset(CachedDataset2):
|
|
|
117
127
|
self.word_end_symbol = word_end_symbol
|
|
118
128
|
self.seq_end_symbol = seq_end_symbol
|
|
119
129
|
self.unknown_symbol = unknown_symbol
|
|
120
|
-
self.parse_orth_opts = parse_orth_opts or {}
|
|
121
|
-
self.parse_orth_opts.setdefault("word_based", self.word_based)
|
|
122
|
-
if self.word_end_symbol and not self.word_based: # Character-based modeling and word_end_symbol is specified.
|
|
123
|
-
# In this case, sentences end with self.word_end_symbol followed by the self.seq_end_symbol.
|
|
124
|
-
self.parse_orth_opts.setdefault(
|
|
125
|
-
"postfix",
|
|
126
|
-
(
|
|
127
|
-
[self.word_end_symbol, self.seq_end_symbol]
|
|
128
|
-
if self.seq_end_symbol is not None
|
|
129
|
-
else [self.word_end_symbol]
|
|
130
|
-
),
|
|
131
|
-
)
|
|
132
|
-
else:
|
|
133
|
-
self.parse_orth_opts.setdefault("postfix", [self.seq_end_symbol] if self.seq_end_symbol is not None else [])
|
|
134
130
|
|
|
135
|
-
|
|
131
|
+
self.orth_vocab = None
|
|
132
|
+
self.orth_symbols = None
|
|
133
|
+
self.orth_symbols_map = None
|
|
134
|
+
self.seq_gen = None
|
|
135
|
+
if orth_vocab:
|
|
136
|
+
assert not orth_symbols_file, "LmDataset: either orth_vocab or orth_symbols_file"
|
|
137
|
+
assert not phone_info, "LmDataset: either orth_vocab or phone_info"
|
|
138
|
+
assert not orth_symbols_map_file, "LmDataset: either orth_vocab or orth_symbols_map_file"
|
|
139
|
+
assert not auto_replace_unknown_symbol, "LmDataset: auto_replace_unknown_symbol is controlled via the vocab"
|
|
140
|
+
if isinstance(orth_vocab, dict):
|
|
141
|
+
self.orth_vocab = Vocabulary.create_vocab(**orth_vocab)
|
|
142
|
+
elif isinstance(orth_vocab, Vocabulary):
|
|
143
|
+
self.orth_vocab = orth_vocab
|
|
144
|
+
else:
|
|
145
|
+
raise TypeError(f"LmDataset: unexpected orth_vocab type {type(orth_vocab)}")
|
|
146
|
+
self.labels["data"] = self.orth_vocab.labels
|
|
147
|
+
elif orth_symbols_file:
|
|
136
148
|
assert not phone_info
|
|
137
149
|
assert not orth_symbols_map_file
|
|
138
150
|
orth_symbols = open(orth_symbols_file).read().splitlines()
|
|
139
151
|
self.orth_symbols_map = {sym: i for (i, sym) in enumerate(orth_symbols)}
|
|
140
152
|
self.orth_symbols = orth_symbols
|
|
141
153
|
self.labels["data"] = orth_symbols
|
|
142
|
-
|
|
143
|
-
if orth_symbols_map_file and orth_symbols_map_file.endswith(".pkl"):
|
|
154
|
+
elif orth_symbols_map_file and orth_symbols_map_file.endswith(".pkl"):
|
|
144
155
|
import pickle
|
|
145
156
|
|
|
146
157
|
with open(orth_symbols_map_file, "rb") as f:
|
|
@@ -148,7 +159,6 @@ class LmDataset(CachedDataset2):
|
|
|
148
159
|
self.orth_symbols = self.orth_symbols_map.keys()
|
|
149
160
|
reverse_map = {i: sym for (sym, i) in sorted(self.orth_symbols_map.items())}
|
|
150
161
|
self.labels["data"] = [sym for (i, sym) in sorted(reverse_map.items())]
|
|
151
|
-
self.seq_gen = None
|
|
152
162
|
elif orth_symbols_map_file:
|
|
153
163
|
assert not phone_info
|
|
154
164
|
with open(orth_symbols_map_file, "r") as f:
|
|
@@ -169,30 +179,57 @@ class LmDataset(CachedDataset2):
|
|
|
169
179
|
self.orth_symbols = [sym for (i, sym) in orth_symbols_imap_list]
|
|
170
180
|
reverse_map = {i: sym for (i, sym) in orth_symbols_imap_list}
|
|
171
181
|
self.labels["data"] = [sym for (i, sym) in sorted(reverse_map.items())]
|
|
172
|
-
|
|
173
|
-
else:
|
|
182
|
+
elif phone_info is not None:
|
|
174
183
|
assert not orth_symbols_file
|
|
175
184
|
assert isinstance(phone_info, dict)
|
|
176
185
|
self.seq_gen = PhoneSeqGenerator(**phone_info)
|
|
177
|
-
self.orth_symbols = None
|
|
178
186
|
self.labels["data"] = self.seq_gen.get_class_labels()
|
|
179
|
-
if orth_replace_map_file:
|
|
180
|
-
orth_replace_map = load_json(filename=orth_replace_map_file)
|
|
181
|
-
assert isinstance(orth_replace_map, dict)
|
|
182
|
-
self.orth_replace_map = {
|
|
183
|
-
key: parse_orthography_into_symbols(v, word_based=self.word_based)
|
|
184
|
-
for (key, v) in orth_replace_map.items()
|
|
185
|
-
}
|
|
186
|
-
if self.orth_replace_map:
|
|
187
|
-
if len(self.orth_replace_map) <= 5:
|
|
188
|
-
print(" orth_replace_map: %r" % self.orth_replace_map, file=log.v5)
|
|
189
|
-
else:
|
|
190
|
-
print(" orth_replace_map: %i entries" % len(self.orth_replace_map), file=log.v5)
|
|
191
187
|
else:
|
|
192
|
-
|
|
188
|
+
raise ValueError("LmDataset: need orth_symbols_file or orth_symbols_map_file or phone_info")
|
|
189
|
+
|
|
190
|
+
self.parse_orth_opts = None
|
|
191
|
+
if self.orth_symbols is not None:
|
|
192
|
+
self.parse_orth_opts = parse_orth_opts.copy() if parse_orth_opts else {}
|
|
193
|
+
self.parse_orth_opts.setdefault("word_based", self.word_based)
|
|
194
|
+
if self.word_end_symbol and not self.word_based:
|
|
195
|
+
# Character-based modeling and word_end_symbol is specified.
|
|
196
|
+
# In this case, sentences end with self.word_end_symbol followed by the self.seq_end_symbol.
|
|
197
|
+
self.parse_orth_opts.setdefault(
|
|
198
|
+
"postfix",
|
|
199
|
+
(
|
|
200
|
+
[self.word_end_symbol, self.seq_end_symbol]
|
|
201
|
+
if self.seq_end_symbol is not None
|
|
202
|
+
else [self.word_end_symbol]
|
|
203
|
+
),
|
|
204
|
+
)
|
|
205
|
+
else:
|
|
206
|
+
self.parse_orth_opts.setdefault(
|
|
207
|
+
"postfix", [self.seq_end_symbol] if self.seq_end_symbol is not None else []
|
|
208
|
+
)
|
|
209
|
+
else:
|
|
210
|
+
assert not parse_orth_opts
|
|
211
|
+
|
|
212
|
+
self.orth_replace_map = None
|
|
213
|
+
if self.orth_symbols is not None:
|
|
214
|
+
if orth_replace_map_file:
|
|
215
|
+
orth_replace_map = load_json(filename=orth_replace_map_file)
|
|
216
|
+
assert isinstance(orth_replace_map, dict)
|
|
217
|
+
self.orth_replace_map = {
|
|
218
|
+
key: parse_orthography_into_symbols(v, word_based=self.word_based)
|
|
219
|
+
for (key, v) in orth_replace_map.items()
|
|
220
|
+
}
|
|
221
|
+
if self.orth_replace_map:
|
|
222
|
+
if len(self.orth_replace_map) <= 5:
|
|
223
|
+
print(" orth_replace_map: %r" % self.orth_replace_map, file=log.v5)
|
|
224
|
+
else:
|
|
225
|
+
print(" orth_replace_map: %i entries" % len(self.orth_replace_map), file=log.v5)
|
|
226
|
+
else:
|
|
227
|
+
self.orth_replace_map = {}
|
|
193
228
|
|
|
194
|
-
|
|
195
|
-
|
|
229
|
+
if word_end_symbol and not word_based: # Character-based modeling and word_end_symbol is specified.
|
|
230
|
+
self.orth_replace_map[" "] = [word_end_symbol] # Replace all spaces by word_end_symbol.
|
|
231
|
+
else:
|
|
232
|
+
assert not orth_replace_map_file
|
|
196
233
|
|
|
197
234
|
num_labels = len(self.labels["data"])
|
|
198
235
|
if num_labels <= 2**7:
|
|
@@ -346,23 +383,10 @@ class LmDataset(CachedDataset2):
|
|
|
346
383
|
if orth == "</s>":
|
|
347
384
|
continue # special sentence end symbol. empty seq, ignore.
|
|
348
385
|
|
|
349
|
-
if self.
|
|
350
|
-
|
|
351
|
-
phones = self.seq_gen.generate_seq(orth)
|
|
352
|
-
except KeyError as e:
|
|
353
|
-
if self.log_skipped_seqs:
|
|
354
|
-
print(
|
|
355
|
-
"LmDataset: skipping sequence %r because of missing lexicon entry: %s" % (orth, e),
|
|
356
|
-
file=log.v4,
|
|
357
|
-
)
|
|
358
|
-
self._reduce_log_skipped_seqs()
|
|
359
|
-
if self.error_on_invalid_seq:
|
|
360
|
-
raise Exception("LmDataset: invalid seq %r, missing lexicon entry %r" % (orth, e))
|
|
361
|
-
self.num_skipped += 1
|
|
362
|
-
continue # try another seq
|
|
363
|
-
data = self.seq_gen.seq_to_class_idxs(phones, dtype=self.dtype)
|
|
386
|
+
if self.orth_vocab is not None:
|
|
387
|
+
data = numpy.array(self.orth_vocab.get_seq(orth), dtype=self.dtype)
|
|
364
388
|
|
|
365
|
-
elif self.orth_symbols:
|
|
389
|
+
elif self.orth_symbols is not None:
|
|
366
390
|
orth_syms = parse_orthography(orth, **self.parse_orth_opts)
|
|
367
391
|
while True:
|
|
368
392
|
orth_syms = sum([self.orth_replace_map.get(s, [s]) for s in orth_syms], [])
|
|
@@ -416,8 +440,24 @@ class LmDataset(CachedDataset2):
|
|
|
416
440
|
self.num_skipped += 1
|
|
417
441
|
continue # try another seq
|
|
418
442
|
|
|
443
|
+
elif self.seq_gen is not None:
|
|
444
|
+
try:
|
|
445
|
+
phones = self.seq_gen.generate_seq(orth)
|
|
446
|
+
except KeyError as e:
|
|
447
|
+
if self.log_skipped_seqs:
|
|
448
|
+
print(
|
|
449
|
+
"LmDataset: skipping sequence %r because of missing lexicon entry: %s" % (orth, e),
|
|
450
|
+
file=log.v4,
|
|
451
|
+
)
|
|
452
|
+
self._reduce_log_skipped_seqs()
|
|
453
|
+
if self.error_on_invalid_seq:
|
|
454
|
+
raise Exception("LmDataset: invalid seq %r, missing lexicon entry %r" % (orth, e))
|
|
455
|
+
self.num_skipped += 1
|
|
456
|
+
continue # try another seq
|
|
457
|
+
data = self.seq_gen.seq_to_class_idxs(phones, dtype=self.dtype)
|
|
458
|
+
|
|
419
459
|
else:
|
|
420
|
-
assert False
|
|
460
|
+
assert False, f"{self}, {self.orth_vocab}, {self.orth_symbols}, {self.seq_gen}"
|
|
421
461
|
|
|
422
462
|
targets = {}
|
|
423
463
|
for i in range(self.add_random_phone_seqs):
|
|
@@ -584,6 +584,158 @@ def test_OggZipDataset():
|
|
|
584
584
|
assert classes_ == _demo_txt + "."
|
|
585
585
|
|
|
586
586
|
|
|
587
|
+
def test_LmDataset_char_based():
|
|
588
|
+
from returnn.datasets.lm import LmDataset
|
|
589
|
+
|
|
590
|
+
with tempfile.NamedTemporaryFile("wt", suffix=".txt") as txt_file, tempfile.NamedTemporaryFile(
|
|
591
|
+
"wt", suffix=".syms"
|
|
592
|
+
) as orth_syms_file:
|
|
593
|
+
txt_file.write("Hello world\n")
|
|
594
|
+
txt_file.write("Next line\n")
|
|
595
|
+
txt_file.flush()
|
|
596
|
+
orth_syms_file.write("[END]\n")
|
|
597
|
+
covered = set()
|
|
598
|
+
for c in open(txt_file.name, "r").read():
|
|
599
|
+
if c not in covered and c != "\n":
|
|
600
|
+
orth_syms_file.write(c + "\n")
|
|
601
|
+
covered.add(c)
|
|
602
|
+
orth_syms_file.flush()
|
|
603
|
+
|
|
604
|
+
dataset = init_dataset(
|
|
605
|
+
{
|
|
606
|
+
"class": "LmDataset",
|
|
607
|
+
"corpus_file": txt_file.name,
|
|
608
|
+
"orth_symbols_file": orth_syms_file.name,
|
|
609
|
+
}
|
|
610
|
+
)
|
|
611
|
+
assert isinstance(dataset, LmDataset)
|
|
612
|
+
dataset.init_seq_order(epoch=1)
|
|
613
|
+
dataset.load_seqs(0, 2)
|
|
614
|
+
orth = dataset.get_data(0, "data")
|
|
615
|
+
assert orth.tolist() == [1, 2, 3, 3, 4, 5, 6, 4, 7, 3, 8, 0]
|
|
616
|
+
orth = dataset.get_data(1, "data")
|
|
617
|
+
assert orth.tolist() == [9, 2, 10, 11, 5, 3, 12, 13, 2, 0]
|
|
618
|
+
assert not dataset.is_less_than_num_seqs(2)
|
|
619
|
+
|
|
620
|
+
|
|
621
|
+
def test_LmDataset_word_based():
|
|
622
|
+
from returnn.datasets.lm import LmDataset
|
|
623
|
+
|
|
624
|
+
with tempfile.NamedTemporaryFile("wt", suffix=".txt") as txt_file, tempfile.NamedTemporaryFile(
|
|
625
|
+
"wt", suffix=".syms"
|
|
626
|
+
) as orth_syms_file:
|
|
627
|
+
txt_file.write("Hello world\n")
|
|
628
|
+
txt_file.write("Next line\n")
|
|
629
|
+
txt_file.flush()
|
|
630
|
+
orth_syms_file.write("[END]\n")
|
|
631
|
+
orth_syms_file.write("Hello\n")
|
|
632
|
+
orth_syms_file.write("world\n")
|
|
633
|
+
orth_syms_file.write("Next\n")
|
|
634
|
+
orth_syms_file.write("line\n")
|
|
635
|
+
orth_syms_file.flush()
|
|
636
|
+
|
|
637
|
+
dataset = init_dataset(
|
|
638
|
+
{
|
|
639
|
+
"class": "LmDataset",
|
|
640
|
+
"corpus_file": txt_file.name,
|
|
641
|
+
"word_based": True,
|
|
642
|
+
"orth_symbols_file": orth_syms_file.name,
|
|
643
|
+
}
|
|
644
|
+
)
|
|
645
|
+
assert isinstance(dataset, LmDataset)
|
|
646
|
+
dataset.init_seq_order(epoch=1)
|
|
647
|
+
dataset.load_seqs(0, 2)
|
|
648
|
+
orth = dataset.get_data(0, "data")
|
|
649
|
+
assert orth.tolist() == [1, 2, 0]
|
|
650
|
+
orth = dataset.get_data(1, "data")
|
|
651
|
+
assert orth.tolist() == [3, 4, 0]
|
|
652
|
+
assert not dataset.is_less_than_num_seqs(2)
|
|
653
|
+
|
|
654
|
+
|
|
655
|
+
def test_LmDataset_vocab_based():
|
|
656
|
+
from returnn.datasets.lm import LmDataset
|
|
657
|
+
|
|
658
|
+
with tempfile.NamedTemporaryFile("wt", suffix=".txt") as txt_file, tempfile.NamedTemporaryFile(
|
|
659
|
+
"wt", suffix=".syms"
|
|
660
|
+
) as orth_syms_file:
|
|
661
|
+
txt_file.write("Hello world\n")
|
|
662
|
+
txt_file.write("Next line\n")
|
|
663
|
+
txt_file.flush()
|
|
664
|
+
orth_syms_file.write(
|
|
665
|
+
repr(
|
|
666
|
+
{
|
|
667
|
+
"[END]": 0,
|
|
668
|
+
"Hello": 1,
|
|
669
|
+
"world": 2,
|
|
670
|
+
"Next": 3,
|
|
671
|
+
"line": 4,
|
|
672
|
+
}
|
|
673
|
+
)
|
|
674
|
+
)
|
|
675
|
+
orth_syms_file.write("\n")
|
|
676
|
+
orth_syms_file.flush()
|
|
677
|
+
|
|
678
|
+
dataset = init_dataset(
|
|
679
|
+
{
|
|
680
|
+
"class": "LmDataset",
|
|
681
|
+
"corpus_file": txt_file.name,
|
|
682
|
+
"orth_vocab": {
|
|
683
|
+
"class": "SamplingBytePairEncoding", # just as an example
|
|
684
|
+
"vocab_file": orth_syms_file.name,
|
|
685
|
+
"breadth_prob": 0.0,
|
|
686
|
+
"unknown_label": None,
|
|
687
|
+
},
|
|
688
|
+
}
|
|
689
|
+
)
|
|
690
|
+
assert isinstance(dataset, LmDataset)
|
|
691
|
+
dataset.init_seq_order(epoch=1)
|
|
692
|
+
dataset.load_seqs(0, 2)
|
|
693
|
+
orth = dataset.get_data(0, "data")
|
|
694
|
+
assert orth.tolist() == [1, 2]
|
|
695
|
+
orth = dataset.get_data(1, "data")
|
|
696
|
+
assert orth.tolist() == [3, 4]
|
|
697
|
+
assert not dataset.is_less_than_num_seqs(2)
|
|
698
|
+
|
|
699
|
+
|
|
700
|
+
def test_LmDataset_pickle():
|
|
701
|
+
import pickle
|
|
702
|
+
from returnn.datasets.lm import LmDataset
|
|
703
|
+
|
|
704
|
+
with tempfile.NamedTemporaryFile("wt", suffix=".txt") as txt_file, tempfile.NamedTemporaryFile(
|
|
705
|
+
"wt", suffix=".syms"
|
|
706
|
+
) as orth_syms_file:
|
|
707
|
+
txt_file.write("Hello world\n")
|
|
708
|
+
txt_file.write("Next line\n")
|
|
709
|
+
txt_file.flush()
|
|
710
|
+
orth_syms_file.write(repr({"[END]": 0, "Hello": 1, "world": 2, "Next": 3, "line": 4}))
|
|
711
|
+
orth_syms_file.write("\n")
|
|
712
|
+
orth_syms_file.flush()
|
|
713
|
+
|
|
714
|
+
dataset = init_dataset(
|
|
715
|
+
{
|
|
716
|
+
"class": "LmDataset",
|
|
717
|
+
"corpus_file": txt_file.name,
|
|
718
|
+
"orth_vocab": {
|
|
719
|
+
"vocab_file": orth_syms_file.name,
|
|
720
|
+
"unknown_label": None,
|
|
721
|
+
},
|
|
722
|
+
}
|
|
723
|
+
)
|
|
724
|
+
assert isinstance(dataset, LmDataset)
|
|
725
|
+
|
|
726
|
+
s = pickle.dumps(dataset)
|
|
727
|
+
dataset = pickle.loads(s)
|
|
728
|
+
assert isinstance(dataset, LmDataset)
|
|
729
|
+
|
|
730
|
+
dataset.init_seq_order(epoch=1)
|
|
731
|
+
dataset.load_seqs(0, 2)
|
|
732
|
+
orth = dataset.get_data(0, "data")
|
|
733
|
+
assert orth.tolist() == [1, 2]
|
|
734
|
+
orth = dataset.get_data(1, "data")
|
|
735
|
+
assert orth.tolist() == [3, 4]
|
|
736
|
+
assert not dataset.is_less_than_num_seqs(2)
|
|
737
|
+
|
|
738
|
+
|
|
587
739
|
def test_MetaDataset():
|
|
588
740
|
_demo_txt = "some utterance text"
|
|
589
741
|
|
|
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.20240723.142327 → returnn-1.20240723.153926}/demos/demo-hyper-param-tuning.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/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.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-chunking-blstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-contribrnn-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-maxgradnorm-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm-lowmem.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm2.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-native-lstm2.12ax.tuned.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-neural-transducer.12ax.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-rec-explicit-lstm.config
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-rec-explicit-rnn.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-search-compiled-graph.py
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-tf-vanilla-lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/demo-upd-mult-model.lstm.12ax.config
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/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.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/IAM/create_IAM_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/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.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/create_test_h5.py
RENAMED
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/demos/mdlstm/artificial_rgb/forwardconfig
RENAMED
|
File without changes
|
|
File without changes
|
{returnn-1.20240723.142327 → returnn-1.20240723.153926}/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
|