returnn 1.20230815.191535__tar.gz → 1.20230816.2116__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.

Files changed (411) hide show
  1. {returnn-1.20230815.191535/returnn.egg-info → returnn-1.20230816.2116}/PKG-INFO +1 -1
  2. returnn-1.20230816.2116/_setup_info_generated.py +2 -0
  3. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/__init__.py +1 -0
  4. returnn-1.20230816.2116/returnn/frontend/audio/__init__.py +5 -0
  5. returnn-1.20230815.191535/returnn/frontend/signal.py → returnn-1.20230816.2116/returnn/frontend/audio/mel.py +4 -88
  6. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/run_ctx.py +19 -5
  7. returnn-1.20230816.2116/returnn/frontend/signal.py +95 -0
  8. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/config_entry_points.py +6 -2
  9. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/layer.py +4 -0
  10. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/engine.py +4 -2
  11. {returnn-1.20230815.191535 → returnn-1.20230816.2116/returnn.egg-info}/PKG-INFO +1 -1
  12. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn.egg-info/SOURCES.txt +2 -0
  13. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/rf_utils.py +1 -1
  14. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_rec.py +1 -1
  15. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_signal.py +1 -1
  16. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/torch_export_to_onnx.py +3 -2
  17. returnn-1.20230815.191535/_setup_info_generated.py +0 -2
  18. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/.editorconfig +0 -0
  19. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/.gitignore +0 -0
  20. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/.gitmodules +0 -0
  21. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/.kateconfig +0 -0
  22. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/CHANGELOG.md +0 -0
  23. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/CODEOWNERS +0 -0
  24. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/CONTRIBUTING.md +0 -0
  25. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/LICENSE +0 -0
  26. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/MANIFEST.in +0 -0
  27. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/README.rst +0 -0
  28. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/__init__.py +0 -0
  29. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/12AX.cluster_map +0 -0
  30. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/_setup_returnn_env.py +0 -0
  31. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-fwd.config +0 -0
  32. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-horovod-mpi.py +0 -0
  33. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-horovod-mpi.py.sh +0 -0
  34. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-horovod-mpi.sh +0 -0
  35. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-hyper-param-tuning.config +0 -0
  36. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-iter-dataset.py +0 -0
  37. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-list-devices.py +0 -0
  38. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-lua-torch-layer.config +0 -0
  39. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-pretrain.config +0 -0
  40. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-record-and-push-to-webserver.py +0 -0
  41. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-returnn-as-framework.py +0 -0
  42. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-rf.config +0 -0
  43. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-rhn-enwik8.config +0 -0
  44. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-sprint-interface.py +0 -0
  45. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-att-copy.config +0 -0
  46. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-attention.config +0 -0
  47. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-chunking-blstm.12ax.config +0 -0
  48. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-contribrnn-lstm.12ax.config +0 -0
  49. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-enc-dec.config +0 -0
  50. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-hard-att-copy.config +0 -0
  51. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-lstm-benchmark.py +0 -0
  52. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-maxgradnorm-lstm.12ax.config +0 -0
  53. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-native-lstm-lowmem.12ax.config +0 -0
  54. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-native-lstm.12ax.config +0 -0
  55. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-native-lstm2.12ax.config +0 -0
  56. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-native-lstm2.12ax.tuned.config +0 -0
  57. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-neural-transducer.12ax.config +0 -0
  58. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-rec-explicit-lstm.config +0 -0
  59. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-rec-explicit-rnn.config +0 -0
  60. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-rec-self-att.config +0 -0
  61. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-search-compiled-graph.py +0 -0
  62. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-tf-vanilla-lstm.12ax.config +0 -0
  63. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-timit-lstm-ctc.config +0 -0
  64. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-torch.config +0 -0
  65. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo-upd-mult-model.lstm.12ax.config +0 -0
  66. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/demo.sh +0 -0
  67. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/IAM_lines/a01-000u-00.png +0 -0
  68. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/IAM_lines/a01-007-04.png +0 -0
  69. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/IAM_lines/a01-007-06.png +0 -0
  70. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/README.txt +0 -0
  71. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/chars.txt +0 -0
  72. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/config_demo +0 -0
  73. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/config_fwd +0 -0
  74. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/config_real +0 -0
  75. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/create_IAM_dataset.py +0 -0
  76. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/decode.py +0 -0
  77. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/features/raw/demo.h5 +0 -0
  78. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/go.sh +0 -0
  79. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/lines.txt +0 -0
  80. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/split/eval.txt +0 -0
  81. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/split/train.txt +0 -0
  82. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/IAM/split/valid.txt +0 -0
  83. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/README.md +0 -0
  84. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial/create_test_h5.py +0 -0
  85. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial/forwardconfig +0 -0
  86. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial/go.sh +0 -0
  87. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial/trainconfig +0 -0
  88. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial_rgb/create_test_h5.py +0 -0
  89. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial_rgb/forwardconfig +0 -0
  90. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial_rgb/go.sh +0 -0
  91. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/demos/mdlstm/artificial_rgb/trainconfig +0 -0
  92. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/pyproject.toml +0 -0
  93. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/requirements.txt +0 -0
  94. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/__init__.py +0 -0
  95. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/__main__.py +0 -0
  96. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/__old_mod_loader__.py +0 -0
  97. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/__setup__.py +0 -0
  98. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/config.py +0 -0
  99. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/__init__.py +0 -0
  100. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/audio.py +0 -0
  101. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/basic.py +0 -0
  102. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/bundle_file.py +0 -0
  103. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/cached.py +0 -0
  104. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/cached2.py +0 -0
  105. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/generating.py +0 -0
  106. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/hdf.py +0 -0
  107. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/lm.py +0 -0
  108. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/map.py +0 -0
  109. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/meta.py +0 -0
  110. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/multi_proc.py +0 -0
  111. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/normalization_data.py +0 -0
  112. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/numpy_dump.py +0 -0
  113. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/raw_wav.py +0 -0
  114. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/sprint.py +0 -0
  115. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/stereo.py +0 -0
  116. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/util/__init__.py +0 -0
  117. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/util/feature_extraction.py +0 -0
  118. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/util/strings.py +0 -0
  119. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/datasets/util/vocabulary.py +0 -0
  120. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/engine/__init__.py +0 -0
  121. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/engine/base.py +0 -0
  122. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/engine/batch.py +0 -0
  123. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/__init__.py +0 -0
  124. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/__main__.py +0 -0
  125. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/.git +0 -0
  126. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/.gitignore +0 -0
  127. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/LICENSE +0 -0
  128. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/README.md +0 -0
  129. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/aligner.gif +0 -0
  130. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/check.png +0 -0
  131. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/core.cu +0 -0
  132. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/core.h +0 -0
  133. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/core_cpu.cpp +0 -0
  134. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/LICENSE +0 -0
  135. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/MANIFEST.in +0 -0
  136. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/README.md +0 -0
  137. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/binding.cpp +0 -0
  138. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.cu +0 -0
  139. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/core.h +0 -0
  140. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/requirements.txt +0 -0
  141. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/setup.py +0 -0
  142. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/__init__.py +0 -0
  143. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/pytorch_binding/warp_rna/test.py +0 -0
  144. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/ref_rna.py +0 -0
  145. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/setup.py +0 -0
  146. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op.cc +0 -0
  147. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/src/warp_rna_op_kernel_tmpl.h +0 -0
  148. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/tensorflow_binding/warp_rna/__init__.py +0 -0
  149. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/WarpRna/warp-rna/test.cpp +0 -0
  150. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/__init__.py +0 -0
  151. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/README.md +0 -0
  152. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/__init__.py +0 -0
  153. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/edit.py +0 -0
  154. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/reroute.py +0 -0
  155. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/select.py +0 -0
  156. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/subgraph.py +0 -0
  157. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/transform.py +0 -0
  158. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/extern/graph_editor/util.py +0 -0
  159. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/forward_iface.py +0 -0
  160. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/_backend.py +0 -0
  161. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/_numpy_backend.py +0 -0
  162. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/_utils.py +0 -0
  163. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/array_.py +0 -0
  164. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/attention.py +0 -0
  165. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/cond.py +0 -0
  166. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/const.py +0 -0
  167. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/container.py +0 -0
  168. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/control_flow_ctx.py +0 -0
  169. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/conv.py +0 -0
  170. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/device.py +0 -0
  171. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/dims.py +0 -0
  172. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/dropout.py +0 -0
  173. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/dtype.py +0 -0
  174. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/encoder/__init__.py +0 -0
  175. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/encoder/base.py +0 -0
  176. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/encoder/conformer.py +0 -0
  177. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/gradient.py +0 -0
  178. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/init.py +0 -0
  179. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/label_smoothing.py +0 -0
  180. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/linear.py +0 -0
  181. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/loop.py +0 -0
  182. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/loss.py +0 -0
  183. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/math_.py +0 -0
  184. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/matmul.py +0 -0
  185. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/module.py +0 -0
  186. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/normalization.py +0 -0
  187. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/parameter.py +0 -0
  188. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/rand.py +4 -4
  189. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/rec.py +0 -0
  190. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/reduce.py +0 -0
  191. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/state.py +0 -0
  192. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/tensor_array.py +0 -0
  193. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/frontend/types.py +0 -0
  194. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/import_/__init__.py +0 -0
  195. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/import_/common.py +0 -0
  196. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/import_/git.py +0 -0
  197. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/import_/import_.py +0 -0
  198. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/learning_rate_control.py +0 -0
  199. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/log.py +0 -0
  200. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/native_op.cpp +0 -0
  201. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/native_op.py +0 -0
  202. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/pretrain.py +0 -0
  203. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/__init__.py +0 -0
  204. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/cache.py +0 -0
  205. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/control.py +0 -0
  206. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/error_signals.py +0 -0
  207. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/extern_interface.py +0 -0
  208. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/sprint/interface.py +0 -0
  209. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/README.md +0 -0
  210. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/__init__.py +0 -0
  211. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/_dim_extra.py +0 -0
  212. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/_tensor_extra.py +0 -0
  213. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/_tensor_mixin_base.py +0 -0
  214. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/_tensor_op_overloads.py +0 -0
  215. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/control_flow_ctx.py +0 -0
  216. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/dim.py +0 -0
  217. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/marked_dim.py +0 -0
  218. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/tensor.py +0 -0
  219. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/tensor_dict.py +0 -0
  220. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tensor/utils.py +0 -0
  221. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/__init__.py +0 -0
  222. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/compat.py +0 -0
  223. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/data_pipeline.py +0 -0
  224. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/distributed.py +0 -0
  225. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/engine.py +0 -0
  226. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/__init__.py +0 -0
  227. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/_backend.py +0 -0
  228. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/_utils.py +0 -0
  229. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/cond.py +0 -0
  230. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/debug_eager_mode.py +0 -0
  231. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/dims.py +0 -0
  232. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/make_layer.py +0 -0
  233. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/parameter_assign.py +0 -0
  234. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_layers/prev_tensor_ref.py +0 -0
  235. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_low_level/__init__.py +0 -0
  236. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/frontend_low_level/_backend.py +0 -0
  237. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/horovod.py +0 -0
  238. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/hyper_param_tuning.py +0 -0
  239. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/__init__.py +0 -0
  240. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/base.py +0 -0
  241. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/basic.py +0 -0
  242. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/rec.py +0 -0
  243. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/segmental_model.py +0 -0
  244. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/signal_processing.py +0 -0
  245. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/layers/variable.py +0 -0
  246. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/native_op.py +0 -0
  247. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/network.py +0 -0
  248. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/sprint.py +0 -0
  249. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/updater.py +0 -0
  250. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/__init__.py +0 -0
  251. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/basic.py +0 -0
  252. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/data.py +0 -0
  253. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/gradient_checkpoint.py +0 -0
  254. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/ken_lm.py +0 -0
  255. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/tf/util/open_fst.py +0 -0
  256. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/README.md +0 -0
  257. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/__init__.py +0 -0
  258. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/data/__init__.py +0 -0
  259. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/data/pipeline.py +0 -0
  260. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/data/returnn_dataset_wrapper.py +0 -0
  261. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/data/tensor_utils.py +0 -0
  262. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/distributed.py +0 -0
  263. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/frontend/__init__.py +0 -0
  264. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/frontend/_backend.py +0 -0
  265. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/frontend/_rand.py +0 -0
  266. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/frontend/bridge.py +0 -0
  267. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/functional/README.md +0 -0
  268. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/functional/__init__.py +0 -0
  269. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/functional/scaled_gradient.py +0 -0
  270. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/torch/updater.py +0 -0
  271. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/__init__.py +0 -0
  272. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/basic.py +0 -0
  273. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/better_exchook.py +0 -0
  274. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/bpe.py +0 -0
  275. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/debug.py +0 -0
  276. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/debug_helpers.py +0 -0
  277. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/fsa.py +0 -0
  278. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/literal_py_to_pickle.py +0 -0
  279. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/math.py +0 -0
  280. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/pprint.py +0 -0
  281. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/py-to-pickle.cpp +0 -0
  282. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/py_compat.py +0 -0
  283. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/sig_proc.py +0 -0
  284. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn/util/task_system.py +0 -0
  285. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn.egg-info/dependency_links.txt +0 -0
  286. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/returnn.egg-info/top_level.txt +0 -0
  287. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/rnn.py +0 -0
  288. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/setup.cfg +0 -0
  289. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/setup.py +0 -0
  290. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/DummySprintExec.py +0 -0
  291. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm-inspection-profile.xml +0 -0
  292. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/.gitignore +0 -0
  293. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/.name +0 -0
  294. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/codeStyleSettings.xml +0 -0
  295. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/codeStyles/Project.xml +0 -0
  296. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/codeStyles/codeStyleConfig.xml +0 -0
  297. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/inspectionProfiles/Project_Default.xml +0 -0
  298. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/inspectionProfiles/profiles_settings.xml +0 -0
  299. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/misc.xml +0 -0
  300. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/modules.xml +0 -0
  301. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/returnn.iml +0 -0
  302. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/PyCharm.idea/scopes/scope_settings.xml +0 -0
  303. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/_set_num_threads1.py +0 -0
  304. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/_setup_returnn_env.py +0 -0
  305. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/_setup_test_env.py +0 -0
  306. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/bpe-unicode-demo.codes +0 -0
  307. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/bpe-unicode-demo.vocab +0 -0
  308. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/lexicon_opt.fst +0 -0
  309. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/lexicon_opt.isyms +0 -0
  310. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/lexicon_opt.jpg +0 -0
  311. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/lexicon_opt.osyms +0 -0
  312. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/lint_common.py +0 -0
  313. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/pycharm-inspect.py +0 -0
  314. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/pylint.py +0 -0
  315. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/returnn-as-framework.py +0 -0
  316. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/spelling.dic +0 -0
  317. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Config.py +0 -0
  318. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Dataset.py +0 -0
  319. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Fsa.py +0 -0
  320. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_GeneratingDataset.py +0 -0
  321. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_HDFDataset.py +0 -0
  322. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_LearningRateControl.py +0 -0
  323. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Log.py +0 -0
  324. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_MultiProcDataset.py +0 -0
  325. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_PTDataset.py +0 -0
  326. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Pretrain.py +0 -0
  327. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_ResNet.py +0 -0
  328. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_SprintDataset.py +0 -0
  329. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_SprintInterface.py +0 -0
  330. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFEngine.py +0 -0
  331. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFNativeOp.py +0 -0
  332. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFNetworkLayer.py +0 -0
  333. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFNetworkRecLayer.py +0 -0
  334. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFNetworkSigProcLayer.py +0 -0
  335. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFUpdater.py +0 -0
  336. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TFUtil.py +0 -0
  337. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TF_determinism.py +0 -0
  338. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TaskSystem.py +0 -0
  339. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TaskSystem_SharedMem.py +0 -0
  340. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_TranslationDataset.py +0 -0
  341. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_Util.py +0 -0
  342. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_demos.py +0 -0
  343. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_fork_exec.py +0 -0
  344. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_hdf_dump.py +0 -0
  345. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_array.py +0 -0
  346. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_attention.py +0 -0
  347. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_base.py +0 -0
  348. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_cond.py +0 -0
  349. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_const.py +0 -0
  350. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_container.py +0 -0
  351. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_conv.py +0 -0
  352. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_encoder_conformer.py +0 -0
  353. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_gradient.py +0 -0
  354. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_label_smoothing.py +0 -0
  355. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_loop.py +0 -0
  356. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_math.py +0 -0
  357. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_normalization.py +0 -0
  358. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_rf_reduce.py +0 -0
  359. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_tensor.py +0 -0
  360. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_tools.py +0 -0
  361. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_torch_engine.py +0 -0
  362. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_torch_frontend.py +0 -0
  363. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tests/test_torch_internal_frontend.py +0 -0
  364. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/_setup_returnn_env.py +0 -0
  365. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/analyze-dataset-batches.py +0 -0
  366. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/bliss-collect-seq-lens.py +0 -0
  367. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/bliss-dump-text.py +0 -0
  368. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/bliss-get-segment-names.py +0 -0
  369. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/bliss-to-ogg-zip.py +0 -0
  370. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/bpe-create-lexicon.py +0 -0
  371. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/calculate-word-error-rate.py +0 -0
  372. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/cleanup-old-models.py +0 -0
  373. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/collect-orth-symbols.py +0 -0
  374. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/collect-words.py +0 -0
  375. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/compile_native_op.py +0 -0
  376. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/compile_tf_graph.py +0 -0
  377. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/debug-dump-search-scores.py +0 -0
  378. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/debug-plot-search-scores.py +0 -0
  379. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-dataset-raw-strings.py +0 -0
  380. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-dataset.py +0 -0
  381. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-forward-stats.py +0 -0
  382. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-forward.py +0 -0
  383. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-network-json.py +0 -0
  384. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/dump-pickle.py +0 -0
  385. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/extract_state_tying_from_dataset.py +0 -0
  386. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/get-attention-weights.py +0 -0
  387. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/get-best-model-epoch.py +0 -0
  388. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/hdf_dump.py +0 -0
  389. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/hdf_dump_translation_dataset.py +0 -0
  390. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/import-blocks-mt-model.py +0 -0
  391. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/import-t2t-mt-model.py +0 -0
  392. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/.gitignore +0 -0
  393. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/Makefile +0 -0
  394. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/README.md +0 -0
  395. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/README.md +0 -0
  396. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/libs_list +0 -0
  397. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.config +0 -0
  398. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/network.040/i600_m600_m600.sgd_b16_lr0_cl2.newbobabs.keep_over_epoch.lstm2.config +0 -0
  399. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/rescore_lattice.sh +0 -0
  400. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/state_vars_list +0 -0
  401. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/example/tensor_names_list +0 -0
  402. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/file.h +0 -0
  403. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/htklatticerescorer.cc +0 -0
  404. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/htklatticerescorer.h +0 -0
  405. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/main.cc +0 -0
  406. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/rescorer.h +0 -0
  407. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/vocabulary.cc +0 -0
  408. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/lattice_rescorer/vocabulary.h +0 -0
  409. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/tf_avg_checkpoints.py +0 -0
  410. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/tf_inspect_checkpoint.py +0 -0
  411. {returnn-1.20230815.191535 → returnn-1.20230816.2116}/tools/tf_inspect_summary_log.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: returnn
