wq2012 commited on
Commit
427f1c8
·
verified ·
1 Parent(s): 81bb8fe

Upload wq2012/wavenet-waveform-coder pretrained weights, SavedModel, TFLite, GGUF, and metrics

Browse files
.gitattributes CHANGED
@@ -33,3 +33,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ model_f16.gguf filter=lfs diff=lfs merge=lfs -text
37
+ model_q4_k_m.gguf filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - en
4
+ license: apache-2.0
5
+ library_name: tensorflow
6
+ tags:
7
+ - audio
8
+ - speech-coding
9
+ - neural-audio-codec
10
+ - wavenet
11
+ - codec2
12
+ - speaker-verification
13
+ - icassp2018
14
+ - safetensors
15
+ - gguf
16
+ - tflite
17
+ datasets:
18
+ - librispeech_asr
19
+ - vctk
20
+ ---
21
+
22
+ # WaveNet Closed-Loop Waveform Speech Coder (WW, ICASSP 2018)
23
+
24
+ **This is not an officially supported Google product.**
25
+
26
+ > *This model repository is an open-source reproduction of the paper **W. Bastiaan Kleijn, Felicia S. C. Lim, Alejandro Luebs, Jan Skoglund, Florian Stimberg, Quan Wang, Thomas C. Walters, "WaveNet Based Low Rate Speech Coding," ICASSP 2018 (arXiv:1712.01120)**, created after the original publication using open-source frameworks and datasets.*
27
+
28
+ - **GitHub Repository**: [wq2012/wavenet_coding](https://github.com/wq2012/wavenet_coding)
29
+ - **PyPI Package**: [`wavenet-coding`](https://pypi.org/project/wavenet-coding/)
30
+ - **Interactive Demo Space**: [wq2012/wavenet-coding-demo](https://huggingface.co/spaces/wq2012/wavenet-coding-demo)
31
+
32
+ ## Model Summary
33
+
34
+ Unconditioned closed-loop autoregressive WaveNet speech coder (Section 2.2 & Section 3.2) predicting 256-level 8-bit μ-law posteriors at 16 kHz with 6-unit multi-scale tanh μ-law companding and lossless 32-bit arithmetic coding.
35
+
36
+ ### Exported Artifacts Included in This Repository
37
+
38
+ 1. `model.safetensors`: Hugging Face SafeTensors FP32 weights.
39
+ 2. `config.json`: Complete model architecture and hyperparameter specification.
40
+ 3. `saved_model/`: TensorFlow 2 SavedModel directory with serving signatures.
41
+ 4. `model_fp32.tflite` & `model_int8.tflite`: TensorFlow Lite flatbuffers (FP32 and dynamic-range INT8 quantized).
42
+ 5. `model_f16.gguf` & `model_q4_k_m.gguf`: GGUF v3 binary files (FP16 and 4-bit block-quantized `Q4_K_M`) for C++/edge inference.
43
+ 6. `training_metrics.json` & `evaluation_metrics.json`: Full training curves and benchmark evaluations on LibriSpeech (`test-clean`) and VCTK.
44
+
45
+ ## Training Progression
46
+
47
+ - **Initial Eval Cross-Entropy**: `5.4979` bits/sample
48
+ - **Final Eval Cross-Entropy**: `5.2410` bits/sample
49
+ - **Training Windows**: `48` (`187.79 s`)
50
+
51
+ ## Evaluation Results
52
+
53
+ ### 1. Closed-Loop Waveform Coding Rate & Entropy (Section 3.2)
54
+
55
+ | Dataset | Mean Conditional Entropy H̄ (bits/sample) | Mean Entropy Rate (kb/s) | Cross-Entropy Rate R (bits/sample) | Cross-Entropy Bitrate (kb/s) | Arithmetic Coder Lossless Match Rate |
56
+ | :--- | :---: | :---: | :---: | :---: | :---: |
57
+ | **LibriSpeech (`test-clean`)** | 5.7415 | 91.86 | 5.9333 | 94.93 | 100.0% |
58
+ | **VCTK Corpus** | 5.7457 | 91.93 | 5.8275 | 93.24 | 100.0% |
59
+
60
+ ### 2. Parametric 2.4 kb/s & Reference Codec Comparison — LibriSpeech (`test-clean`)
61
+
62
+ | System / Codec | Bitrate (kb/s) | Objective Wideband MOS-LQO (1–5) | MCD (dB) ↓ | LSD (dB) ↓ | SegSNR (dB) ↑ | High-Band (4–8 kHz) Energy (%) |
63
+ | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
64
+ | **Reference (16 kHz)** | 256.00 | 4.850 | 0.000 | 0.000 | 45.000 | 3.641% |
65
+ | **8-bit mu-law (128 kb/s)** | 128.00 | 4.738 | 0.305 | 0.641 | 37.484 | 3.650% |
66
+ | **WaveNet Waveform (WW)** | 94.93 | 4.738 | 0.305 | 0.641 | 37.484 | 3.650% |
67
+ | **AMR-WB (23.85 kb/s)** | 23.85 | 3.449 | 3.197 | 5.307 | 8.900 | 3.397% |
68
+ | **WaveNet Parametric (W_w, 2.4 kb/s)** | 2.40 | 3.245 | 3.420 | 3.565 | 3.716 | 3.671% |
69
+ | **WaveNet Parametric (W_wo, 2.4 kb/s)** | 2.40 | 2.230 | 7.505 | 7.905 | 1.537 | 1.643% |
70
+ | **MELP (2.4 kb/s)** | 2.40 | 1.627 | 8.412 | 8.770 | -2.744 | 0.041% |
71
+ | **Codec 2 (2.4 kb/s)** | 2.40 | 1.646 | 8.277 | 8.172 | -2.491 | 0.023% |
72
+ | **Speex (2.15 kb/s)** | 2.15 | 1.893 | 7.459 | 8.219 | 0.426 | 0.069% |
73
+
74
+ ### 3. Parametric 2.4 kb/s & Reference Codec Comparison — VCTK Corpus
75
+
76
+ | System / Codec | Bitrate (kb/s) | Objective Wideband MOS-LQO (1–5) | MCD (dB) ↓ | LSD (dB) ↓ | SegSNR (dB) ↑ | High-Band (4–8 kHz) Energy (%) |
77
+ | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
78
+ | **Reference (16 kHz)** | 256.00 | 4.850 | 0.000 | 0.000 | 45.000 | 1.826% |
79
+ | **8-bit mu-law (128 kb/s)** | 128.00 | 4.697 | 0.501 | 0.648 | 37.162 | 1.834% |
80
+ | **WaveNet Waveform (WW)** | 93.24 | 4.697 | 0.501 | 0.648 | 37.162 | 1.834% |
81
+ | **AMR-WB (23.85 kb/s)** | 23.85 | 3.364 | 3.541 | 5.359 | 8.749 | 1.563% |
82
+ | **WaveNet Parametric (W_w, 2.4 kb/s)** | 2.40 | 3.110 | 4.210 | 4.056 | 4.352 | 2.064% |
83
+ | **WaveNet Parametric (W_wo, 2.4 kb/s)** | 2.40 | 2.131 | 8.193 | 8.397 | 1.972 | 1.510% |
84
+ | **MELP (2.4 kb/s)** | 2.40 | 1.454 | 9.397 | 9.090 | -2.683 | 0.033% |
85
+ | **Codec 2 (2.4 kb/s)** | 2.40 | 1.356 | 10.187 | 8.785 | -2.545 | 0.015% |
86
+ | **Speex (2.15 kb/s)** | 2.15 | 1.722 | 8.392 | 8.341 | 0.257 | 0.038% |
87
+
88
+ ### 4. Text-Independent Speaker Verification & Triangle Test (Section 3.4)
89
+
90
+ | Dataset | 8-bit μ-law EER (%) [95% CI] | WaveNet W_wo (2.4 kb/s) EER (%) [95% CI] | WaveNet W_w (2.4 kb/s) EER (%) [95% CI] | Triangle Test Accuracy (W_w closer to μ-law than W_wo) |
91
+ | :--- | :---: | :---: | :---: | :---: |
92
+ | **LibriSpeech (`test-clean`)** | 12.05% [2.22%, 19.64%] | 25.00% [9.75%, 37.96%] | 25.00% [5.36%, 50.00%] | 43.25% (Δcos = +0.3206) |
93
+ | **VCTK Corpus** | 25.00% [11.60%, 42.44%] | 37.05% [20.04%, 50.52%] | 24.55% [12.05%, 46.89%] | 42.60% (Δcos = +0.2990) |
94
+
95
+ ## Usage Examples
96
+
97
+ ### Load SafeTensors in Python (`wavenet-coding`)
98
+
99
+ ```python
100
+ from huggingface_hub import snapshot_download
101
+ from wavenet_coding import inference
102
+
103
+ model_dir = snapshot_download("wq2012/wavenet-waveform-coder")
104
+ codec = inference.WaveNetParametricCodec.from_pretrained(model_dir)
105
+ ```
106
+
107
+ ### Run TFLite Flatbuffer (`model_int8.tflite`)
108
+
109
+ ```python
110
+ import numpy as np
111
+ import tensorflow as tf
112
+
113
+ interpreter = tf.lite.Interpreter(model_path="model_int8.tflite")
114
+ interpreter.allocate_tensors()
115
+ input_details = interpreter.get_input_details()
116
+ output_details = interpreter.get_output_details()
117
+ ```
118
+
119
+ ### Inspect GGUF v3 Binary (`model_q4_k_m.gguf`)
120
+
121
+ ```python
122
+ from wavenet_coding import export
123
+
124
+ header = export.inspect_gguf_header("model_q4_k_m.gguf")
125
+ print(header)
126
+ ```
127
+
128
+ ## Citation
129
+
130
+ ```bibtex
131
+ @inproceedings{kleijn2018wavenet,
132
+ title={WaveNet Based Low Rate Speech Coding},
133
+ author={Kleijn, W. Bastiaan and Lim, Felicia S. C. and Luebs, Alejandro and Skoglund, Jan and Stimberg, Florian and Wang, Quan and Walters, Thomas C.},
134
+ booktitle={2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
135
+ pages={676--680},
136
+ year={2018},
137
+ organization={IEEE}
138
+ }
139
+ ```
config.json ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_name": "wavenet_parametric_2400",
3
+ "mode": "waveform",
4
+ "sample_rate": 16000,
5
+ "conditioning_sample_rate": 8000,
6
+ "cond_frame_rate_hz": 100,
7
+ "codec2_bitrate_bps": 2400,
8
+ "quantization_channels": 256,
9
+ "mu": 255,
10
+ "num_blocks": 2,
11
+ "layers_per_block": 10,
12
+ "residual_channels": 64,
13
+ "dilation_channels": 64,
14
+ "skip_channels": 128,
15
+ "filter_width": 2,
16
+ "use_conditioning": false,
17
+ "cond_dim": 0,
18
+ "cond_conv_channels": 0,
19
+ "cond_conv_kernel_size": 1,
20
+ "voiced_loss_weight": 1.0,
21
+ "learning_rate": 0.001,
22
+ "speaker_overlapping": false,
23
+ "temperature": 0.85,
24
+ "seed": 42
25
+ }
evaluation_metrics.json ADDED
@@ -0,0 +1,326 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model_id": "wq2012/wavenet-waveform-coder",
3
+ "training_metrics": {
4
+ "task": "wavenet",
5
+ "mode": "waveform",
6
+ "speaker_overlapping": false,
7
+ "num_train_windows": 48,
8
+ "num_eval_windows": 16,
9
+ "training_time_sec": 187.79,
10
+ "initial_eval_bits_per_sample": 5.497945785522461,
11
+ "final_eval_bits_per_sample": 5.241023063659668,
12
+ "history": [
13
+ {
14
+ "epoch": 1,
15
+ "train_loss_bits_per_sample": 6.706890265146892,
16
+ "eval_cross_entropy_bits_per_sample": 5.695452690124512
17
+ },
18
+ {
19
+ "epoch": 2,
20
+ "train_loss_bits_per_sample": 6.386214256286621,
21
+ "eval_cross_entropy_bits_per_sample": 5.431291580200195
22
+ },
23
+ {
24
+ "epoch": 3,
25
+ "train_loss_bits_per_sample": 6.12939437230428,
26
+ "eval_cross_entropy_bits_per_sample": 5.330618858337402
27
+ },
28
+ {
29
+ "epoch": 4,
30
+ "train_loss_bits_per_sample": 5.888708432515462,
31
+ "eval_cross_entropy_bits_per_sample": 5.3388352394104
32
+ },
33
+ {
34
+ "epoch": 5,
35
+ "train_loss_bits_per_sample": 5.701914151509603,
36
+ "eval_cross_entropy_bits_per_sample": 5.285624980926514
37
+ },
38
+ {
39
+ "epoch": 6,
40
+ "train_loss_bits_per_sample": 5.6265692710876465,
41
+ "eval_cross_entropy_bits_per_sample": 5.294033050537109
42
+ },
43
+ {
44
+ "epoch": 7,
45
+ "train_loss_bits_per_sample": 5.596172014872233,
46
+ "eval_cross_entropy_bits_per_sample": 5.288949012756348
47
+ },
48
+ {
49
+ "epoch": 8,
50
+ "train_loss_bits_per_sample": 5.530875523885091,
51
+ "eval_cross_entropy_bits_per_sample": 5.241023063659668
52
+ }
53
+ ],
54
+ "exported_files": {
55
+ "config_path": "pretrained_models/wavenet_waveform_coder/config.json",
56
+ "safetensors_path": "pretrained_models/wavenet_waveform_coder/model.safetensors",
57
+ "saved_model_dir": "pretrained_models/wavenet_waveform_coder/saved_model",
58
+ "tflite": {
59
+ "fp32_path": "pretrained_models/wavenet_waveform_coder/model_fp32.tflite",
60
+ "fp32_size_bytes": 2697196,
61
+ "fp32_verified": true,
62
+ "int8_path": "pretrained_models/wavenet_waveform_coder/model_int8.tflite",
63
+ "int8_size_bytes": 924192,
64
+ "int8_verified": true,
65
+ "output_shape": [
66
+ 1,
67
+ 320,
68
+ 256
69
+ ]
70
+ },
71
+ "gguf_f16_path": "pretrained_models/wavenet_waveform_coder/model_f16.gguf",
72
+ "gguf_q4_k_m_path": "pretrained_models/wavenet_waveform_coder/model_q4_k_m.gguf",
73
+ "gguf_verified_tensors": 164
74
+ }
75
+ },
76
+ "librispeech_test_clean_evaluation": {
77
+ "num_eval_utterances": 16,
78
+ "section_3_2_waveform_coding_rates": {
79
+ "mean_entropy_bits_per_sample": 5.7415,
80
+ "mean_entropy_kbps": 91.86,
81
+ "cross_entropy_bits_per_sample": 5.9333,
82
+ "cross_entropy_rate_kbps": 94.93,
83
+ "lossless_exact_match_rate": 1.0
84
+ },
85
+ "section_3_3_codec_comparison": {
86
+ "Reference (16 kHz)": {
87
+ "bitrate_kbps": 256.0,
88
+ "objective_mos_lqo": 4.85,
89
+ "mcd_db": 0.0,
90
+ "lsd_db": 0.0,
91
+ "segmental_snr_db": 45.0,
92
+ "high_band_energy_ratio_percent": 3.641
93
+ },
94
+ "8-bit mu-law (128 kb/s)": {
95
+ "bitrate_kbps": 128.0,
96
+ "objective_mos_lqo": 4.738,
97
+ "mcd_db": 0.305,
98
+ "lsd_db": 0.641,
99
+ "segmental_snr_db": 37.484,
100
+ "high_band_energy_ratio_percent": 3.65
101
+ },
102
+ "WaveNet Waveform (WW)": {
103
+ "bitrate_kbps": 94.932,
104
+ "objective_mos_lqo": 4.738,
105
+ "mcd_db": 0.305,
106
+ "lsd_db": 0.641,
107
+ "segmental_snr_db": 37.484,
108
+ "high_band_energy_ratio_percent": 3.65
109
+ },
110
+ "AMR-WB (23.85 kb/s)": {
111
+ "bitrate_kbps": 23.85,
112
+ "objective_mos_lqo": 3.449,
113
+ "mcd_db": 3.197,
114
+ "lsd_db": 5.307,
115
+ "segmental_snr_db": 8.9,
116
+ "high_band_energy_ratio_percent": 3.397
117
+ },
118
+ "WaveNet Parametric (W_w, 2.4 kb/s)": {
119
+ "bitrate_kbps": 2.4,
120
+ "objective_mos_lqo": 3.245,
121
+ "mcd_db": 3.42,
122
+ "lsd_db": 3.565,
123
+ "segmental_snr_db": 3.716,
124
+ "high_band_energy_ratio_percent": 3.671
125
+ },
126
+ "WaveNet Parametric (W_wo, 2.4 kb/s)": {
127
+ "bitrate_kbps": 2.4,
128
+ "objective_mos_lqo": 2.23,
129
+ "mcd_db": 7.505,
130
+ "lsd_db": 7.905,
131
+ "segmental_snr_db": 1.537,
132
+ "high_band_energy_ratio_percent": 1.643
133
+ },
134
+ "MELP (2.4 kb/s)": {
135
+ "bitrate_kbps": 2.4,
136
+ "objective_mos_lqo": 1.627,
137
+ "mcd_db": 8.412,
138
+ "lsd_db": 8.77,
139
+ "segmental_snr_db": -2.744,
140
+ "high_band_energy_ratio_percent": 0.041
141
+ },
142
+ "Codec 2 (2.4 kb/s)": {
143
+ "bitrate_kbps": 2.4,
144
+ "objective_mos_lqo": 1.646,
145
+ "mcd_db": 8.277,
146
+ "lsd_db": 8.172,
147
+ "segmental_snr_db": -2.491,
148
+ "high_band_energy_ratio_percent": 0.023
149
+ },
150
+ "Speex (2.15 kb/s)": {
151
+ "bitrate_kbps": 2.15,
152
+ "objective_mos_lqo": 1.893,
153
+ "mcd_db": 7.459,
154
+ "lsd_db": 8.219,
155
+ "segmental_snr_db": 0.426,
156
+ "high_band_energy_ratio_percent": 0.069
157
+ }
158
+ },
159
+ "section_3_4_speaker_identification": {
160
+ "mulaw_speech_eer": {
161
+ "eer_percent": 12.053571428571429,
162
+ "eer_ci95_low_percent": 2.2209821428571432,
163
+ "eer_ci95_high_percent": 19.642857142857142,
164
+ "ci_95_low_percent": 2.2209821428571432,
165
+ "ci_95_high_percent": 19.642857142857142,
166
+ "threshold": 0.38931805399917674,
167
+ "mean_genuine_cosine": 0.5900887784230047,
168
+ "mean_impostor_cosine": 0.06415446283955947
169
+ },
170
+ "wavenet_parametric_w_wo_eer": {
171
+ "eer_percent": 25.0,
172
+ "eer_ci95_low_percent": 9.754464285714286,
173
+ "eer_ci95_high_percent": 37.957589285714285,
174
+ "ci_95_low_percent": 9.754464285714286,
175
+ "ci_95_high_percent": 37.957589285714285,
176
+ "threshold": 0.8321953156106268,
177
+ "mean_genuine_cosine": 0.8887528008846554,
178
+ "mean_impostor_cosine": 0.7299079903992016
179
+ },
180
+ "wavenet_parametric_w_w_eer": {
181
+ "eer_percent": 25.0,
182
+ "eer_ci95_low_percent": 5.357142857142857,
183
+ "eer_ci95_high_percent": 50.0,
184
+ "ci_95_low_percent": 5.357142857142857,
185
+ "ci_95_high_percent": 50.0,
186
+ "threshold": 0.47203084832451203,
187
+ "mean_genuine_cosine": 0.616406649899784,
188
+ "mean_impostor_cosine": 0.22985314070694823
189
+ },
190
+ "triangle_test_w_w_vs_w_wo": {
191
+ "mean_cosine_orig_vs_w_wo": 0.48838181445399975,
192
+ "mean_cosine_orig_vs_w_w": 0.8089489559047142,
193
+ "mean_cosine_w_wo_vs_w_w": 0.7808174503733418,
194
+ "mean_cosine_advantage": 0.3205671414507144,
195
+ "triangle_test_identification_percent": 43.24508910582853,
196
+ "triangle_accuracy_percent": 43.24508910582853,
197
+ "random_chance_baseline_percent": 33.33
198
+ }
199
+ }
200
+ },
201
+ "vctk_evaluation": {
202
+ "num_eval_utterances": 16,
203
+ "section_3_2_waveform_coding_rates": {
204
+ "mean_entropy_bits_per_sample": 5.7457,
205
+ "mean_entropy_kbps": 91.93,
206
+ "cross_entropy_bits_per_sample": 5.8275,
207
+ "cross_entropy_rate_kbps": 93.24,
208
+ "lossless_exact_match_rate": 1.0
209
+ },
210
+ "section_3_3_codec_comparison": {
211
+ "Reference (16 kHz)": {
212
+ "bitrate_kbps": 256.0,
213
+ "objective_mos_lqo": 4.85,
214
+ "mcd_db": 0.0,
215
+ "lsd_db": 0.0,
216
+ "segmental_snr_db": 45.0,
217
+ "high_band_energy_ratio_percent": 1.826
218
+ },
219
+ "8-bit mu-law (128 kb/s)": {
220
+ "bitrate_kbps": 128.0,
221
+ "objective_mos_lqo": 4.697,
222
+ "mcd_db": 0.501,
223
+ "lsd_db": 0.648,
224
+ "segmental_snr_db": 37.162,
225
+ "high_band_energy_ratio_percent": 1.834
226
+ },
227
+ "WaveNet Waveform (WW)": {
228
+ "bitrate_kbps": 93.24,
229
+ "objective_mos_lqo": 4.697,
230
+ "mcd_db": 0.501,
231
+ "lsd_db": 0.648,
232
+ "segmental_snr_db": 37.162,
233
+ "high_band_energy_ratio_percent": 1.834
234
+ },
235
+ "AMR-WB (23.85 kb/s)": {
236
+ "bitrate_kbps": 23.85,
237
+ "objective_mos_lqo": 3.364,
238
+ "mcd_db": 3.541,
239
+ "lsd_db": 5.359,
240
+ "segmental_snr_db": 8.749,
241
+ "high_band_energy_ratio_percent": 1.563
242
+ },
243
+ "WaveNet Parametric (W_w, 2.4 kb/s)": {
244
+ "bitrate_kbps": 2.4,
245
+ "objective_mos_lqo": 3.11,
246
+ "mcd_db": 4.21,
247
+ "lsd_db": 4.056,
248
+ "segmental_snr_db": 4.352,
249
+ "high_band_energy_ratio_percent": 2.064
250
+ },
251
+ "WaveNet Parametric (W_wo, 2.4 kb/s)": {
252
+ "bitrate_kbps": 2.4,
253
+ "objective_mos_lqo": 2.131,
254
+ "mcd_db": 8.193,
255
+ "lsd_db": 8.397,
256
+ "segmental_snr_db": 1.972,
257
+ "high_band_energy_ratio_percent": 1.51
258
+ },
259
+ "MELP (2.4 kb/s)": {
260
+ "bitrate_kbps": 2.4,
261
+ "objective_mos_lqo": 1.454,
262
+ "mcd_db": 9.397,
263
+ "lsd_db": 9.09,
264
+ "segmental_snr_db": -2.683,
265
+ "high_band_energy_ratio_percent": 0.033
266
+ },
267
+ "Codec 2 (2.4 kb/s)": {
268
+ "bitrate_kbps": 2.4,
269
+ "objective_mos_lqo": 1.356,
270
+ "mcd_db": 10.187,
271
+ "lsd_db": 8.785,
272
+ "segmental_snr_db": -2.545,
273
+ "high_band_energy_ratio_percent": 0.015
274
+ },
275
+ "Speex (2.15 kb/s)": {
276
+ "bitrate_kbps": 2.15,
277
+ "objective_mos_lqo": 1.722,
278
+ "mcd_db": 8.392,
279
+ "lsd_db": 8.341,
280
+ "segmental_snr_db": 0.257,
281
+ "high_band_energy_ratio_percent": 0.038
282
+ }
283
+ },
284
+ "section_3_4_speaker_identification": {
285
+ "mulaw_speech_eer": {
286
+ "eer_percent": 25.0,
287
+ "eer_ci95_low_percent": 11.595982142857144,
288
+ "eer_ci95_high_percent": 42.44419642857144,
289
+ "ci_95_low_percent": 11.595982142857144,
290
+ "ci_95_high_percent": 42.44419642857144,
291
+ "threshold": 0.2121775659214813,
292
+ "mean_genuine_cosine": 0.3935697310774072,
293
+ "mean_impostor_cosine": 0.0036658837067926322
294
+ },
295
+ "wavenet_parametric_w_wo_eer": {
296
+ "eer_percent": 37.05357142857143,
297
+ "eer_ci95_low_percent": 20.044642857142858,
298
+ "eer_ci95_high_percent": 50.524553571428584,
299
+ "ci_95_low_percent": 20.044642857142858,
300
+ "ci_95_high_percent": 50.524553571428584,
301
+ "threshold": 0.8427541969049193,
302
+ "mean_genuine_cosine": 0.8848814072587434,
303
+ "mean_impostor_cosine": 0.8005241801782267
304
+ },
305
+ "wavenet_parametric_w_w_eer": {
306
+ "eer_percent": 24.55357142857143,
307
+ "eer_ci95_low_percent": 12.053571428571429,
308
+ "eer_ci95_high_percent": 46.886160714285715,
309
+ "ci_95_low_percent": 12.053571428571429,
310
+ "ci_95_high_percent": 46.886160714285715,
311
+ "threshold": 0.4774760105853959,
312
+ "mean_genuine_cosine": 0.6204015199832023,
313
+ "mean_impostor_cosine": 0.18491605664772884
314
+ },
315
+ "triangle_test_w_w_vs_w_wo": {
316
+ "mean_cosine_orig_vs_w_wo": 0.2806833882483422,
317
+ "mean_cosine_orig_vs_w_w": 0.5796352731348118,
318
+ "mean_cosine_w_wo_vs_w_w": 0.8056075167477617,
319
+ "mean_cosine_advantage": 0.2989518848864696,
320
+ "triangle_test_identification_percent": 42.59985923688519,
321
+ "triangle_accuracy_percent": 42.59985923688519,
322
+ "random_chance_baseline_percent": 33.33
323
+ }
324
+ }
325
+ }
326
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5ee38e3aef0669a9c1cdfddca0a261bb25ce16114cd4fb5e03d6e771a63d1c32
3
+ size 2515752
model_f16.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2bfabb7d7bbb5a99c74cedad67114411f0fa6e1ffee9ecd5bf7a0497c018618c
3
+ size 1260672
model_fp32.tflite ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:349a157f2d13cb207d5871008cd3a9bee5006dbc691b171639d46fcef58ca2c7
3
+ size 2697196
model_int8.tflite ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aa5b8a273eff56b5c5ebd8fc1cbd05c242cbf626528c129a3c855899bc2e80ed
3
+ size 924192
model_q4_k_m.gguf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:64794f1066b752ff4e348728be7685d05d623c45cb2ca58c6bbd9ac51b971888
3
+ size 371584
saved_model/saved_model.pb ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:453c432e2284c30a6a431ead77f8db151a958420de0338ffef7ccd7b0051feee
3
+ size 4376639
saved_model/variables/variables.data-00000-of-00001 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f21124fa47b370bd82abea3413760673e8ace57a7be72f044601a1b9ddae62ea
3
+ size 2620208
saved_model/variables/variables.index ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2716e5100d89623fed95f5161c43f808e37ae3c606dc4642385b18e242fcd9a1
3
+ size 10388
training_metrics.json ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "task": "wavenet",
3
+ "mode": "waveform",
4
+ "speaker_overlapping": false,
5
+ "num_train_windows": 48,
6
+ "num_eval_windows": 16,
7
+ "training_time_sec": 187.79,
8
+ "initial_eval_bits_per_sample": 5.497945785522461,
9
+ "final_eval_bits_per_sample": 5.241023063659668,
10
+ "history": [
11
+ {
12
+ "epoch": 1,
13
+ "train_loss_bits_per_sample": 6.706890265146892,
14
+ "eval_cross_entropy_bits_per_sample": 5.695452690124512
15
+ },
16
+ {
17
+ "epoch": 2,
18
+ "train_loss_bits_per_sample": 6.386214256286621,
19
+ "eval_cross_entropy_bits_per_sample": 5.431291580200195
20
+ },
21
+ {
22
+ "epoch": 3,
23
+ "train_loss_bits_per_sample": 6.12939437230428,
24
+ "eval_cross_entropy_bits_per_sample": 5.330618858337402
25
+ },
26
+ {
27
+ "epoch": 4,
28
+ "train_loss_bits_per_sample": 5.888708432515462,
29
+ "eval_cross_entropy_bits_per_sample": 5.3388352394104
30
+ },
31
+ {
32
+ "epoch": 5,
33
+ "train_loss_bits_per_sample": 5.701914151509603,
34
+ "eval_cross_entropy_bits_per_sample": 5.285624980926514
35
+ },
36
+ {
37
+ "epoch": 6,
38
+ "train_loss_bits_per_sample": 5.6265692710876465,
39
+ "eval_cross_entropy_bits_per_sample": 5.294033050537109
40
+ },
41
+ {
42
+ "epoch": 7,
43
+ "train_loss_bits_per_sample": 5.596172014872233,
44
+ "eval_cross_entropy_bits_per_sample": 5.288949012756348
45
+ },
46
+ {
47
+ "epoch": 8,
48
+ "train_loss_bits_per_sample": 5.530875523885091,
49
+ "eval_cross_entropy_bits_per_sample": 5.241023063659668
50
+ }
51
+ ],
52
+ "exported_files": {
53
+ "config_path": "pretrained_models/wavenet_waveform_coder/config.json",
54
+ "safetensors_path": "pretrained_models/wavenet_waveform_coder/model.safetensors",
55
+ "saved_model_dir": "pretrained_models/wavenet_waveform_coder/saved_model",
56
+ "tflite": {
57
+ "fp32_path": "pretrained_models/wavenet_waveform_coder/model_fp32.tflite",
58
+ "fp32_size_bytes": 2697196,
59
+ "fp32_verified": true,
60
+ "int8_path": "pretrained_models/wavenet_waveform_coder/model_int8.tflite",
61
+ "int8_size_bytes": 924192,
62
+ "int8_verified": true,
63
+ "output_shape": [
64
+ 1,
65
+ 320,
66
+ 256
67
+ ]
68
+ },
69
+ "gguf_f16_path": "pretrained_models/wavenet_waveform_coder/model_f16.gguf",
70
+ "gguf_q4_k_m_path": "pretrained_models/wavenet_waveform_coder/model_q4_k_m.gguf",
71
+ "gguf_verified_tensors": 164
72
+ }
73
+ }