Исследовать обратный дешифратор: звук → VoiceScenario
Цель
Проверить гипотезу о практической обратимости нашей параметрической модели:
VoiceScenario → генератор → звук
и обратно:
звук → дешифратор → VoiceScenario.
Ключевой принцип проверки
Начинать не с человеческой речи, а с собственных сценариев, где правильный ответ заранее известен.
Для сценария S:
S → G(S) = X
затем:
X → D(X) = S'
Первый строгий критерий:
если дешифратор не способен стабильно восстанавливать исходные сценарии из звуков, которые создал наш собственный генератор, говорить о дешифровке реальной речи преждевременно.
Проверять нужно на всём доступном наборе разных сценариев, а не на одном удачном кейсе.
Этап 1. Синтетический ground truth
Собрать набор существующих и новых сценариев:
- устойчивые голосовые звуки;
- шумовые;
- взрывные;
- переходы;
- слоги/фрагменты;
- короткие слова.
Для каждого хранить:
- исходный JSON;
- точный сгенерированный звук;
- подробный аналитический лог;
- результат дешифратора;
- различия между исходным и восстановленным сценарием;
- результат повторного синтеза из восстановленного сценария.
Нужно понять, какие параметры восстанавливаются устойчиво, какие неоднозначны и какое разрешение логов необходимо.
Этап 2. Проверка повторного синтеза
Недостаточно получить похожий JSON. Восстановленный сценарий нужно снова проиграть:
S → X → D(X)=S' → G(S')=X'
И сравнить:
- структуру сценариев;
- аналитические признаки
XиX'; - восприятие человеком на слух.
Этап 3. Перенос на человеческую речь
Только после стабильной работы на собственных синтетических данных перейти к записи человека.
Цель здесь уже не обязательно восстановить некий «истинный» физический сценарий человека, которого у нас нет. Практический критерий:
дешифратор создаёт такой
VoiceScenario, который при воспроизведении даёт узнаваемый и достаточно близкий человеческий звук.
Главный открытый вопрос
Насколько пространство человеческой речи покрывается текущим пространством звуков нашего генератора.
AudioContext технически способен воспроизвести любой цифровой waveform, если дать ему полный массив отсчётов. Но наша система намеренно заменяет тысячи отсчётов компактным структурным описанием.
Поэтому исследуем не возможность воспроизведения вообще, а границу:
какая минимальная сложность структурного представления достаточна для приемлемого качества человеческой речи?
Возможное развитие модели
Если текущего VoiceScenario недостаточно, не считать это автоматическим опровержением подхода. Исследовать постепенное увеличение выразительности:
- более богатый source model;
- дополнительные резонансы/антирезонансы;
- turbulence/noise;
- локальные спектральные детали;
- более плотные временные управляющие точки;
- при необходимости короткие residual-компоненты.
В пределе представление может приближаться к waveform. Практическая цель — найти точку, где качество уже достаточно, а описание всё ещё существенно компактнее и структурнее массива samples.
Связь с редактором
Даже несовершенный дешифратор может быть полезен, если выдаёт хороший черновой сценарий:
запись → черновой VoiceScenario → визуальный редактор/ИИ → человек доводит на слух.
Критерии успеха
- Дешифратор устойчиво восстанавливает собственные сценарии хотя бы на ограниченном наборе классов звука.
- Повторный синтез из восстановленного сценария perceptually близок к исходному синтетическому звуку.
- Понятно, какие данные теряются при текущем анализе и нужно ли уменьшать сжатие логов.
- На реальных записях получаются хотя бы полезные стартовые сценарии.
- Можно оценить зависимость
качество ↔ сложность/размер представленияи приблизиться к практической границе системы.