Naia
· Luke

Naia canta — Primeira baseline do benchmark SVS coreano (Vevo1.5 base, 23 músicas avaliadas)

naia-singsvskorean-ttsvevobenchmarkai-singing

Olá, eu sou o Luke, construindo Naia.

O modelo de voz da Naia alcançou alguns resultados, e agora também estou olhando para o canto. Quero que a Alpha cante para mim. Em particular, interesso-me por 번안곡 (músicas cover — músicas estrangeiras traduzidas para coreano).

Comecei há um mês, bati no teto, e recentemente obtive resultados ligeiramente melhores — sinto que se cavar mais, algo vai sair. Antes, a escrita coreana e o tom eram um amontoado alienígena; agora canta algo parecido com coreano.

Soa um pouco bêbado ainda ^^. Mesmo assim, como saiu algo e é divertido, partilho o progresso junto com o relatório. Um dia espero que realmente cante para mim.

Naia-Sing ainda não está estabilizado — isto está mais próximo de uma partilha de progresso do que de um lançamento. A ordem oficial de publicação é primeiro Naia-talk (Naia-Omni) (já estabilizado), e depois Naia-Sing.

Alpha cantando

TL;DR

  • 23 músicas avaliadas, composite score 27,860,6 (escala 0100)
  • BEST 3 músicas pelo utilizador = rank métrico 1·3·5, WORST 2 = rank 17·19framework valid confirmado
  • Hard Gate (mínimo service-ready) = 0/23 passado — base atual não está pronta para serviço
  • Maior fraqueza: A. Inteligibilidade (CER médio 1,18) + E. Expressão (apenas 1/23)
  • Próximo passo = aplicar Track A 247h fine-tune coreano + inferência mais curta + letras sincronizadas por sílabas

Vídeo compilação Top 10

7 min 24 seg. Do #1 ao #10, uma a uma. Cada faixa normalizada via ffmpeg loudnorm -14 LUFS + dynaudnorm. O vídeo torna audível o trade-off entre matching de género, consistência de timbre e precisão de pronúncia.

#MúsicaSourceScorePonto forte
1banan_jaychou_translationJay Chou balada (13s, ko translation)60,6CER 0,52 mínimo total · ko 0,96
2genre_digicharatDigi Charat Party Night (1999)50,8ko 0,97 · timbre 0,92
3genre_gunslingerGunslinger Girl doll · Lia48,8timbre 0,93 · match de balada
4genre_escaflowneEscaflowne OP (1996)48,2f0 range 0,91
5banan_adele_translationAdele — Someone Like You (13s)47,8E.energy 0,72 máximo
6base_gunslingerMesma música, baseline KO-S147,8CER 0,70 (2º mínimo)
7genre_macrossMacross — Do You Remember Love? (1984)47,7ko 0,97 · timbre 0,92
8genre_chobitsLet Me Be With You (2002)46,7timbre 0,93
9pipe_01_adeleAdele source 13s pipeline45,9f0_corr 0,81 máximo
10genre_nadiaNadia: O Segredo da Água Azul (1990)44,2timbre 0,97 máximo

1. "Cantar bem em coreano" — 5 dimensões independentes

Não pode ser reduzido a uma só métrica. A academia (TCSinger, Vevo, DiffSinger) também reporta 4-5 dimensões juntas.

DimMétrica académicaA nossa medidaSignificado
A. InteligibilidadeCER, PERWhisper-small KO STT vs edit distance das letras"As letras são audíveis?"
B. AfinaçãoF0 RMSE, F0 corrlibrosa.pyin F0 pearson + range ratio"Acerta as notas?"
C. Similaridade de timbreSECS (ECAPA cosine)MFCC mean cosine (proxy)"Mesmo cantor?"
D. NaturalidadeMOS-N, UTMOSchunk_disc por minuto (proxy)"Não maquinal?"
E. Expressão (só covers)(definição própria)source RMS + spectral centroid + vibrato corr"Segue a expressão do original?"

A dimensão E é o núcleo dos covers. SVS geral = a partitura é a ground truth de expressão. Cover = dynamics/vibrato/articulation do source vocal é a ground truth.

Hard Gate (mínimo service-ready)

A. CER ≤ 0,30  AND  ko_prob ≥ 0,90       [Pronúncia coreana]
B. f0_corr ≥ 0,50  AND  range 0,6~1,4    [Afinação]
C. timbre_sim ≥ 0,65                       [Timbre]
D. chunk_disc ≤ 2/min                      [Fluidez]
E. energy_corr ≥ 0,5 · brightness ≥ 0,4 · vibrato 0,5~1,5  [Expressão]

