CoolFace
Datasetpublic

VoiceHub/dacvae-tts-tr-w512-clean

DACVAE-TTS Turkish run C (width 512, clean data) Generated audio of every evaluated checkpoint of the training run tr-w512-clean (Turkish zero-shot voice-cloning TTS, dacvae-tts, frozen Meta DACVAE latents, 48 kHz). This repository holds model outputs and metrics, not training data. Training data: Vyvo/tr-dataset-12 (Turkish podcast segments). Run C: configs/nano_tr_w512.yaml (66.5M parameters: width 512, 8 heads, batch expansion 4, frame budget 6000), trained from scratch on… See the full description on the dataset page: https://huggingface.co/datasets/VoiceHub/dacvae-tts-tr-w512-clean.

sourceHugging Facecc-by-nc-4.0updated 4h agoView on Hugging Face
1likes273downloads
Dataset Card

DACVAE-TTS Turkish run C (width 512, clean data)

Generated audio of every evaluated checkpoint of the training run tr-w512-clean (Turkish zero-shot voice-cloning TTS, dacvae-tts, frozen Meta DACVAE latents, 48 kHz). This repository holds model outputs and metrics, not training data. Training data: Vyvo/tr-dataset-12 (Turkish podcast segments).

Run C: configs/nanotrw512.yaml (66.5M parameters: width 512, 8 heads, batch expansion 4, frame budget 6000), trained from scratch on the CER/DNSMOS-filtered clean cache (32k rows, Whisper-large-v3 CER <= 0.1, DNSMOS OVRL >= 2.8), one RTX 4090, 60k updates.

How to listen

  • monitor/prompt-<uid>.wav: the reference voice given to the model (a real validation recording of an unseen speaker, decoded through the DACVAE codec, so it also shows the codec's own quality ceiling).
  • monitor/<step-folder>/NNN.wav: the model's synthesis of case NNN — the text of another recording of the same speaker, in the prompt's voice. monitor/<step-folder>/results.jsonl lists per case: text (target transcript), prompt_uid (which prompt WAV), hypothesis (Whisper-large-v3 transcript of the synthesis), wer, cer, speaker_similarity, duration_ratio. NNN.json holds the sampler settings and timings.
  • Folder name suffix -gG-uU-nN-sS-dD-kK: guidance G, guidance applied while t < U, initial-noise scale N, sway S, duration scale D, Euler steps K (no suffix = guidance 2, 16 steps).
  • monitor/cases.json: the 48 (prompt, target) cases; monitor.jsonl: one summary row per evaluated checkpoint/setting; train.jsonl: training/validation curves; config.json: the full training configuration.

WER/CER: faster-whisper large-v3 (Turkish), Turkish text normalization (numbers spelled out, İ/ı-aware lower-casing, punctuation removed). SIM: microsoft/wavlm-base-plus-sv cosine between synthesis and the codec-decoded prompt. Corpus WER/CER over 48 cases of 10 held-out speakers; the ASR floor on real codec-decoded speech is WER ≈ 0.05 / CER ≈ 0.016.

Results

stepfolderWERCERSIMduration ratioguidancesteps
5000monitor/step-0005000-g3-u1-n1-s-1-d1-k320.8170.5250.9561.033.032
10000monitor/step-0010000-g3-u1-n1-s-1-d1-k320.3730.2290.9641.033.032
15000monitor/step-0015000-g3-u1-n1-s-1-d1-k320.2480.1510.9671.033.032
20000monitor/step-0020000-g3-u1-n1-s-1-d1-k320.2080.1250.9661.033.032
25000monitor/step-0025000-g3-u1-n1-s-1-d1-k320.1790.1050.9661.033.032
30000monitor/step-0030000-g3-u1-n1-s-1-d1-k320.1530.0960.9651.033.032
35000monitor/step-0035000-g3-u1-n1-s-1-d1-k320.1520.0940.9651.033.032
40000monitor/step-0040000-g3-u1-n1-s-1-d1-k320.1360.0740.9651.033.032
45000monitor/step-0045000-g3-u1-n1-s-1-d1-k320.1250.0620.9661.033.032
50000monitor/step-0050000-g3-u1-n1-s-1-d1-k320.0970.0510.9641.033.032
55000monitor/step-0055000-g3-u1-n1-s-1-d1-k320.1060.0540.9581.033.032
60000monitor/step-0060000-g3-u1-n1-s-1-d1-k320.0980.0520.9551.033.032
60000monitor/step-0060000-g4-u1-n1-s-1-d1-k320.1020.0530.9471.034.032
60000monitor/step-0060000-g5-u1-n1-s-1-d1-k320.0990.0530.9441.035.032
60000monitor/step-0060000-g6-u1-n1-s-1-d1-k320.0990.0500.9431.036.032

Configuration

json
{
  "latent_dim": 128,
  "width": 512,
  "depth": 12,
  "heads": 8,
  "text_depth": 4,
  "patch_size": 1,
  "ff_mult": 3,
  "cond_dropout": 0.2,
  "reference_encoder": "mlp",
  "reference_pooling": "mean",
  "reference_paths": "both",
  "duration_features": "baseline",
  "positions": "rope",
  "qk_norm": true,
  "text_attention": 4,
  "prediction": "edm",
  "text_layout": "joined",
  "duration": "rule",
  "ctc_layer": 8,
  "adaln_rank": 64
}
json
{
  "steps": 60000,
  "batch_size": 96,
  "accumulation": 1,
  "learning_rate": 0.0008,
  "warmup": 2000,
  "weight_decay": 0.01,
  "optimizer": "muon",
  "muon_momentum": 0.95,
  "ema_decay": 0.9999,
  "precision": "bf16",
  "workers": 4,
  "worker_threads": 1,
  "prefetch_factor": 4,
  "loader_start_method": "spawn",
  "cuda_prefetch": true,
  "checkpoint_every": 1000,
  "validate_every": 1000,
  "log_every": 100,
  "grad_checkpoint": true,
  "compile": false,
  "seed": 42,
  "flow_reduction": "frame",
  "duration_weight": 0.1,
  "speaker_balance": 0.0,
  "diagnostics_every": 0,
  "pairing": "within",
  "prompt_fraction_min": 0.1,
  "prompt_fraction_max": 0.6,
  "prompt_dropout": 0.3,
  "time_sampling": "logit_normal",
  "batch_expansion": 4,
  "keep_every": 5000,
  "ctc_weight": 0.1,
  "contrastive_weight": 0.2,
  "contrastive_margin": 0.1,
  "wandb_project": "dacvae-tts-tr"
}