3
- Version: 1.20230815.191535
3
+ Version: 1.20230816.2116
4
4
  Summary: The RWTH extensible training framework for universal recurrent neural networks
5
5
  Home-page: https://github.com/rwth-i6/returnn/
6
6
  Author: Albert Zeyer
@@ -0,0 +1,2 @@
1
+ version = '1.20230816.002116'
2
+ long_version = '1.20230816.002116+git.e1ca657'
@@ -45,6 +45,7 @@ from .signal import *
45
45
  from .types import *
46
46
 
47
47
  # Modules not in the main namespace but in sub namespaces.
48
+ from . import audio
48
49
  from . import init
49
50
 
50
51
  # And some functions from the internal backend API.
@@ -0,0 +1,5 @@
1
+ """
2
+ Audio utils
3
+ """
4
+
5
+ from .mel import *
@@ -1,103 +1,19 @@
1
1
  """
2
- stft etc
2
+ Mel filterbank.
3
3
  """
4
4
 
5
5
 
6
6
  from __future__ import annotations
7
7
  from typing import Optional, Union, Tuple
8
+ import functools
8
9
  import math
9
10
  import numpy
10
- import functools
11
11
  from returnn.util import math as util_math
12
12
  from returnn.tensor import Tensor, Dim
13
13
  import returnn.frontend as rf