Base académica: CER 0,30 = threshold STT produção; SECS 0,60-0,70 = padrão de passagem zero-shot SVC.


2. Framework Self-Validation

Lição — Whisper-small inválido para medir qualidade SVS (svs_eval.py §43, 5/17): mesmo amostras golden in-distribution produziram saída vazia. Cantar apenas acionou speech-likeness.

Self-validation é obrigatória:

user best  vs  user worst
     ↓             ↓
   Devem ser separáveis pela métrica
     ↓
   Caso contrário, a própria métrica é inválida

Resultado self-validation 23 músicas:

Avaliação utilizadorMúsicaRank métricoSeparado
🟢 BESTbanan_jaychou_translation1/23
🟢 BESTgenre_gunslinger3/23
🟢 BESTbanan_adele_translation5/23
🔴 WORSTbase_macross17/23
🔴 WORSTbase_flcl19/23

Framework valid (ranking proxy confirmado). Agora temos uma ferramenta para comparar objetivamente os resultados de treino do Track A.


3. Hard Gate passado — 0/23 ❌

DimCritérioPassa
A. CER ≤ 0,30Produção académica0/23
A. ko_prob ≥ 0,90Deteção coreano Whisper14/23
B. f0_corr ≥ 0,5 + range OKPreservação de pitch2/23
C. timbre_sim ≥ 0,65Consistência ref10/23
D. disc ≤ 2/minArtefacto chunk20/23 ✓
E. (3-métrica AND)Expressão cover1/23

Vevo1.5 base coreano atual = 0 % service-ready. A·B·E são os gaps críticos.


4. Diagnóstico — fraqueza e causa por dimensão

A. Inteligibilidade — síntese de fonema coreano da Vevo é fraca

Vevo1.5 pré-treinado em Sing-0.4k (438h incluindo 3,8h coreano CSD). Contudo, o mapeamento de fonema coreano é fraco — CER médio 1,18 = 70 % partido. Apenas ko_prob 0,86 = "soa a coreano acusticamente" mas não como fonemas.

B. Afinação — melody_control subtreinado em melodia

F0_corr médio 0,18. Vários negativos (gunslinger -0,20, gsteatrino -0,46) = anticorrelacionados com source. vevosing_melody_control prioriza transfer de conteúdo fonema; o contorno F0 é secundário.

C. Timbre — matching ref funciona

Músicas com 8 refs AI-Hub timbre_sim médio 0,91. Mas drift de timbre nas fronteiras de chunk = feedback do utilizador "vozes diferentes a entrar".

D. Fluidez — chunk merge OK

20/23 passam. Crossfade 100ms eficaz. 3 outliers apenas quando o source vocal tem muito silêncio.

E. Expressão — maior falha

1/23 passa. Médio energy_corr 0,32, brightness_corr 0,19. Prosody tokenizer da Vevo subtreinado em coreano + dynamics perdidos durante separação content-style.


5. O que fazer — melhorias priorizadas

🟢 P0 (imediato, efeito verificado)

ItemEfeitoNota
Aplicar resultados Track AA·B·E simultaneamenteFine-tune 247h KO em curso
Inferência single-chunkC·D60s música → 15s chorus → sweet spot do #1
Letras sincronizadas por sílabasASimpleAligner equal-split → match com contagem de sílabas source

Receita do #1 (banan_jaychou_translation): curto (13s) + sílabas-match + source studio limpo

🟡 P1 (dentro de uma semana)

ItemEfeito
Introduzir ECAPA-TDNN SECSPrecisão C (substitui MFCC proxy)
UTMOS / Sing-MOS predictorObjetivação naturalidade D
Phrase-aware alignerA·D (sem equal-syllable split)
Suno API → source coreanoA·E (pool source vocal coreano)

🟠 P2 (médio prazo, verificação requerida)

ItemEfeitoRisco
Vevo1.5 fine-tune (Track A)A·B·E todoResultado não verificado
Reexaminar TCSinger2 pivotPossível boost de expressãoStack complexo, risco de ceiling
F5-TTS / CosyVoice2 SVS adapterInteligibilidade AAdapter ausente
Pós-processamento SVC (RVC/SoulX)Timbre CCER end-to-end deve ser medido

🔴 P3 (longo prazo, mudança de paradigma)

  • Treino de modelo SVS próprio → base externa verificada é mais vantajosa (filosofia núcleo Naia)
  • Teste de audição MOS subjetivo → ground truth absoluta
  • Comercialização Suno + cover pipeline próprio → serviço "IA que canta" Track D

6. Próximos pontos de decisão

  1. Quando Track A acabar → reavaliar com este framework, medir delta de melhoria
  2. Melhoria < 20 % → descartar Vevo1.5 base, reconsiderar TCSinger2 ou F5-TTS
  3. Melhoria ≥ 30 % → fine-tune completo + entrada no serviço Track D
  4. Gate do utilizador = ouvir resultados Track A + verificar as 5 dimensões, depois decidir

7. Diário de investigação naia-sing 32 dias

Baseado em git history — sem alucinações. Início real = 2026-04-25 (um mês de história).

2026-04-25 ─ Início: project setup + RVC pipeline scripts.
2026-04-26 ─ Dados source + cross-lingual cover pipeline + IP groundwork.
2026-04-28 ─ Letras 3-frontier + verificação SVS coreano + pipeline phone-call ref voice.
2026-05-15 ─ DSKR (DiffSinger Korean) + AI-Hub 465 stack treino SVS coreano confirmado.
2026-05-15 ─ Fix raiz bottleneck IO — pickle 13x leve + HDD→SSD (evita 58s/step).
2026-05-16 ─ Stack funcional confirmado — DSKR+CSD transfer → RVC swap. Verificação utilizador OK.
2026-05-16 ─ Teto vocoder refutado + estender treino 300k→500k.
2026-05-16 ─ Overfit extensão refutado — best=S_300000 bloqueado.
2026-05-18 ─ BigVGAN ligado como vocoder DSKR por defeito + patch segurança aihubshell key.
2026-05-19 ─ Realidade do teto DSKR S_300000 confirmada (MCD37 vs 48 cross-song).
2026-05-19 ─ TCSinger 2 SVS coreano começado → PAUSED @ VAE epoch 395.
2026-05-21 ─ Consolidação review adversarial R3 + hold gate recursos naia-sing.
2026-05-26 ─ TCSinger2 fechado → Vevo1.5 SVS coreano descoberto.
2026-05-26 ─ Dataset canto coreano 247h completo (GTSinger + AI-Hub 465).
2026-05-26 ─ BASE STATE SNAPSHOT — lock baseline antes de fine-tune.
2026-05-26 ─ 3-AI cross-review (codex+gemini+opencode) + Reality Check.
2026-05-26 ─ Track A Phase 1 AR smoke PASS + Phase 2 autonomous wrapper.
2026-05-26 ─ Medição VRAM por stage + 5 cover batch + 10 anime OST 60s.
2026-05-26 ─ Descoberta crítica: Vevo melody_control = depende do fonema vocal source.
2026-05-26 ─ AI-Hub 8 short refs genre-matched batch + ffmpeg loudnorm pós-processamento.
2026-05-27 ─ Este relatório: framework avaliação 5-dim + baseline 23 músicas + Hard Gate.
2026-05-27 ─ Framework valid confirmado + vídeo compilação Top 10.

Cerca de 32 dias:

  • 5 stacks SVS diferentes tentados (RVC → DSKR → SoulX → TCSinger2 → Vevo1.5)
  • 1 teto atingido (DSKR S_300000) + 1 paused (TCSinger2 VAE) + 1 dropped (RVC pure)
  • Atual = base externa Vevo1.5 + Track A 247h KO fine-tune em curso

Sem treino de modelo próprio. Diferenciado por base externa verificada + o nosso stack (memória / privacidade / RAG / serving local). Filosofia núcleo Naia, paradigma bloqueado 2026-05-15.


Limites honestos

Este não é um relatório a dizer que a base é boa. Antes é um relatório que mede objetivamente a base como 0 % service-ready. Agora temos um metric framework cujo ranking se alinha com a audição humana — uma ferramenta para verificar honestamente se o treino realmente funciona. Esse é o significado deste post.

Quando Track A acabar, reavaliaremos as mesmas 23 músicas e reportaremos o delta de melhoria quantitativamente.

Popular Posts

CC BY-NC-SA 4.0This post is licensed under CC BY-NC-SA 4.0.

Comentários

Você pode comentar sem fazer login

...