nkululeko 0.90.0__tar.gz → 0.90.1__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.
Files changed (172) hide show
  1. {nkululeko-0.90.0 → nkululeko-0.90.1}/CHANGELOG.md +4 -0
  2. {nkululeko-0.90.0/nkululeko.egg-info → nkululeko-0.90.1}/PKG-INFO +6 -2
  3. {nkululeko-0.90.0 → nkululeko-0.90.1}/README.md +1 -1
  4. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/androids/process_database.py +2 -1
  5. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emofilm/convert_to_16k.py +1 -1
  6. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emofilm/process_database.py +3 -2
  7. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emov-db/process_database.py +1 -0
  8. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emozionalmente/create.py +2 -3
  9. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/mlendsnd/process_database.py +1 -0
  10. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/msp-improv/process_database2.py +3 -2
  11. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/msp-podcast/process_database.py +6 -3
  12. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/oreau2/process_database.py +1 -0
  13. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/ravdess/process_database.py +3 -1
  14. {nkululeko-0.90.0 → nkululeko-0.90.1}/meta/demos/demo_best_model.py +8 -6
  15. {nkululeko-0.90.0 → nkululeko-0.90.1}/meta/demos/my_experiment.py +12 -8
  16. {nkululeko-0.90.0 → nkululeko-0.90.1}/meta/demos/my_experiment_local.py +13 -9
  17. {nkululeko-0.90.0 → nkululeko-0.90.1}/meta/demos/plot_faster_anim.py +9 -6
  18. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/aug_train.py +6 -4
  19. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augment.py +6 -4
  20. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augmenting/augmenter.py +4 -4
  21. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augmenting/randomsplicer.py +6 -6
  22. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augmenting/randomsplicing.py +2 -3
  23. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augmenting/resampler.py +9 -6
  24. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_age.py +4 -2
  25. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_arousal.py +4 -2
  26. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_dominance.py +3 -2
  27. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_gender.py +4 -2
  28. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_mos.py +5 -2
  29. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_pesq.py +5 -2
  30. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_sdr.py +5 -2
  31. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_snr.py +5 -2
  32. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_stoi.py +5 -2
  33. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/ap_valence.py +4 -2
  34. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/estimate_snr.py +10 -14
  35. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/constants.py +1 -1
  36. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/data/dataset.py +11 -14
  37. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/data/dataset_csv.py +5 -3
  38. nkululeko-0.90.1/nkululeko/demo-ft.py +29 -0
  39. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/demo_feats.py +5 -4
  40. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/demo_predictor.py +3 -4
  41. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/ensemble.py +27 -28
  42. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/experiment.py +3 -5
  43. nkululeko-0.90.1/nkululeko/experiment_felix.py +728 -0
  44. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/explore.py +1 -0
  45. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/export.py +7 -5
  46. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_agender.py +5 -4
  47. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_agender_agender.py +7 -6
  48. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_analyser.py +18 -16
  49. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_ast.py +9 -8
  50. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_auddim.py +3 -5
  51. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_audmodel.py +2 -2
  52. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_clap.py +9 -12
  53. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_hubert.py +2 -3
  54. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_import.py +5 -4
  55. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_mld.py +3 -5
  56. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_mos.py +4 -3
  57. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_opensmile.py +4 -3
  58. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_oxbow.py +5 -4
  59. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_praat.py +4 -7
  60. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_snr.py +3 -5
  61. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_spectra.py +8 -9
  62. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_spkrec.py +6 -11
  63. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_squim.py +2 -4
  64. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_trill.py +2 -5
  65. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_wav2vec2.py +8 -4
  66. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_wavlm.py +2 -3
  67. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feats_whisper.py +4 -6
  68. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/featureset.py +4 -2
  69. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/feinberg_praat.py +1 -3
  70. nkululeko-0.90.1/nkululeko/feat_extract/transformer_feature_extractor.py +147 -0
  71. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/file_checker.py +3 -3
  72. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/filter_data.py +3 -1
  73. nkululeko-0.90.1/nkululeko/fixedsegment.py +83 -0
  74. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model.py +3 -5
  75. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_bayes.py +1 -0
  76. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_cnn.py +4 -6
  77. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_gmm.py +13 -9
  78. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_knn.py +1 -0
  79. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_knn_reg.py +1 -0
  80. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_lin_reg.py +1 -0
  81. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_mlp.py +2 -3
  82. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_mlp_regression.py +1 -6
  83. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_svm.py +2 -2
  84. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_svr.py +1 -0
  85. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_tree.py +2 -3
  86. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_tree_reg.py +1 -0
  87. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_tuned.py +54 -33
  88. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_xgb.py +1 -0
  89. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/model_xgr.py +1 -0
  90. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/multidb.py +1 -0
  91. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/predict.py +4 -5
  92. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/defines.py +6 -8
  93. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/latex_writer.py +3 -3
  94. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/report.py +2 -2
  95. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/report_item.py +1 -0
  96. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/reporter.py +20 -19
  97. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/resample.py +8 -12
  98. nkululeko-0.90.1/nkululeko/resample_cli.py +99 -0
  99. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/runmanager.py +3 -1
  100. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/scaler.py +1 -1
  101. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/segment.py +6 -5
  102. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/segmenting/seg_inaspeechsegmenter.py +3 -3
  103. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/segmenting/seg_silero.py +4 -4
  104. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/syllable_nuclei.py +9 -22
  105. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/test_pretrain.py +6 -7
  106. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/utils/stats.py +0 -1
  107. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/utils/util.py +2 -3
  108. {nkululeko-0.90.0 → nkululeko-0.90.1/nkululeko.egg-info}/PKG-INFO +6 -2
  109. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko.egg-info/SOURCES.txt +5 -0
  110. {nkululeko-0.90.0 → nkululeko-0.90.1}/setup.py +1 -1
  111. {nkululeko-0.90.0 → nkululeko-0.90.1}/LICENSE +0 -0
  112. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/aesdd/process_database.py +0 -0
  113. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/ased/process_database.py +0 -0
  114. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/asvp-esd/process_database.py +0 -0
  115. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/baved/process_database.py +0 -0
  116. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/cafe/process_database.py +0 -0
  117. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/clac/process_database.py +0 -0
  118. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/cmu-mosei/process_database.py +0 -0
  119. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/demos/process_database.py +0 -0
  120. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/ekorpus/process_database.py +0 -0
  121. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emns/process_database.py +0 -0
  122. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emorynlp/process_database.py +0 -0
  123. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/emovo/process_database.py +0 -0
  124. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/enterface/process_database.py +0 -0
  125. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/esd/process_database.py +0 -0
  126. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/gerparas/process_database.py +0 -0
  127. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/iemocap/process_database.py +0 -0
  128. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/jl/process_database.py +0 -0
  129. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/jtes/process_database.py +0 -0
  130. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/meld/process_database.py +0 -0
  131. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/mesd/process_database.py +0 -0
  132. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/mess/process_database.py +0 -0
  133. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/portuguese/process_database.py +0 -0
  134. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/ravdess/process_database_speaker.py +0 -0
  135. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/savee/process_database.py +0 -0
  136. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/shemo/process_database.py +0 -0
  137. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/subesco/process_database.py +0 -0
  138. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/tess/process_database.py +0 -0
  139. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/thorsten-emotional/process_database.py +0 -0
  140. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/urdu/process_database.py +0 -0
  141. {nkululeko-0.90.0 → nkululeko-0.90.1}/data/vivae/process_database.py +0 -0
  142. {nkululeko-0.90.0 → nkululeko-0.90.1}/docs/source/conf.py +0 -0
  143. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/__init__.py +0 -0
  144. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/augmenting/__init__.py +0 -0
  145. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/autopredict/__init__.py +0 -0
  146. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/cacheddataset.py +1 -1
  147. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/data/__init__.py +0 -0
  148. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/demo.py +0 -0
  149. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feat_extract/__init__.py +0 -0
  150. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/feature_extractor.py +0 -0
  151. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/glob_conf.py +0 -0
  152. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/losses/__init__.py +0 -0
  153. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/losses/loss_ccc.py +0 -0
  154. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/losses/loss_softf1loss.py +0 -0
  155. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/modelrunner.py +0 -0
  156. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/models/__init__.py +0 -0
  157. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/nkuluflag.py +0 -0
  158. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/nkululeko.py +1 -1
  159. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/plots.py +0 -0
  160. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/__init__.py +0 -0
  161. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/reporting/result.py +0 -0
  162. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/segmenting/__init__.py +0 -0
  163. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/test.py +0 -0
  164. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/test_predictor.py +0 -0
  165. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/utils/__init__.py +0 -0
  166. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko/utils/files.py +0 -0
  167. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko.egg-info/dependency_links.txt +0 -0
  168. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko.egg-info/requires.txt +0 -0
  169. {nkululeko-0.90.0 → nkululeko-0.90.1}/nkululeko.egg-info/top_level.txt +0 -0
  170. {nkululeko-0.90.0 → nkululeko-0.90.1}/pyproject.toml +0 -0
  171. {nkululeko-0.90.0 → nkululeko-0.90.1}/setup.cfg +0 -0
  172. {nkululeko-0.90.0 → nkululeko-0.90.1}/venv/bin/activate_this.py +0 -0
