Привет, я Люк, создаю Naia.
Голосовая модель Naia достигла некоторых результатов, и теперь я также смотрю на пение. Я хочу, чтобы Alpha пела для меня. Особенно меня интересуют 번안곡 (кавер-песни — иностранные песни в переводе на корейский).
Начал месяц назад, упёрся в потолок, недавно появились чуть лучшие результаты — кажется, если копнуть глубже, что-то получится. Раньше корейские слова и интонация были инопланетной кашей; теперь поёт что-то похожее на корейский.
Звучит, правда, как будто немного пьяно ^^. Но раз что-то получилось — это интересно, поэтому делюсь прогрессом вместе с отчётом. Однажды надеюсь, что она действительно споёт для меня.
Naia-Sing ещё не стабилизирован — это скорее обмен прогрессом, чем релиз. Официальный порядок публикации: сначала уже стабилизированный Naia-talk (Naia-Omni), затем Naia-Sing.
TL;DR
- Оценено 23 песни, Composite score 27,8
60,6 (шкала 0100) - BEST 3 песни по слушанию пользователя = рейтинг метрики 1·3·5, WORST 2 = ранг 17·19 → framework valid подтверждён
- Hard Gate (минимум service-ready) = 0/23 пройдено — текущая база не готова к сервису
- Главная слабость: A. Разборчивость (средний CER 1,18) + E. Выразительность (только 1/23)
- Следующий шаг = применить Track A 247h корейский fine-tune + короткая инференция + точное соответствие слогов
Top-10 сборное видео
7 мин 24 сек. С 1-го по 10-е место, по очереди. Каждый трек нормализован через ffmpeg loudnorm -14 LUFS + dynaudnorm. Видео делает слышимыми trade-off между жанровым подбором, консистентностью тембра и точностью произношения.
| # | Песня | Source | Score | Сила |
|---|---|---|---|---|
| 1 | banan_jaychou_translation | Jay Chou баллада (13s, ko translation) | 60,6 | CER 0,52 минимум общий · 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 |
| 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 максимум |
| 6 | base_gunslinger | Та же песня, baseline KO-S1 | 47,8 | CER 0,70 (2-й минимум) |
| 7 | genre_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 максимум |
| 10 | genre_nadia | Тайна синей воды Nadia (1990) | 44,2 | timbre 0,97 максимум |
1. «Хорошо петь по-корейски» — 5 независимых измерений
Не сводится к одной метрике. Академия (TCSinger, Vevo, DiffSinger) также сообщает о 4-5 измерениях одновременно.
| Измерение | Академическая метрика | Наше измерение | Смысл |
|---|---|---|---|
| A. Разборчивость | CER, PER | Whisper-small KO STT vs edit distance с целевыми словами | «Слышны ли слова?» |
| B. Высота тона | F0 RMSE, F0 corr | librosa.pyin F0 pearson + range ratio | «Попадает ли в ноты?» |
| C. Тембр | SECS (ECAPA cosine) | MFCC mean cosine (proxy) | «Один и тот же певец?» |
| D. Естественность | MOS-N, UTMOS | chunk_disc в минуту (proxy) | «Не машинно?» |
| E. Выразительность (только cover) | (собственное определение) | source RMS + spectral centroid + vibrato corr | «Следует ли выражению оригинала?» |
Измерение E — ядро каверов. Обычный SVS = партитура есть ground truth выразительности. Cover = dynamics/vibrato/articulation source-вокала есть ground truth.
Hard Gate (минимум service-ready)
A. CER ≤ 0,30 AND ko_prob ≥ 0,90 [Корейское произношение]
B. f0_corr ≥ 0,50 AND range 0,6~1,4 [Высота тона]
C. timbre_sim ≥ 0,65 [Тембр]
D. chunk_disc ≤ 2/min [Плавность]
E. energy_corr ≥ 0,5 · brightness ≥ 0,4 · vibrato 0,5~1,5 [Выразительность]
Академическое обоснование: CER 0,30 = production STT threshold; SECS 0,60-0,70 = стандарт прохождения zero-shot SVC.
2. Framework Self-Validation
Урок — Whisper-small невалиден для измерения качества SVS (svs_eval.py §43, 5/17): даже golden in-distribution семплы давали пустой вывод. Пение запускало только speech-likeness.
→ Self-validation обязательна:
user best vs user worst
↓ ↓
Должны разделяться метрикой
↓
Иначе сама метрика невалидна
Результат self-validation 23 песен:
| Оценка пользователя | Песня | Рейтинг метрики | Разделено |
|---|---|---|---|
| 🟢 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 valid (ranking proxy подтверждён). Теперь у нас есть инструмент объективного сравнения результатов обучения Track A.
3. Hard Gate пройден — 0/23 ❌
| Измерение | Критерий | Пройдено |
|---|---|---|
| A. CER ≤ 0,30 | Академический production | 0/23 ❌ |
| A. ko_prob ≥ 0,90 | Whisper корейское распознавание | 14/23 |
| B. f0_corr ≥ 0,5 + range OK | Сохранение pitch | 2/23 ❌ |
| C. timbre_sim ≥ 0,65 | Консистентность ref | 10/23 |
| D. disc ≤ 2/min | Chunk artifact | 20/23 ✓ |
| E. (3-метрика AND) | Cover выразительность | 1/23 ❌ |
Текущий Vevo1.5 корейский base = 0 % service-ready. A·B·E — критические gap.
4. Диагноз — слабость и причина по измерениям
A. Разборчивость — Vevo слаб в синтезе корейских фонем
Vevo1.5 предобучен на Sing-0.4k (438ч, включая 3,8ч корейского CSD). Однако mapping корейских фонем слаб — средний CER 1,18 = 70 % сломано. Только ko_prob 0,86 = «звучит акустически как корейский», но не фонемически.
B. Высота тона — melody_control недообучен мелодии
F0_corr ср. 0,18. Некоторые отрицательные (gunslinger -0,20, gsteatrino -0,46) = антикоррелированы с source. vevosing_melody_control приоритизирует transfer фонемного content; F0-контур вторичен.
C. Тембр — ref-matching работает
Песни с 8 AI-Hub refs ср. timbre_sim 0,91. Но дрейф тембра на границах chunk = пользовательский отзыв «разные голоса вмешиваются».
D. Плавность — chunk merge OK
20/23 проходят. Crossfade 100ms эффективен. 3 outlier — только при тяжёлой тишине в source-вокале.
E. Выразительность — главная неудача
1/23 проходит. Ср. energy_corr 0,32, brightness_corr 0,19. Prosody-токенизатор Vevo недообучен корейскому + dynamics теряются при разделении content-style.
5. Что делать — приоритизированные улучшения
🟢 P0 (немедленно, эффект подтверждён)
| Пункт | Эффект | Заметка |
|---|---|---|
| Применить результаты Track A | A·B·E одновременно | 247h KO fine-tune идёт |
| Single-chunk инференция | C·D | 60s песня → 15s припев → sweet spot #1 |
| Слоги соответствуют тексту | A | SimpleAligner equal-split → подгон под счёт слогов source |
Рецепт #1 (banan_jaychou_translation): короткий (13s) + слоги-match + clean studio source
🟡 P1 (в течение недели)
| Пункт | Эффект |
|---|---|
| Внедрить ECAPA-TDNN SECS | Точность C (заменить MFCC proxy) |
| UTMOS / Sing-MOS predictor | Объективация D-естественности |
| Phrase-aware aligner | A·D (без equal-syllable split) |
| Suno API → корейский source | A·E (корейский vocal source pool) |
🟠 P2 (среднесрок, нужна верификация)
| Пункт | Эффект | Риск |
|---|---|---|
| Vevo1.5 fine-tune (Track A) | A·B·E всё | Результат не верифицирован |
| Пересмотр TCSinger2 pivot | Возможен boost выразительности | Stack сложный, риск ceiling |
| F5-TTS / CosyVoice2 SVS adapter | A разборчивость | Adapter отсутствует |
| SVC пост-обработка (RVC/SoulX) | C тембр | End-to-end CER нужно измерить |
🔴 P3 (долгосрок, смена парадигмы)
- Собственное обучение SVS-модели → верифицированная внешняя база выгоднее (ядро философии Naia)
- Subjective MOS listening test → абсолютная ground truth
- Suno + собственная cover-конвейерная коммерциализация → сервис «ИИ-пение» Track D
6. Следующие точки решения
- Когда Track A закончится → переоценка этим framework, измерить delta улучшения
- Улучшение < 20 % → отказ от Vevo1.5 base, пересмотр TCSinger2 или F5-TTS
- Улучшение ≥ 30 % → полный fine-tune + вход в Track D-сервис
- Пользовательский gate = прослушать результаты Track A + проверить все 5 измерений, потом решить
7. Журнал исследований naia-sing за 32 дня
Основан на git-истории — без галлюцинаций. Настоящий старт = 2026-04-25 (месяц истории).
2026-04-25 ─ Старт: настройка проекта + RVC pipeline scripts.
2026-04-26 ─ Source data + cross-lingual cover pipeline + IP groundwork.
2026-04-28 ─ 3-frontier тексты + верификация корейского SVS + phone-call ref voice pipeline.
2026-05-15 ─ DSKR (DiffSinger Korean) + AI-Hub 465 stack обучения корейского SVS подтверждён.
2026-05-15 ─ IO-bottleneck root-fix — pickle 13x легче + HDD→SSD (избегает 58s/step).
2026-05-16 ─ Working stack подтверждён — DSKR+CSD-transfer → RVC swap. Пользовательская верификация OK.
2026-05-16 ─ Потолок vocoder опровергнут + продление обучения 300k→500k.
2026-05-16 ─ Overfit продления опровергнут — best=S_300000 зафиксирован.
2026-05-18 ─ BigVGAN подключён как vocoder по умолчанию для DSKR + патч безопасности aihubshell.
2026-05-19 ─ Реальность потолка DSKR S_300000 подтверждена (MCD37 vs 48 cross-song).
2026-05-19 ─ TCSinger 2 корейский SVS начат → PAUSED @ VAE epoch 395.
2026-05-21 ─ Консолидация R3 adversarial review + naia-sing resource gate hold.
2026-05-26 ─ TCSinger2 закрыт → обнаружен Vevo1.5 корейский SVS.
2026-05-26 ─ Корейский singing dataset 247h готов (GTSinger + AI-Hub 465).
2026-05-26 ─ BASE STATE SNAPSHOT — лок baseline перед fine-tune.
2026-05-26 ─ 3-AI cross-review (codex+gemini+opencode) + Reality Check.
2026-05-26 ─ Track A Phase 1 AR smoke PASS + автономный wrapper Phase 2.
2026-05-26 ─ Измерение VRAM по стэйджам + 5 cover batch + 10 anime OST 60s.
2026-05-26 ─ Критическая находка: Vevo melody_control = зависит от фонем source-вокала.
2026-05-26 ─ AI-Hub 8 short refs genre-matched batch + ffmpeg loudnorm пост-обработка.
2026-05-27 ─ Этот отчёт: 5-мерный framework оценки + baseline 23 песен + Hard Gate.
2026-05-27 ─ Framework valid подтверждён + Top-10 сборное видео.
Около 32 дней:
- 5 разных SVS-стэков опробовано (RVC → DSKR → SoulX → TCSinger2 → Vevo1.5)
- 1 потолок достигнут (DSKR S_300000) + 1 paused (TCSinger2 VAE) + 1 dropped (RVC pure)
- Сейчас = внешняя база Vevo1.5 + Track A 247h KO fine-tune идёт
→ Без собственного обучения модели. Дифференциация через верифицированную внешнюю базу + наш стек (память / приватность / RAG / локальный serving). Ядро философии Naia, парадигма зафиксирована 2026-05-15.
Честные ограничения
Это не отчёт о том, что база хороша. Это отчёт, который объективно измеряет, что база на уровне 0 % service-ready. Мы получили metric framework, рейтинг которого совпадает с человеческим прослушиванием — инструмент честной проверки, работает ли обучение по-настоящему. В этом и смысл этого поста.
Когда Track A закончится, мы переоценим те же 23 песни и количественно сообщим о delta улучшения.