14
14
 
15
15
 
16
- __all__ = ["stft", "mel_filterbank", "log_mel_filterbank_from_raw"]
17
-
18
-
19
- def stft(
20
- x: Tensor,
21
- *,
22
- in_spatial_dim: Dim,
23
- frame_step: int,
24
- frame_length: int,
25
- fft_length: Optional[int] = None,
26
- window_use_frame_length: bool = True,
27
- align_window_left: bool = True,
28
- window_enforce_even: bool = True,
29
- out_spatial_dim: Optional[Dim] = None,
30
- out_dim: Optional[Dim] = None,
31
- ) -> Tuple[Tensor, Dim, Dim]:
32
- """
33
- Calculate the short-time Fourier transform (STFT) of a signal.
34
-
35
- We currently always use the Hann window.
36
-
37
- Note that there are inconsistencies between frameworks (e.g. PyTorch vs TensorFlow).
38
- We have options where you can explicitly specify the behavior,
39
- to match either PyTorch or TensorFlow.
40
- See here for some discussion and demonstration:
41
- https://github.com/pytorch/pytorch/issues/100177
42
- https://github.com/librosa/librosa/issues/1701
43
- https://github.com/albertz/playground/blob/master/tf_pt_stft.py
44
-
45
- :param x: (..., in_spatial_dim, ...). any other dims are treated as batch dims.
46
- :param in_spatial_dim:
47
- :param frame_length: win_length in PT/librosa, frame_size in StftLayer, frame_length in TF
48
- :param frame_step: hop_length in PT/librosa, frame_shift in StftLayer, frame_step in TF
49
- :param fft_length: n_fft in PT/librosa, fft_size in StftLayer, fft_length in TF.
50
- If not given, will use frame_length.
51
- :param window_use_frame_length: Whether to use window size = frame_length.
52
- If False, uses window size = fft_length.
53
- This has only an effect if frame_length != fft_length.
54
- This has an effect on the output seq length.
55
- If True: out_seq_len = ⌈(T - frame_length + 1) / frame_step⌉ (T = in_seq_len).
56
- If False: out_seq_len = ⌈(T - fft_length + 1) / frame_step⌉.
57
- Note that in TF/SciPy, the behavior matches to window_use_frame_length=True,
58
- but in PT/librosa, the behavior matches to window_use_frame_length=False.
59
- :param align_window_left: whether to align the window to the left inside the potential wider fft_length window.
60
- This only has an effect if frame_length != fft_length.
61
- If True, the window will be aligned to the left and the right side will be padded with zeros.
62
- Then effectively the remaining phases are not used.
63
- If False, the window will be aligned to the center and the left and right side will be padded with zeros.
64
- Then effectively the beginning and end phases are not used.
65
- In TF/SciPy, the behavior matches to align_window_left=True,
66
- but in PT/librosa, the behavior matches to align_window_left=False.
67
- :param window_enforce_even: enforce that the window size is even, potentially lowering the window size by 1.
68
- This only has an effect if the window size is uneven.
69
- In TF, the behavior matches to window_enforce_even=True,
70
- but in most other frameworks, the behavior matches to window_enforce_even=False.
71
- :param out_spatial_dim:
72
- :param out_dim:
73
- :return: (stft, out_spatial_dim, out_dim)
74
- """
75
- fft_length = fft_length or frame_length
76
- if out_dim is None:
77
- out_dim = Dim(fft_length // 2 + 1, name="stft-freq")
78
- if out_spatial_dim is None:
79
- from .conv import make_conv_out_spatial_dims
80
-
81
- (out_spatial_dim,) = make_conv_out_spatial_dims(
82
- [in_spatial_dim], filter_size=frame_length, strides=frame_step, padding="valid"
83
- )
84
- # noinspection PyProtectedMember
85
- return (
86
- x._raw_backend.stft(
87
- x,
88
- in_spatial_dim=in_spatial_dim,
89
- frame_step=frame_step,
90
- frame_length=frame_length,
91
- fft_length=fft_length,
92
- window_use_frame_length=window_use_frame_length,
93
- align_window_left=align_window_left,
94
- window_enforce_even=window_enforce_even,
95
- out_spatial_dim=out_spatial_dim,
96
- out_dim=out_dim,
97
- ),
98
- out_spatial_dim,
99
- out_dim,
100
- )
16
+ __all__ = ["mel_filterbank", "log_mel_filterbank_from_raw"]
101
17
 
102
18
 
103
19
  def mel_filterbank(
@@ -275,7 +191,7 @@ def log_mel_filterbank_from_raw(
275
191
  fft_length=n_fft,
276
192
  )
277
193
  power_spectrogram = rf.abs(spectrogram) ** 2.0
278
- mel_fbank = rf.mel_filterbank(power_spectrogram, in_dim=in_dim_, out_dim=out_dim, sampling_rate=sampling_rate)
194
+ mel_fbank = mel_filterbank(power_spectrogram, in_dim=in_dim_, out_dim=out_dim, sampling_rate=sampling_rate)
279
195
  log_mel_fbank = rf.safe_log(mel_fbank, eps=1e-10)
280
196
  if log_base != math.e:
281
197
  log_mel_fbank = log_mel_fbank * (1.0 / math.log(log_base))
@@ -29,20 +29,20 @@ def reset_run_ctx():
29
29
  _run_ctx = None
30
30
 
31
31
 
32
- def init_train_step_run_ctx(*, train_flag: Union[bool, Tensor]):
32
+ def init_train_step_run_ctx(*, train_flag: Union[bool, Tensor], step: Union[int, Tensor]):
33
33
  """
34
34
  Call this at the beginning of a new train step.
35
35
  """
36
36
  global _run_ctx
37
- _run_ctx = RunCtx(stage="train_step", train_flag=train_flag)
37
+ _run_ctx = RunCtx(stage="train_step", train_flag=train_flag, step=step)
38
38
 
39
39
 
40
- def init_forward_step_run_ctx(expected_outputs: Optional[TensorDict] = None):
40
+ def init_forward_step_run_ctx(*, expected_outputs: Optional[TensorDict] = None, step: Union[int, Tensor]):
41
41
  """
42
42
  Call this at the beginning of a new forward step.
43
43
  """
44
44
  global _run_ctx
45
- _run_ctx = RunCtx(stage="forward_step", expected_outputs=expected_outputs)
45
+ _run_ctx = RunCtx(stage="forward_step", expected_outputs=expected_outputs, step=step)
46
46
 
47
47
 
48
48
  def get_run_ctx() -> RunCtx:
@@ -68,7 +68,12 @@ class RunCtx:
68
68
  """
69
69
 
70
70
  def __init__(
71
- self, *, stage: str, train_flag: Union[bool, Tensor] = False, expected_outputs: Optional[TensorDict] = None
71
+ self,
72
+ *,
73
+ stage: str,
74
+ train_flag: Union[bool, Tensor] = False,
75
+ step: Union[int, Tensor] = 0,
76
+ expected_outputs: Optional[TensorDict] = None,
72
77
  ):
73
78
  """
74
79
  :param stage:
@@ -78,6 +83,7 @@ class RunCtx:
78
83
  """
79
84
  self._stage = stage
80
85
  self._train_flag = train_flag
86
+ self._step = step
81
87
  self.losses = {} # type: Dict[str, Loss]
82
88
  self.outputs = TensorDict()
83
89
  self.expected_outputs = expected_outputs
@@ -98,6 +104,14 @@ class RunCtx:
98
104
  """
99
105
  return self._train_flag
100
106
 
107
+ @property
108
+ def step(self) -> Union[int, Tensor]:
109
+ """
110
+ :return: global train step, starting with 0, not reset after an epoch, i.e. ignoring the epochs.
111
+ In a graph-based backend, this can be dynamic.
112
+ """
113
+ return self._step
114
+
101
115
  def mark_as_loss(
102
116
  self,
103
117
  loss: Union[Tensor, Any],
@@ -0,0 +1,95 @@
1
+ """
2
+ stft etc
3
+ """
4
+
5
+
6
+ from __future__ import annotations
7
+ from typing import Optional, Tuple
8
+ from returnn.tensor import Tensor, Dim
9
+
10
+
11
+ __all__ = ["stft"]
12
+
13
+
14
+ def stft(
15
+ x: Tensor,
16
+ *,
17
+ in_spatial_dim: Dim,
18
+ frame_step: int,
19
+ frame_length: int,
20
+ fft_length: Optional[int] = None,
21
+ window_use_frame_length: bool = True,
22
+ align_window_left: bool = True,
23
+ window_enforce_even: bool = True,
24
+ out_spatial_dim: Optional[Dim] = None,
25
+ out_dim: Optional[Dim] = None,
26
+ ) -> Tuple[Tensor, Dim, Dim]:
27
+ """
28
+ Calculate the short-time Fourier transform (STFT) of a signal.
29
+
30
+ We currently always use the Hann window.
31
+
32
+ Note that there are inconsistencies between frameworks (e.g. PyTorch vs TensorFlow).
33
+ We have options where you can explicitly specify the behavior,
34
+ to match either PyTorch or TensorFlow.
35
+ See here for some discussion and demonstration:
36
+ https://github.com/pytorch/pytorch/issues/100177
37
+ https://github.com/librosa/librosa/issues/1701
38
+ https://github.com/albertz/playground/blob/master/tf_pt_stft.py
39
+
40
+ :param x: (..., in_spatial_dim, ...). any other dims are treated as batch dims.
41
+ :param in_spatial_dim:
42
+ :param frame_length: win_length in PT/librosa, frame_size in StftLayer, frame_length in TF
43
+ :param frame_step: hop_length in PT/librosa, frame_shift in StftLayer, frame_step in TF
44
+ :param fft_length: n_fft in PT/librosa, fft_size in StftLayer, fft_length in TF.
45
+ If not given, will use frame_length.
46
+ :param window_use_frame_length: Whether to use window size = frame_length.
47
+ If False, uses window size = fft_length.
48
+ This has only an effect if frame_length != fft_length.
49
+ This has an effect on the output seq length.
50
+ If True: out_seq_len = ⌈(T - frame_length + 1) / frame_step⌉ (T = in_seq_len).
51
+ If False: out_seq_len = ⌈(T - fft_length + 1) / frame_step⌉.
52
+ Note that in TF/SciPy, the behavior matches to window_use_frame_length=True,
53
+ but in PT/librosa, the behavior matches to window_use_frame_length=False.
54
+ :param align_window_left: whether to align the window to the left inside the potential wider fft_length window.
55
+ This only has an effect if frame_length != fft_length.
56
+ If True, the window will be aligned to the left and the right side will be padded with zeros.
57
+ Then effectively the remaining phases are not used.
58
+ If False, the window will be aligned to the center and the left and right side will be padded with zeros.
59
+ Then effectively the beginning and end phases are not used.
60
+ In TF/SciPy, the behavior matches to align_window_left=True,
61
+ but in PT/librosa, the behavior matches to align_window_left=False.
62
+ :param window_enforce_even: enforce that the window size is even, potentially lowering the window size by 1.
63
+ This only has an effect if the window size is uneven.
64
+ In TF, the behavior matches to window_enforce_even=True,
65
+ but in most other frameworks, the behavior matches to window_enforce_even=False.
66
+ :param out_spatial_dim:
67
+ :param out_dim:
68
+ :return: (stft, out_spatial_dim, out_dim)
69
+ """
70
+ fft_length = fft_length or frame_length
71
+ if out_dim is None:
72
+ out_dim = Dim(fft_length // 2 + 1, name="stft-freq")
73
+ if out_spatial_dim is None:
74
+ from .conv import make_conv_out_spatial_dims
75
+
76
+ (out_spatial_dim,) = make_conv_out_spatial_dims(
77
+ [in_spatial_dim], filter_size=frame_length, strides=frame_step, padding="valid"
78
+ )
79
+ # noinspection PyProtectedMember
80
+ return (
81
+ x._raw_backend.stft(
82
+ x,
83
+ in_spatial_dim=in_spatial_dim,
84
+ frame_step=frame_step,
85
+ frame_length=frame_length,
86
+ fft_length=fft_length,
87
+ window_use_frame_length=window_use_frame_length,
88
+ align_window_left=align_window_left,
89
+ window_enforce_even=window_enforce_even,
90
+ out_spatial_dim=out_spatial_dim,
91
+ out_dim=out_dim,
92
+ ),
93
+ out_spatial_dim,
94
+ out_dim,
95
+ )
@@ -47,15 +47,19 @@ def get_net_dict(
47
47
  model = get_model_func(epoch=epoch, step=step)
48
48
 
49
49
  task = config.value("task", None)
50
+ step_tensor = rfl.make_layer({"class": "global_train_step"}, name="global_train_step")
50
51
  if task in {"train", "eval"}:
51
- rf.init_train_step_run_ctx(train_flag=rfl.make_layer({"class": "train_flag"}, name="train_flag"))
52
+ rf.init_train_step_run_ctx(
53
+ train_flag=rfl.make_layer({"class": "train_flag"}, name="train_flag"),
54
+ step=step_tensor,
55
+ )
52
56
  train_step_func = get_global_config().typed_value("train_step")
53
57
  train_step_func(
54
58
  model=model,
55
59
  extern_data=extern_data,
56
60
  )
57
61
  elif task in {"forward", "search"}:
58
- rf.init_forward_step_run_ctx()
62
+ rf.init_forward_step_run_ctx(step=step_tensor)
59
63
  forward_step_func = get_global_config().typed_value("forward_step")
60
64
  forward_step_func(
61
65
  model=model,
@@ -429,9 +429,13 @@ class Layer:
429
429
  # However, this can always be done via the `name_scope` option,
430
430
  # if the name would not match otherwise.
431
431
  queue = [self.root] # type: List[Layer]
432
+ visited: Set[Layer] = set()
432
433
  mod_in_layer = {} # type: Dict[Tuple[Layer, RefIdEq[rf.Module]], Layer]
433
434
  while queue:
434
435
  ctx = queue.pop(0)
436
+ if ctx in visited: # can happen when parents are reassigned
437
+ continue
438
+ visited.add(ctx)
435
439
 
436
440
  assert not ctx.parent or ctx.parent.children[ctx.name] is ctx
437
441
  for child in ctx.children.values():
@@ -459,10 +459,12 @@ class Engine(EngineBase):
459
459
  """
460
460
  if train_func:
461
461
  assert self._train_step_func is not None
462
- rf.init_train_step_run_ctx(train_flag=train_flag)
462
+ rf.init_train_step_run_ctx(train_flag=train_flag, step=self.global_train_step)
463
463
  else:
464
464
  assert self._forward_step_func is not None, "define forward_step in the config"
465
- rf.init_forward_step_run_ctx(expected_outputs=self._forward_step_expected_outputs)
465
+ rf.init_forward_step_run_ctx(
466
+ expected_outputs=self._forward_step_expected_outputs, step=self.global_train_step
467
+ )
466
468
 
467
469
  from returnn.torch.distributed import ddp_train_forward_ctx
468
470
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: returnn
3
- Version: 1.20230815.191535
3
+ Version: 1.20230816.2116
4
4
  Summary: The RWTH extensible training framework for universal recurrent neural networks
5
5
  Home-page: https://github.com/rwth-i6/returnn/
6
6
  Author: Albert Zeyer
@@ -186,6 +186,8 @@ returnn/frontend/signal.py
186
186
  returnn/frontend/state.py
187
187
  returnn/frontend/tensor_array.py
188
188
  returnn/frontend/types.py
189
+ returnn/frontend/audio/__init__.py
190
+ returnn/frontend/audio/mel.py
189
191
  returnn/frontend/encoder/__init__.py
190
192
  returnn/frontend/encoder/base.py
191
193
  returnn/frontend/encoder/conformer.py
@@ -99,7 +99,7 @@ def run_model_torch(extern_data: TensorDict, get_model: rf.GetModelFunc, forward
99
99
  tensor_dict_numpy_to_torch_(extern_data)
100
100
 
101
101
  model = get_model(epoch=1, step=0)
102
- rf.init_forward_step_run_ctx()
102
+ rf.init_forward_step_run_ctx(step=0)
103
103
  forward_step(model=model, extern_data=extern_data)
104
104
  outputs = rf.get_run_ctx().outputs
105
105
  assert outputs.data
@@ -285,7 +285,7 @@ def test_zoneout_lstm_tf_layers_vs_rf_pt():
285
285
  new_model.lstm.bias.raw_tensor.copy_(torch.from_numpy(tf_lstm_bias))
286
286
 
287
287
  print("*** Forward")
288
- rf.init_train_step_run_ctx(train_flag=False)
288
+ rf.init_train_step_run_ctx(train_flag=False, step=0)
289
289
  extern_data.reset_content()
290
290
  extern_data.assign_from_raw_tensor_dict_(extern_data_numpy_raw_dict)
291
291
  tensor_dict_numpy_to_torch_(extern_data)
@@ -46,7 +46,7 @@ def test_mel_filterbank():
46
46
  source, in_spatial_dim=in_spatial_dim, frame_step=3, frame_length=5, fft_length=6
47
47
  )
48
48
  source = rf.abs(source) ** 2.0
49
- source = rf.mel_filterbank(source, in_dim=in_dim_, out_dim=feat_dim, sampling_rate=16)
49
+ source = rf.audio.mel_filterbank(source, in_dim=in_dim_, out_dim=feat_dim, sampling_rate=16)
50
50
  return source, in_spatial_dim
51
51
 
52
52
  # noinspection PyShadowingNames
@@ -192,13 +192,14 @@ def main():
192
192
  ), "The specified config needs to have explicit model outputs. Please define `model_outputs` in your config."
193
193
  model_outputs = TensorDict()
194
194
  model_outputs.update(model_outputs_dict, auto_convert=True)
195
- rf.init_forward_step_run_ctx(expected_outputs=model_outputs)
196
- rf.set_random_seed(42)
197
195
 
198
196
  loaded_checkpoint = torch.load(args.checkpoint, map_location=torch.device(args.device))
199
197
  epoch = loaded_checkpoint["epoch"]
200
198
  step = loaded_checkpoint["step"]
201
199
 
200
+ rf.init_forward_step_run_ctx(expected_outputs=model_outputs, step=step)
201
+ rf.set_random_seed(42)
202
+
202
203
  get_model_func = config.typed_value("get_model")
203
204
  assert get_model_func, "get_model() isn't specified in the config passed as a parameter."
204
205
  sentinel_kw = {"__fwd_compatible_random_arg_%i" % int(random() * 100): None}
@@ -1,2 +0,0 @@
1
- version = '1.20230815.191535'
2
- long_version = '1.20230815.191535+git.2a78f6e'