nkululeko 0.65.2__tar.gz → 0.65.5__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 (106) hide show
  1. {nkululeko-0.65.2 → nkululeko-0.65.5}/CHANGELOG.md +13 -0
  2. {nkululeko-0.65.2/nkululeko.egg-info → nkululeko-0.65.5}/PKG-INFO +14 -1
  3. nkululeko-0.65.5/nkululeko/constants.py +2 -0
  4. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/data/dataset.py +5 -2
  5. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/data/dataset_csv.py +8 -6
  6. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/export.py +35 -19
  7. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_wav2vec2.py +1 -1
  8. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/plots.py +6 -0
  9. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/utils/stats.py +13 -2
  10. {nkululeko-0.65.2 → nkululeko-0.65.5/nkululeko.egg-info}/PKG-INFO +14 -1
  11. nkululeko-0.65.2/nkululeko/constants.py +0 -2
  12. {nkululeko-0.65.2 → nkululeko-0.65.5}/LICENSE +0 -0
  13. {nkululeko-0.65.2 → nkululeko-0.65.5}/README.md +0 -0
  14. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/__init__.py +0 -0
  15. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augment.py +0 -0
  16. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augmenting/__init__.py +0 -0
  17. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augmenting/augmenter.py +0 -0
  18. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augmenting/randomsplicer.py +0 -0
  19. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augmenting/randomsplicing.py +0 -0
  20. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/augmenting/resampler.py +0 -0
  21. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/__init__.py +0 -0
  22. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_age.py +0 -0
  23. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_arousal.py +0 -0
  24. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_dominance.py +0 -0
  25. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_gender.py +0 -0
  26. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_mos.py +0 -0
  27. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_pesq.py +0 -0
  28. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_sdr.py +0 -0
  29. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_snr.py +0 -0
  30. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_stoi.py +0 -0
  31. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/ap_valence.py +0 -0
  32. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/autopredict/estimate_snr.py +0 -0
  33. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/balancer.py +0 -0
  34. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/cacheddataset.py +0 -0
  35. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/data/__init__.py +0 -0
  36. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/demo.py +0 -0
  37. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/demo_predictor.py +0 -0
  38. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/experiment.py +0 -0
  39. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/explore.py +0 -0
  40. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/__init__.py +0 -0
  41. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_agender.py +0 -0
  42. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_agender_agender.py +0 -0
  43. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_analyser.py +0 -0
  44. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_audmodel.py +0 -0
  45. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_audmodel_dim.py +0 -0
  46. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_clap.py +0 -0
  47. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_hubert.py +0 -0
  48. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_import.py +0 -0
  49. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_mld.py +0 -0
  50. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_mos.py +0 -0
  51. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_opensmile.py +0 -0
  52. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_oxbow.py +0 -0
  53. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_praat.py +0 -0
  54. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_snr.py +0 -0
  55. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_squim.py +0 -0
  56. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_trill.py +0 -0
  57. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feats_wavlm.py +0 -0
  58. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/featureset.py +0 -0
  59. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feat_extract/feinberg_praat.py +0 -0
  60. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/feature_extractor.py +0 -0
  61. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/file_checker.py +0 -0
  62. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/filter_data.py +0 -0
  63. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/glob_conf.py +0 -0
  64. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/losses/__init__.py +0 -0
  65. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/losses/loss_ccc.py +0 -0
  66. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/losses/loss_softf1loss.py +0 -0
  67. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/modelrunner.py +0 -0
  68. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/__init__.py +0 -0
  69. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model.py +0 -0
  70. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_bayes.py +0 -0
  71. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_cnn.py +0 -0
  72. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_gmm.py +0 -0
  73. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_knn.py +0 -0
  74. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_knn_reg.py +0 -0
  75. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_mlp.py +0 -0
  76. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_mlp_regression.py +0 -0
  77. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_svm.py +0 -0
  78. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_svr.py +0 -0
  79. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_tree.py +0 -0
  80. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_tree_reg.py +0 -0
  81. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_xgb.py +0 -0
  82. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/models/model_xgr.py +0 -0
  83. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/nkululeko.py +0 -0
  84. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/predict.py +0 -0
  85. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/reporter.py +0 -0
  86. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/resample.py +0 -0
  87. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/result.py +0 -0
  88. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/runmanager.py +0 -0
  89. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/scaler.py +0 -0
  90. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/segment.py +0 -0
  91. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/segmenting/__init__.py +0 -0
  92. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/segmenting/seg_inaspeechsegmenter.py +0 -0
  93. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/segmenting/seg_silero.py +0 -0
  94. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/syllable_nuclei.py +0 -0
  95. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/test.py +0 -0
  96. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/test_predictor.py +0 -0
  97. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/util.py +0 -0
  98. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/utils/__init__.py +0 -0
  99. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko/utils/files.py +0 -0
  100. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko.egg-info/SOURCES.txt +0 -0
  101. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko.egg-info/dependency_links.txt +0 -0
  102. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko.egg-info/requires.txt +0 -0
  103. {nkululeko-0.65.2 → nkululeko-0.65.5}/nkululeko.egg-info/top_level.txt +0 -0
  104. {nkululeko-0.65.2 → nkululeko-0.65.5}/pyproject.toml +0 -0
  105. {nkululeko-0.65.2 → nkululeko-0.65.5}/setup.cfg +0 -0
  106. {nkululeko-0.65.2 → nkululeko-0.65.5}/setup.py +0 -0