@@ -1,6 +1,10 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ Version 0.90.1
5
+ --------------
6
+ * Add balancing for finetune and update data README
7
+
4
8
  Version 0.90.0
5
9
  --------------
6
10
  * augmentation can now be done without target
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: nkululeko
3
- Version: 0.90.0
3
+ Version: 0.90.1
4
4
  Summary: Machine learning audio prediction experiments based on templates
5
5
  Home-page: https://github.com/felixbur/nkululeko
6
6
  Author: Felix Burkhardt
@@ -275,7 +275,7 @@ There's my [blog](http://blog.syntheticspeech.de/?s=nkululeko) with tutorials:
275
275
 
276
276
 
277
277
  ### <a name="helloworld">Hello World example</a>
278
- * NEW: [Here's a Google colab that runs this example out-of-the-box](https://colab.research.google.com/drive/1GYNBd5cdZQ1QC3Jm58qoeMaJg3UuPhjw?usp=sharing#scrollTo=4G_SjuF9xeQf), and here is the same [with Kaggle](https://www.kaggle.com/felixburk/nkululeko-hello-world-example)
278
+ * NEW: [Here's a Google colab that runs this example out-of-the-box](https://colab.research.google.com/drive/1Up7t5Nn7VwDPCCEpTg2U7cpZ_PdoEgj-?usp=sharing), and here is the same [with Kaggle](https://www.kaggle.com/felixburk/nkululeko-hello-world-example)
279
279
  * [I made a video to show you how to do this on Windows](https://www.youtube.com/playlist?list=PLRceVavtxLg0y2jiLmpnUfiMtfvkK912D)
280
280
  * Set up Python on your computer, version >= 3.8
281
281
  * Open a terminal/commandline/console window
@@ -356,6 +356,10 @@ F. Burkhardt, Johannes Wagner, Hagen Wierstorf, Florian Eyben and Björn Schulle
356
356
  Changelog
357
357
  =========
358
358
 
359
+ Version 0.90.1
360
+ --------------
361
+ * Add balancing for finetune and update data README
362
+
359
363
  Version 0.90.0
360
364
  --------------
361
365
  * augmentation can now be done without target
@@ -231,7 +231,7 @@ There's my [blog](http://blog.syntheticspeech.de/?s=nkululeko) with tutorials:
231
231
 
232
232
 
233
233
  ### <a name="helloworld">Hello World example</a>
234
- * NEW: [Here's a Google colab that runs this example out-of-the-box](https://colab.research.google.com/drive/1GYNBd5cdZQ1QC3Jm58qoeMaJg3UuPhjw?usp=sharing#scrollTo=4G_SjuF9xeQf), and here is the same [with Kaggle](https://www.kaggle.com/felixburk/nkululeko-hello-world-example)
234
+ * NEW: [Here's a Google colab that runs this example out-of-the-box](https://colab.research.google.com/drive/1Up7t5Nn7VwDPCCEpTg2U7cpZ_PdoEgj-?usp=sharing), and here is the same [with Kaggle](https://www.kaggle.com/felixburk/nkululeko-hello-world-example)
235
235
  * [I made a video to show you how to do this on Windows](https://www.youtube.com/playlist?list=PLRceVavtxLg0y2jiLmpnUfiMtfvkK912D)
236
236
  * Set up Python on your computer, version >= 3.8
237
237
  * Open a terminal/commandline/console window
@@ -15,9 +15,10 @@ Usage: `python process_database.py`
15
15
 
16
16
  """
17
17
 
18
- import pandas as pd
19
18
  import os
19
+
20
20
  import audeer
21
+ import pandas as pd
21
22
 
22
23
  dataset_name = 'androids'
23
24
  data_root = './Androids-Corpus/'
@@ -2,9 +2,9 @@
2
2
  # arguments: input_dir, output_dir
3
3
  # sox must be installed
4
4
 
5
+ import argparse
5
6
  import os
6
7
  import subprocess
7
- import argparse
8
8
 
9
9
  parser = argparse.ArgumentParser()
10
10
  parser.add_argument('-i', '--input_dir', type=str, default='./EmoFilm/wav_corpus')
@@ -1,10 +1,11 @@
1
1
  # process_database.py -> EmoFilm database
2
2
 
3
+ import argparse
3
4
  import os
5
+
6
+ import numpy as np
4
7
  import pandas as pd
5
8
  from sklearn.model_selection import train_test_split
6
- import numpy as np
7
- import argparse
8
9
 
9
10
  # load data
10
11
 
@@ -7,6 +7,7 @@ import re
7
7
  from pathlib import Path
8
8
 
9
9
  import pandas as pd
10
+
10
11
  from nkululeko.utils import files
11
12
 
12
13
  emotion_map = {
@@ -6,11 +6,10 @@ import json
6
6
  import os
7
7
  import shutil
8
8
 
9
- import numpy as np
10
- import pandas as pd
11
-
12
9
  import audeer
13
10
  import audformat
11
+ import numpy as np
12
+ import pandas as pd
14
13
 
15
14
 
16
15
  def main():
@@ -5,6 +5,7 @@ import argparse
5
5
  from pathlib import Path
6
6
 
7
7
  import pandas as pd
8
+
8
9
  from nkululeko.utils import files
9
10
 
10
11
 
@@ -3,10 +3,11 @@
3
3
  # bagustris@yahoo.com, 2023-08-22
4
4
 
5
5
 
6
+ import argparse
7
+ import csv
6
8
  import os
9
+
7
10
  import pandas as pd
8
- import csv
9
- import argparse
10
11
 
11
12
  train_list = []
12
13
  dev_list = []
@@ -1,8 +1,11 @@
1
+ import argparse
2
+ import glob
1
3
  import os
2
- from os.path import basename, splitext, join as path_join
4
+ from os.path import basename
5
+ from os.path import join as path_join
6
+ from os.path import splitext
7
+
3
8
  import pandas as pd
4
- import glob
5
- import argparse
6
9
 
7
10
  LABEL_DIR_PATH = 'Labels'
8
11
  WAV_DIR_PATH = 'Audios'
@@ -6,6 +6,7 @@ import argparse
6
6
  from pathlib import Path
7
7
 
8
8
  import pandas as pd
9
+
9
10
  from nkululeko.utils import files
10
11
 
11
12
  emotion_map = {
@@ -21,8 +21,10 @@ OR
21
21
 
22
22
 
23
23
  import os
24
- import pandas as pd
25
24
  import sys
25
+
26
+ import pandas as pd
27
+
26
28
  <<<<<<< HEAD
27
29
 
28
30
  # ravdess source directory as argument
@@ -2,28 +2,30 @@
2
2
  # Demonstration code to use the ML-experiment framework
3
3
 
4
4
  import sys
5
+
5
6
  sys.path.append("./src")
6
- from reporter import Reporter
7
- import experiment as exp
8
7
  import configparser
8
+
9
+ import experiment as exp
9
10
  from util import Util
10
11
 
12
+
11
13
  def main(config_file):
12
14
  # load one configuration per experiment
13
15
  config = configparser.ConfigParser()
14
16
  config.read(config_file)
15
17
  util = Util()
16
-
18
+
17
19
  # create a new experiment
18
20
  expr = exp.Experiment(config)
19
- print(f'running {expr.name}')
21
+ print(f"running {expr.name}")
20
22
 
21
23
  # load the experiment
22
- expr.load(f'{util.get_exp_name()}.pkl')
24
+ expr.load(f"{util.get_exp_name()}.pkl")
23
25
 
24
26
  expr.demo()
25
27
 
26
- print('DONE')
28
+ print("DONE")
27
29
 
28
30
 
29
31
  if __name__ == "__main__":
@@ -2,34 +2,37 @@
2
2
  # Demonstration code to use the ML-experiment framework
3
3
 
4
4
  import sys
5
+
5
6
  sys.path.append("./nkululeko/src")
6
- import experiment as exp
7
7
  import configparser
8
- from util import Util
9
8
  import os.path
9
+
10
10
  import constants
11
+ import experiment as exp
12
+ from util import Util
13
+
11
14
 
12
15
  def main(config_file):
13
16
  # test if the configuration file exists
14
17
  if not os.path.isfile(config_file):
15
- print(f'ERROR: no such file: {config_file}')
18
+ print(f"ERROR: no such file: {config_file}")
16
19
  exit()
17
20
 
18
21
  # load one configuration per experiment
19
22
  config = configparser.ConfigParser()
20
23
  config.read(config_file)
21
-
24
+
22
25
  # create a new experiment
23
26
  expr = exp.Experiment(config)
24
27
  util = Util()
25
- util.debug(f'running {expr.name}, nkululeko version {constants.VERSION}')
28
+ util.debug(f"running {expr.name}, nkululeko version {constants.VERSION}")
26
29
 
27
30
  # load the data
28
31
  expr.load_datasets()
29
32
 
30
33
  # split into train and test
31
34
  expr.fill_train_and_tests()
32
- util.debug(f'train shape : {expr.df_train.shape}, test shape:{expr.df_test.shape}')
35
+ util.debug(f"train shape : {expr.df_train.shape}, test shape:{expr.df_test.shape}")
33
36
 
34
37
  # extract features
35
38
  expr.extract_feats()
@@ -40,9 +43,10 @@ def main(config_file):
40
43
  # run the experiment
41
44
  expr.run()
42
45
 
43
- print('DONE')
46
+ print("DONE")
47
+
44
48
 
45
49
  if __name__ == "__main__":
46
50
  cwd = os.path.dirname(os.path.abspath(__file__))
47
- main('./nkululeko/demos/exp_emodb.ini')
51
+ main("./nkululeko/demos/exp_emodb.ini")
48
52
  # main(sys.argv[1]) # use this if you want to state the config file path on command line
@@ -2,20 +2,23 @@
2
2
  # Demonstration code to use the ML-experiment framework
3
3
 
4
4
  import sys
5
+
5
6
  sys.path.append("./src")
6
- import experiment as exp
7
7
  import configparser
8
+
9
+ import experiment as exp
8
10
  from util import Util
9
11
 
12
+
10
13
  def main(config_file):
11
14
  # load one configuration per experiment
12
15
  config = configparser.ConfigParser()
13
16
  config.read(config_file)
14
-
17
+
15
18
  # create a new experiment
16
19
  expr = exp.Experiment(config)
17
20
  util = Util()
18
- util.debug(f'running {expr.name}')
21
+ util.debug(f"running {expr.name}")
19
22
 
20
23
  # load the data
21
24
  expr.load_datasets()
@@ -32,13 +35,14 @@ def main(config_file):
32
35
  # run the experiment
33
36
  expr.run()
34
37
 
35
- print('DONE')
38
+ print("DONE")
39
+
36
40
 
37
41
  if __name__ == "__main__":
38
- # main('./demos/exp_danish_local.ini')
39
- # main('./demos/exp_emodb_wav2vec.ini')
40
- # main('./demos/exp_cross_wav2vec1pager.ini')
41
- # main('./demos/exp_emodb_local.ini')
42
- main('./demos/exp_cross_local.ini')
42
+ # main('./demos/exp_danish_local.ini')
43
+ # main('./demos/exp_emodb_wav2vec.ini')
44
+ # main('./demos/exp_cross_wav2vec1pager.ini')
45
+ # main('./demos/exp_emodb_local.ini')
46
+ main("./demos/exp_cross_local.ini")
43
47
  # main('./demos/exp_bdtgfir pul_local.ini')
44
48
  # main(sys.argv[1]) # use this if you want to state the config file path on command line
@@ -2,30 +2,33 @@
2
2
  # Demonstration code to use the ML-experiment framework
3
3
 
4
4
  import sys
5
+
5
6
  sys.path.append("./src")
6
- from reporter import Reporter
7
- import experiment as exp
8
7
  import configparser
8
+
9
+ import experiment as exp
10
+ from reporter import Reporter
9
11
  from util import Util
10
12
 
13
+
11
14
  def main(config_file):
12
15
  # load one configuration per experiment
13
16
  config = configparser.ConfigParser()
14
17
  config.read(config_file)
15
18
  util = Util()
16
-
19
+
17
20
  # create a new experiment
18
21
  expr = exp.Experiment(config)
19
- print(f'running {expr.name}')
22
+ print(f"running {expr.name}")
20
23
 
21
24
  # load the experiment
22
25
  # expr.load(f'{util.get_exp_name()}.pkl')
23
26
 
24
27
  reporter = Reporter([], [])
25
28
 
26
- reporter.make_conf_animation('test.gif')
29
+ reporter.make_conf_animation("test.gif")
27
30
 
28
- print('DONE')
31
+ print("DONE")
29
32
 
30
33
 
31
34
  if __name__ == "__main__":
@@ -1,15 +1,17 @@
1
1
  # aug_train.py
2
2
  # train with augmentations
3
+ import argparse
3
4
  import ast
5
+ import configparser
4
6
  import os.path
7
+
5
8
  import numpy as np
6
- import configparser
7
- import argparse
9
+
8
10
  import nkululeko.experiment as exp
9
- from nkululeko.utils.util import Util
10
- from nkululeko.constants import VERSION
11
11
  import nkululeko.glob_conf as glob_conf
12
12
  from nkululeko.augment import doit as augment
13
+ from nkululeko.constants import VERSION
14
+ from nkululeko.utils.util import Util
13
15
 
14
16
 
15
17
  def doit(config_file):
@@ -2,13 +2,15 @@
2
2
  # augment the training sets
3
3
 
4
4
  import argparse
5
- import pandas as pd
6
- import os
7
5
  import ast
8
- from nkululeko.experiment import Experiment
9
6
  import configparser
10
- from nkululeko.utils.util import Util
7
+ import os
8
+
9
+ import pandas as pd
10
+
11
11
  from nkululeko.constants import VERSION
12
+ from nkululeko.experiment import Experiment
13
+ from nkululeko.utils.util import Util
12
14
 
13
15
 
14
16
  def doit(config_file):
@@ -1,12 +1,12 @@
1
1
  # augmenter.py
2
2
  import os
3
- import numpy as np
3
+
4
+ import audeer
5
+ import audiofile
4
6
  import pandas as pd
5
7
  from audiomentations import *
6
8
  from tqdm import tqdm
7
- import audeer
8
- import audiofile
9
- from audformat.utils import map_file_path
9
+
10
10
  from nkululeko.utils.util import Util
11
11
 
12
12
 
@@ -13,15 +13,15 @@ F. Burkhardt, Anna Derington, Matthias Kahlau, Klaus Scherer, Florian Eyben and
13
13
 
14
14
  """
15
15
 
16
- import pandas as pd
17
- from tqdm import tqdm
18
16
  import os
19
- import numpy as np
20
- import audiofile as af
21
- from audformat.utils import map_file_path
17
+
22
18
  import audeer
23
- from nkululeko.utils.util import Util
19
+ import audiofile as af
20
+ import pandas as pd
21
+ from tqdm import tqdm
22
+
24
23
  import nkululeko.augmenting.randomsplicing as rsp
24
+ from nkululeko.utils.util import Util
25
25
 
26
26
 
27
27
  class Randomsplicer:
@@ -10,9 +10,9 @@ Evaluated in:
10
10
  F. Burkhardt, Anna Derington, Matthias Kahlau, Klaus Scherer, Florian Eyben and Björn Schuller: Masking Speech Contents by Random Splicing: is Emotional Expression Preserved?, Proc. ICASSP, 2023
11
11
 
12
12
  """
13
- import numpy as np
13
+
14
14
  import librosa
15
- import audiofile as af
15
+ import numpy as np
16
16
 
17
17
 
18
18
  def random_splicing(
@@ -54,7 +54,6 @@ def split_wav_naive(wav, top_db=12):
54
54
 
55
55
 
56
56
  def remix_random_reverse(wav, indices, p_reverse=0):
57
- import random
58
57
 
59
58
  wav_remix = []
60
59
 
@@ -2,12 +2,14 @@
2
2
  resample a data frame
3
3
 
4
4
  """
5
+
5
6
  import os
6
7
  import shutil
7
8
 
8
9
  import audformat
9
10
  import pandas as pd
10
11
  import torchaudio
12
+
11
13
  from nkululeko.utils.util import Util
12
14
 
13
15
 
@@ -18,8 +20,11 @@ class Resampler:
18
20
  self.util = Util("resampler", has_config=not_testing)
19
21
  self.util.warn(f"all files might be resampled to {self.SAMPLING_RATE}")
20
22
  self.not_testing = not_testing
21
- self.replace = eval(self.util.config_val(
22
- "RESAMPLE", "replace", "False")) if not not_testing else replace
23
+ self.replace = (
24
+ eval(self.util.config_val("RESAMPLE", "replace", "False"))
25
+ if not not_testing
26
+ else replace
27
+ )
23
28
 
24
29
  def resample(self):
25
30
  files = self.df.index.get_level_values(0).values
@@ -45,8 +50,7 @@ class Resampler:
45
50
  continue
46
51
  if org_sr != self.SAMPLING_RATE:
47
52
  self.util.debug(f"resampling {f} (sr = {org_sr})")
48
- resampler = torchaudio.transforms.Resample(
49
- org_sr, self.SAMPLING_RATE)
53
+ resampler = torchaudio.transforms.Resample(org_sr, self.SAMPLING_RATE)
50
54
  signal = resampler(signal)
51
55
  if replace:
52
56
  torchaudio.save(
@@ -63,8 +67,7 @@ class Resampler:
63
67
  self.df = self.df.set_index(
64
68
  self.df.index.set_levels(new_files, level="file")
65
69
  )
66
- target_file = self.util.config_val(
67
- "RESAMPLE", "target", "resampled.csv")
70
+ target_file = self.util.config_val("RESAMPLE", "target", "resampled.csv")
68
71
  # remove encoded labels
69
72
  target = self.util.config_val("DATA", "target", "emotion")
70
73
  if "class_label" in self.df.columns:
@@ -2,10 +2,12 @@
2
2
  A predictor for age.
3
3
  Currently based on audEERING's agender model.
4
4
  """
5
- from nkululeko.utils.util import Util
6
- from nkululeko.feature_extractor import FeatureExtractor
5
+
7
6
  import ast
7
+
8
8
  import nkululeko.glob_conf as glob_conf
9
+ from nkululeko.feature_extractor import FeatureExtractor
10
+ from nkululeko.utils.util import Util
9
11
 
10
12
 
11
13
  class AgePredictor:
@@ -2,10 +2,12 @@
2
2
  A predictor for emotional arousal.
3
3
  Currently based on audEERING's emotional dimension model.
4
4
  """
5
- from nkululeko.utils.util import Util
6
- from nkululeko.feature_extractor import FeatureExtractor
5
+
7
6
  import ast
7
+
8
8
  import nkululeko.glob_conf as glob_conf
9
+ from nkululeko.feature_extractor import FeatureExtractor
10
+ from nkululeko.utils.util import Util
9
11
 
10
12
 
11
13
  class ArousalPredictor:
@@ -3,10 +3,11 @@ A predictor for emotional dominance.
3
3
  Currently based on audEERING's emotional dimension model.
4
4
  """
5
5
 
6
- from nkululeko.utils.util import Util
7
- from nkululeko.feature_extractor import FeatureExtractor
8
6
  import ast
7
+
9
8
  import nkululeko.glob_conf as glob_conf
9
+ from nkululeko.feature_extractor import FeatureExtractor
10
+ from nkululeko.utils.util import Util
10
11
 
11
12
 
12
13
  class DominancePredictor:
@@ -2,10 +2,12 @@
2
2
  A predictor for biological sex.
3
3
  Currently based on audEERING's agender model.
4
4
  """
5
- from nkululeko.utils.util import Util
6
- from nkululeko.feature_extractor import FeatureExtractor
5
+
7
6
  import ast
7
+
8
8
  import nkululeko.glob_conf as glob_conf
9
+ from nkululeko.feature_extractor import FeatureExtractor
10
+ from nkululeko.utils.util import Util
9
11
 
10
12
 
11
13
  class GenderPredictor:
@@ -1,11 +1,14 @@
1
1
  """"
2
2
  A predictor for MOS - mean opinion score.
3
3
  """
4
- from nkululeko.utils.util import Util
4
+
5
5
  import ast
6
+
7
+ import numpy as np
8
+
6
9
  import nkululeko.glob_conf as glob_conf
7
10
  from nkululeko.feature_extractor import FeatureExtractor
8
- import numpy as np
11
+ from nkululeko.utils.util import Util
9
12
 
10
13
 
11
14
  class MOSPredictor:
@@ -1,11 +1,14 @@
1
1
  """"
2
2
  A predictor for PESQ - Perceptual Evaluation of Speech Quality.
3
3
  """
4
- from nkululeko.utils.util import Util
4
+
5
5
  import ast
6
+
7
+ import numpy as np
8
+
6
9
  import nkululeko.glob_conf as glob_conf
7
10
  from nkululeko.feature_extractor import FeatureExtractor
8
- import numpy as np
11
+ from nkululeko.utils.util import Util
9
12
 
10
13
 
11
14
  class PESQPredictor:
@@ -2,11 +2,14 @@
2
2
  A predictor for SDR - Signal to Distortion Ratio.
3
3
  as estimated by Scale-Invariant Signal-to-Distortion Ratio (SI-SDR)
4
4
  """
5
- from nkululeko.utils.util import Util
5
+
6
6
  import ast
7
+
8
+ import numpy as np
9
+
7
10
  import nkululeko.glob_conf as glob_conf
8
11
  from nkululeko.feature_extractor import FeatureExtractor
9
- import numpy as np
12
+ from nkululeko.utils.util import Util
10
13
 
11
14
 
12
15
  class SDRPredictor:
@@ -1,11 +1,14 @@
1
1
  """"
2
2
  A predictor for SNR - signal-to-noise ratio.
3
3
  """
4
- from nkululeko.utils.util import Util
4
+
5
5
  import ast
6
+
7
+ import numpy as np
8
+
6
9
  import nkululeko.glob_conf as glob_conf
7
10
  from nkululeko.feature_extractor import FeatureExtractor
8
- import numpy as np
11
+ from nkululeko.utils.util import Util
9
12
 
10
13
 
11
14
  class SNRPredictor:
@@ -1,11 +1,14 @@
1
1
  """"
2
2
  A predictor for STOI - Short-Time Objective Intelligibility (STOI)
3
3
  """
4
- from nkululeko.utils.util import Util
4
+
5
5
  import ast
6
+
7
+ import numpy as np
8
+
6
9
  import nkululeko.glob_conf as glob_conf
7
10
  from nkululeko.feature_extractor import FeatureExtractor
8
- import numpy as np
11
+ from nkululeko.utils.util import Util
9
12
 
10
13
 
11
14
  class STOIPredictor: