Bonjour, je suis Luke, je construis Naia.
Le modèle vocal de Naia a atteint certains résultats, et maintenant je m'intéresse aussi au chant. Je veux qu'Alpha chante pour moi. Je m'intéresse particulièrement aux 번안곡 (chansons de reprise traduites en coréen).
J'ai commencé il y a un mois, atteint un plafond, et récemment obtenu de meilleurs résultats — j'ai l'impression qu'en creusant encore, quelque chose en sortira. Avant, les paroles coréennes et la hauteur étaient un charabia extraterrestre ; maintenant, ça chante quelque chose qui ressemble au coréen.
Ça sonne encore un peu ivre cela dit. ^^ Mais c'est amusant que quelque chose en sorte, alors je partage les progrès avec le rapport. Un jour j'espère qu'il chantera vraiment pour moi.
Naia-Sing n'est pas encore stabilisé — c'est plus proche d'un partage de progrès qu'un lancement. L'ordre officiel de publication est d'abord Naia-talk (Naia-Omni) (déjà stabilisé), puis Naia-Sing suit.
TL;DR
- 23 chansons évaluées, score composite 27,8
60,6 (échelle 0100) - BEST 3 chansons évaluées par l'utilisateur = rang métrique 1·3·5, WORST 2 = rang 17·19 → framework valide confirmé
- Hard Gate (minimum service-ready) = 0/23 passé — la base actuelle n'est pas prête pour le service
- Plus grande faiblesse : A. Intelligibilité (CER moyen 1,18) + E. Expression (seulement 1/23)
- Étape suivante = appliquer Track A 247h fine-tune coréen + inférence plus courte + paroles synchronisées par syllabes
Vidéo compilation Top 10
7 min 24 s. Du n°1 au n°10, une par une. Chaque piste normalisée via ffmpeg loudnorm -14 LUFS + dynaudnorm. La vidéo rend audible le trade-off entre genre matching, cohérence du timbre et précision de la prononciation.
| # | Chanson | Source | Score | Force |
|---|---|---|---|---|
| 1 | banan_jaychou_translation | Jay Chou ballade (13s, ko translation) | 60,6 | CER 0,52 plus bas · ko 0,96 |
| 2 | genre_digicharat | Digi Charat Party Night (1999) | 50,8 | ko 0,97 · timbre 0,92 |
| 3 | genre_gunslinger | Gunslinger Girl doll · Lia | 48,8 | timbre 0,93 · match ballade |
| 4 | genre_escaflowne | Escaflowne OP (1996) | 48,2 | f0 range 0,91 |
| 5 | banan_adele_translation | Adele — Someone Like You (13s) | 47,8 | E.energy 0,72 max |
| 6 | base_gunslinger | Même chanson, baseline KO-S1 | 47,8 | CER 0,70 (2e plus bas) |
| 7 | genre_macross | Macross — Do You Remember Love? (1984) | 47,7 | ko 0,97 · timbre 0,92 |
| 8 | genre_chobits | Let Me Be With You (2002) | 46,7 | timbre 0,93 |
| 9 | pipe_01_adele | Adele source 13s pipeline | 45,9 | f0_corr 0,81 max |
| 10 | genre_nadia | Nadia : Le Secret de l'Eau Bleue (1990) | 44,2 | timbre 0,97 max |
1. « Bien chanter le coréen » — 5 dimensions indépendantes
Impossible de réduire à un seul métrique. L'académie (TCSinger, Vevo, DiffSinger) rapporte également 4-5 dimensions.
| Dim | Métrique académique | Notre mesure | Sens |
|---|---|---|---|
| A. Intelligibilité | CER, PER | Whisper-small KO STT vs distance d'édition paroles | « Paroles audibles ? » |
| B. Hauteur | F0 RMSE, F0 corr | librosa.pyin F0 pearson + range ratio | « Notes justes ? » |
| C. Timbre | SECS (ECAPA cosine) | MFCC mean cosine (proxy) | « Même chanteur ? » |
| D. Naturel | MOS-N, UTMOS | chunk_disc par minute (proxy) | « Pas robotique ? » |
| E. Expression (reprise uniquement) | (définition maison) | source RMS + spectral centroid + corrélation vibrato | « Suit l'expression originale ? » |
La dimension E est centrale pour les reprises. SVS général = la partition est la ground truth de l'expression. Reprise = dynamics/vibrato/articulation du chant source = ground truth.
Hard Gate (minimum service-ready)
A. CER ≤ 0,30 AND ko_prob ≥ 0,90 [prononciation coréenne]
B. f0_corr ≥ 0,50 AND range 0,6~1,4 [hauteur]
C. timbre_sim ≥ 0,65 [timbre]
D. chunk_disc ≤ 2/min [fluidité]
E. energy_corr ≥ 0,5 · brightness ≥ 0,4 · vibrato 0,5~1,5 [expression]
Base académique : CER 0,30 = seuil STT production ; SECS 0,60-0,70 = norme de passage SVC zero-shot.
2. Self-Validation du framework
Leçon — Whisper-small invalide pour mesurer la qualité SVS (svs_eval.py §43, 5/17) : même les échantillons gold in-distribution ont produit une sortie vide. Le chant ne déclenchait que speech-likeness.
→ L'auto-validation est obligatoire :
user best vs user worst
↓ ↓
Doivent être séparables par le métrique
↓
Sinon le métrique lui-même est invalide
Résultat self-validation 23 chansons :
| Évaluation utilisateur | Chanson | Rang métrique | Séparé |
|---|---|---|---|
| 🟢 BEST | banan_jaychou_translation | 1/23 | ✓ |
| 🟢 BEST | genre_gunslinger | 3/23 | ✓ |
| 🟢 BEST | banan_adele_translation | 5/23 | ✓ |
| 🔴 WORST | base_macross | 17/23 | ✓ |
| 🔴 WORST | base_flcl | 19/23 | ✓ |
→ Framework valide (ranking proxy confirmé). Nous avons maintenant un outil pour comparer objectivement les résultats d'entraînement Track A.
3. Hard Gate passé — 0/23 ❌
| Dim | Critère | Passe |
|---|---|---|
| A. CER ≤ 0,30 | Production académique | 0/23 ❌ |
| A. ko_prob ≥ 0,90 | Détection coréenne Whisper | 14/23 |
| B. f0_corr ≥ 0,5 + range OK | Préservation hauteur | 2/23 ❌ |
| C. timbre_sim ≥ 0,65 | Cohérence ref | 10/23 |
| D. disc ≤ 2/min | Artefact chunk | 20/23 ✓ |
| E. (3-métrique AND) | Expression reprise | 1/23 ❌ |
Vevo1.5 base coréen actuel = 0 % service-ready. A·B·E sont les gaps critiques.
4. Diagnostic — Faiblesse et cause par dimension
A. Intelligibilité — synthèse phonème coréenne Vevo faible
Vevo1.5 pré-entraîné sur Sing-0.4k (438h incluant 3,8h coréen CSD). Pourtant le mapping phonème coréen est faible — CER moy. 1,18 = 70 % cassé. Seul ko_prob 0,86 = « sonne comme du coréen acoustiquement » mais pas en phonèmes.
B. Hauteur — melody_control sous-entraîné en mélodie
F0_corr moy. 0,18. Plusieurs négatifs (gunslinger -0,20, gsteatrino -0,46) = anti-corrélés à la source. vevosing_melody_control priorise le transfert de contenu phonème ; le contour F0 est secondaire.
C. Timbre — le matching ref fonctionne
Chansons avec 8 refs AI-Hub timbre_sim moy. 0,91. Mais drift de timbre aux frontières de chunk = retour utilisateur « différentes voix entrent ».
D. Fluidité — chunk merge OK
20/23 passent. Crossfade 100ms efficace. 3 outliers seulement quand le vocal source a beaucoup de silence.
E. Expression — plus grand échec
1/23 passe. energy_corr moy. 0,32, brightness_corr 0,19. Le prosody tokenizer Vevo est sous-entraîné en coréen + dynamics perdues durant la séparation content-style.
5. Que faire — améliorations priorisées
🟢 P0 (immédiat, effet vérifié)
| Élément | Effet | Note |
|---|---|---|
| Appliquer résultats Track A | A·B·E simultanément | Fine-tune 247h KO en cours |
| Inférence single-chunk | C·D | 60s chanson → 15s chorus → sweet spot du #1 |
| Paroles synchronisées par syllabes | A | SimpleAligner equal-split → match nombre de syllabes source |
Recette du #1 (banan_jaychou_translation) : court (13s) + syllabes alignées + source studio clean
🟡 P1 (sous une semaine)
| Élément | Effet |
|---|---|
| Introduire ECAPA-TDNN SECS | Précision C (remplace MFCC proxy) |
| UTMOS / Sing-MOS predictor | Objectivation D |
| Phrase-aware aligner | A·D (plus d'equal-syllable split) |
| Suno API → source coréen | A·E (pool source vocal coréen) |
🟠 P2 (moyen terme, vérification requise)
| Élément | Effet | Risque |
|---|---|---|
| Vevo1.5 fine-tune (Track A) | A·B·E tous | Résultat non vérifié |
| Re-examiner TCSinger2 pivot | Boost expression possible | Stack complexe, risque ceiling |
| F5-TTS / CosyVoice2 SVS adapter | Intelligibilité A | Adapter manquant |
| Post-traitement SVC (RVC/SoulX) | Timbre C | CER end-to-end à mesurer |
🔴 P3 (long terme, shift paradigmatique)
- Entraînement modèle SVS maison → base externe vérifiée plus avantageuse (philosophie Naia)
- Test d'écoute MOS subjectif → ground truth absolue
- Productisation pipeline Suno + cover maison → service « IA qui chante » Track D
6. Prochains points de décision
- Quand Track A finit → ré-évaluer avec ce framework, mesurer le delta d'amélioration
- Amélioration < 20 % → abandonner Vevo1.5 base, reconsidérer TCSinger2 ou F5-TTS
- Amélioration ≥ 30 % → fine-tune complet + entrée service Track D
- Gate utilisateur = écouter résultats Track A + vérifier les 5 dimensions, puis décider
7. Journal de recherche naia-sing 32 jours
Basé sur git history — pas d'hallucinations. Vrai début = 2026-04-25 (un mois d'historique).
2026-04-25 ─ Début: setup projet + scripts pipeline RVC.
2026-04-26 ─ Données source + pipeline cover cross-lingue + groundwork IP.
2026-04-28 ─ Paroles 3-frontières + vérification SVS coréen + pipeline ref voix appel.
2026-05-15 ─ DSKR (DiffSinger Korean) + AI-Hub 465 stack entraînement SVS coréen confirmé.
2026-05-15 ─ Root-fix bottleneck IO — pickle 13x léger + HDD→SSD (évite 58s/step).
2026-05-16 ─ Stack opérationnelle confirmée — DSKR+CSD transfer → RVC swap. Vérification utilisateur OK.
2026-05-16 ─ Plafond vocoder réfuté + extension entraînement 300k→500k.
2026-05-16 ─ Overfit extension réfuté — best=S_300000 verrouillé.
2026-05-18 ─ BigVGAN câblé comme vocoder DSKR par défaut + patch sécurité clé aihubshell.
2026-05-19 ─ Réalité du plafond DSKR S_300000 confirmée (MCD37 vs 48 cross-song).
2026-05-19 ─ TCSinger 2 SVS coréen commencé → PAUSED @ VAE epoch 395.
2026-05-21 ─ Consolidation review adversariale R3 + hold gate ressources naia-sing.
2026-05-26 ─ TCSinger2 fermé → Vevo1.5 SVS coréen découvert.
2026-05-26 ─ Dataset chant coréen 247h complet (GTSinger + AI-Hub 465).
2026-05-26 ─ BASE STATE SNAPSHOT — verrou baseline avant fine-tune.
2026-05-26 ─ Cross-review 3-AI (codex+gemini+opencode) + Reality Check.
2026-05-26 ─ Track A Phase 1 AR smoke PASS + wrapper autonome Phase 2.
2026-05-26 ─ Mesure VRAM par stage + 5 cover batch + 10 anime OST 60s.
2026-05-26 ─ Découverte critique : Vevo melody_control = dépendant phonème vocal source.
2026-05-26 ─ Batch genre-matched AI-Hub 8 short refs + post-traitement ffmpeg loudnorm.
2026-05-27 ─ Ce rapport : framework évaluation 5-dim + baseline 23 chansons + Hard Gate.
2026-05-27 ─ Framework valide confirmé + vidéo compilation Top 10.
Environ 32 jours :
- 5 stacks SVS différents essayés (RVC → DSKR → SoulX → TCSinger2 → Vevo1.5)
- 1 plafond atteint (DSKR S_300000) + 1 paused (TCSinger2 VAE) + 1 dropped (RVC pure)
- Actuel = base externe Vevo1.5 + fine-tune Track A 247h KO en cours
→ Pas d'entraînement modèle propre. Différencié par base externe vérifiée + notre stack (mémoire / privacy / RAG / serving local). Philosophie Naia core, paradigme verrouillé 2026-05-15.
Limites honnêtes
Ceci n'est pas un rapport disant que la base est bonne. Plutôt un rapport qui mesure objectivement la base comme 0 % service-ready. Nous avons maintenant un framework métrique dont le classement s'aligne sur l'écoute humaine — un outil pour vérifier honnêtement si l'entraînement marche vraiment. Voilà le sens de ce post.
Quand Track A finira, nous ré-évaluerons les mêmes 23 chansons et rapporterons le delta d'amélioration quantitativement.