@@ -1,6 +1,19 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ Version 0.65.5
5
+ --------------
6
+ * added fill_na in plot effect size
7
+
8
+ Version 0.65.4
9
+ --------------
10
+ * added datasets to distribution
11
+ * changes in wav2vec2
12
+
13
+ Version 0.65.3
14
+ --------------
15
+ * various bugfixes
16
+
4
17
  Version 0.65.2
5
18
  --------------
6
19
  * fixed bug in dataset.csv that prevented correct paths for relative files
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: nkululeko
3
- Version: 0.65.2
3
+ Version: 0.65.5
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
@@ -255,6 +255,19 @@ Nkululeko can be used under the [MIT license](https://choosealicense.com/license
255
255
  Changelog
256
256
  =========
257
257
 
258
+ Version 0.65.5
259
+ --------------
260
+ * added fill_na in plot effect size
261
+
262
+ Version 0.65.4
263
+ --------------
264
+ * added datasets to distribution
265
+ * changes in wav2vec2
266
+
267
+ Version 0.65.3
268
+ --------------
269
+ * various bugfixes
270
+
258
271
  Version 0.65.2
259
272
  --------------
260
273
  * fixed bug in dataset.csv that prevented correct paths for relative files
@@ -0,0 +1,2 @@
1
+ VERSION="0.65.5"
2
+ SAMPLING_RATE=16000
@@ -159,7 +159,7 @@ class Dataset:
159
159
  self.df["duration"] = (end - start).total_seconds()
160
160
 
161
161
  # Perform some filtering if desired
162
- required = eval(self.util.config_val_data(self.name, "required", "False"))
162
+ required = self.util.config_val_data(self.name, "required", False)
163
163
  if required:
164
164
  pre = self.df.shape[0]
165
165
  self.df = self.df[self.df[required].notna()]
@@ -204,7 +204,10 @@ class Dataset:
204
204
  pass
205
205
  try:
206
206
  # try to get the gender values
207
- df_local["gender"] = source_df["gender"]
207
+ if "gender" in source_df:
208
+ df_local["gender"] = source_df["gender"]
209
+ else:
210
+ df_local["gender"] = source_df["sex"]
208
211
  got_gender = True
209
212
  except (KeyError, ValueError, audformat.errors.BadKeyError) as e:
210
213
  pass
@@ -48,21 +48,23 @@ class Dataset_CSV(Dataset):
48
48
  self.start_fresh = eval(self.util.config_val("DATA", "no_reuse", "False"))
49
49
  if self.is_labeled and not "class_label" in self.df.columns:
50
50
  self.df["class_label"] = self.df[self.target]
51
- if "gender" in df.columns:
51
+ if "gender" in self.df.columns:
52
52
  self.got_gender = True
53
- if "age" in df.columns:
53
+ elif "sex" in self.df.columns:
54
+ self.df = self.df.rename(columns={'sex':'gender'})
55
+ self.got_gender = True
56
+ if "age" in self.df.columns:
54
57
  self.got_age = True
55
- if "speaker" in df.columns:
58
+ if "speaker" in self.df.columns:
56
59
  self.got_speaker = True
57
- ns = df["speaker"].nunique()
58
- self.util.debug(f"num of speakers: {ns}")
59
60
  speaker_num = 0
60
61
  if self.got_speaker:
61
62
  speaker_num = self.df.speaker.nunique()
62
63
  self.util.debug(
63
64
  f"Loaded database {self.name} with {df.shape[0]} "
64
65
  f"samples: got targets: {self.got_target}, got speakers: {self.got_speaker} ({speaker_num}), "
65
- f"got sexes: {self.got_gender}"
66
+ f"got sexes: {self.got_gender}, "
67
+ f"got age: {self.got_age}"
66
68
  )
67
69
 
68
70
  def prepare(self):
@@ -10,7 +10,7 @@ import audiofile
10
10
  from nkululeko.experiment import Experiment
11
11
  from nkululeko.util import Util
12
12
  from nkululeko.constants import VERSION
13
-
13
+ import shutil
14
14
 
15
15
  def main(src_dir):
16
16
  parser = argparse.ArgumentParser(description="Call the nkululeko framework.")
@@ -54,6 +54,7 @@ def main(src_dir):
54
54
  target_root = util.config_val("EXPORT", "root", "./exported_data/")
55
55
  orig_root = util.config_val("EXPORT", "orig_root", None)
56
56
  data_name = util.config_val("EXPORT", "data_name", "export")
57
+ segments_as_files = eval(util.config_val("EXPORT", "segments_as_files", "False"))
57
58
  audeer.mkdir(target_root)
58
59
  splits = {"train": df_train, "test": df_test}
59
60
  df_all = pd.DataFrame()
@@ -61,25 +62,40 @@ def main(src_dir):
61
62
  files = []
62
63
  df = splits[split]
63
64
  for idx, (file, start, end) in enumerate(df.index.to_list()):
64
- signal, sampling_rate = audiofile.read(
65
- file,
66
- offset=start.total_seconds(),
67
- duration=(end - start).total_seconds(),
68
- always_2d=True,
69
- )
70
65
  file_dir = os.path.dirname(file)
71
- file_name = os.path.basename(file)
72
- wav_folder = (
73
- f"{target_root}/{os.path.basename(os.path.normpath(orig_root))}"
74
- )
75
- audeer.mkdir(wav_folder)
76
- new_rel_path = file_dir[file_dir.index(orig_root)+1+len(orig_root):]
77
- new_file_path = f"{wav_folder}/{new_rel_path}"
78
- audeer.mkdir(new_file_path)
79
- new_file_name = f"{new_file_path}/{file_name}"
80
- audiofile.write(new_file_name, signal, sampling_rate)
81
- new_file_name = os.path.relpath(new_file_name, target_root)
82
- files.append(new_file_name)
66
+ if segments_as_files:
67
+ signal, sampling_rate = audiofile.read(
68
+ file,
69
+ offset=start.total_seconds(),
70
+ duration=(end - start).total_seconds(),
71
+ always_2d=True,
72
+ )
73
+ file_name = os.path.basename(file)[:-3]+'_'+start.total_seconds()+'.wav'
74
+ wav_folder = (
75
+ f"{target_root}/{os.path.basename(os.path.normpath(orig_root))}"
76
+ )
77
+ audeer.mkdir(wav_folder)
78
+ new_rel_path = file_dir[file_dir.index(orig_root)+1+len(orig_root):]
79
+ new_file_path = f"{wav_folder}/{new_rel_path}"
80
+ audeer.mkdir(new_file_path)
81
+ new_file_name = f"{new_file_path}/{file_name}"
82
+ audiofile.write(new_file_name, signal, sampling_rate)
83
+ new_file_name = os.path.relpath(new_file_name, target_root)
84
+ files.append(new_file_name)
85
+ else:
86
+ file_name = os.path.basename(file)[:-4]+'_'+str(start.total_seconds())+'.wav'
87
+ wav_folder = (
88
+ f"{target_root}/{os.path.basename(os.path.normpath(orig_root))}"
89
+ )
90
+ audeer.mkdir(wav_folder)
91
+ new_rel_path = file_dir[file_dir.index(orig_root)+1+len(orig_root):]
92
+ new_file_path = f"{wav_folder}/{new_rel_path}"
93
+ audeer.mkdir(new_file_path)
94
+ new_file_name = f"{new_file_path}/{file_name}"
95
+ if not os.path.exists(new_file_name):
96
+ shutil.copyfile(file, new_file_name)
97
+ new_file_name = os.path.relpath(new_file_name, target_root)
98
+ files.append(new_file_name)
83
99
  df = df.set_index(df.index.set_levels(files, level="file"))
84
100
  df["split"] = split
85
101
  df_all = pd.concat([df_all, df])
@@ -54,7 +54,7 @@ class Wav2vec2(Featureset):
54
54
  signal, sampling_rate = torchaudio.load(file,
55
55
  frame_offset=int(start.total_seconds()*16000),
56
56
  num_frames=int((end - start).total_seconds()*16000))
57
- assert sampling_rate == 16000
57
+ assert sampling_rate == 16000, f"got {sampling_rate} instead of 16000"
58
58
  emb = self.get_embeddings(signal, sampling_rate, file)
59
59
  emb_series[idx] = emb
60
60
  if idx % 10 == 0:
@@ -57,6 +57,8 @@ class Plots():
57
57
  bin_reals = eval(self.util.config_val('EXPL', 'bin_reals', 'True'))
58
58
  for att in attributes:
59
59
  if len(att) == 1:
60
+ if att[0] not in df:
61
+ self.util.error(f'unknown feature: {att[0]}')
60
62
  self.util.debug(f'plotting {att[0]}')
61
63
  filename = f'{self.target}-{att[0]}'
62
64
  if self.util.is_categorical(df[att[0]]):
@@ -90,6 +92,10 @@ class Plots():
90
92
  plt.close(fig)
91
93
  # fig.clear() # avoid error
92
94
  elif len(att) == 2:
95
+ if att[0] not in df:
96
+ self.util.error(f'unknown feature: {att[0]}')
97
+ if att[1] not in df:
98
+ self.util.error(f'unknown feature: {att[1]}')
93
99
  self.util.debug(f'plotting {att}')
94
100
  att1 = att[0]
95
101
  att2 = att[1]
@@ -3,6 +3,14 @@ import math
3
3
  import numpy as np
4
4
  import pandas as pd
5
5
 
6
+ def check_na(a):
7
+ if np.isnan(a).any():
8
+ count = np.count_nonzero(np.isnan(a))
9
+ print(f'WARNING: got {count} Nans (of {len(a)}), setting to 0')
10
+ a[np.isnan(a)] = 0
11
+ return a
12
+ else:
13
+ return a
6
14
 
7
15
  def cohen_d(d1, d2):
8
16
  """
@@ -13,6 +21,9 @@ def cohen_d(d1, d2):
13
21
  Returns:
14
22
  Cohen's d with precision 3
15
23
  """
24
+ # Checks:
25
+ d1 = check_na(d1)
26
+ d2 = check_na(d2)
16
27
  # calculate the size of samples
17
28
  n1, n2 = len(d1), len(d2)
18
29
  # calculate the variance of the samples
@@ -22,8 +33,8 @@ def cohen_d(d1, d2):
22
33
  # calculate the means of the samples
23
34
  u1, u2 = np.mean(d1), np.mean(d2)
24
35
  # calculate the effect size
25
- if math.isnan(s):
26
- return 0
36
+ if math.isnan(s) or s == 0:
37
+ return -1
27
38
  return (int(1000 * np.abs((u1 - u2)) / s)) / 1000
28
39
 
29
40
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: nkululeko
3
- Version: 0.65.2
3
+ Version: 0.65.5
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
@@ -255,6 +255,19 @@ Nkululeko can be used under the [MIT license](https://choosealicense.com/license
255
255
  Changelog
256
256
  =========
257
257
 
258
+ Version 0.65.5
259
+ --------------
260
+ * added fill_na in plot effect size
261
+
262
+ Version 0.65.4
263
+ --------------
264
+ * added datasets to distribution
265
+ * changes in wav2vec2
266
+
267
+ Version 0.65.3
268
+ --------------
269
+ * various bugfixes
270
+
258
271
  Version 0.65.2
259
272
  --------------
260
273
  * fixed bug in dataset.csv that prevented correct paths for relative files
@@ -1,2 +0,0 @@
1
- VERSION="0.65.2"
2
- SAMPLING_RATE=16000
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes