Адаптация распознавания речи под предметную область
Качество распознавания речи на вашем канале (телефония, микрофон переговорной, приложение) задают словарь терминов, акцент собеседников и шум линии. Среднюю точность измеряют через WER (Word Error Rate) — долю неверно распознанных слов. На профессиональной лексике WER выше, чем в демо. Адаптация под предметную область опускает WER до 8 % на отложенных записях (их держат отдельно от обучения) и срезает его на 30 % против базовой модели. Процедура из шести шагов, каждый со своей проверкой: от аудита записей до замера по каналам. Разработка систем распознавания речи.
Что определяет точность на вашем канале
Акустическая модель обучена на общей речи: студийная запись, нейтральная лексика, ровный канал. В телефонной линии слышно меньше частот, добавляется шум, и половина слов становится терминами. Этот разрыв и задаёт расхождение между демо и вашим каналом.
WER складывается из подстановок, пропусков и вставок. Значение 8 % на вашей предметной области — рабочий результат. Значение 15 % с чужого датасета описывает чужой канал, а ваш меряют на его собственных записях.
Предметная область задаёт три настройки: словарь терминов, обработку канала и разделение говорящих. Все три подбирают до старта. После запуска их цена вырастает: переобучение под новый словарь останавливает поток.
Распознавание держится на четырёх частях. Аудио лежит в хранилище в вашем контуре, модель обучается на PyTorch, постобработка идёт через vLLM, а очередь записей держит Kafka. Записи не уходят внешнему провайдеру, поэтому они доступны для повторных замеров и разметки.
Что подготовить
- Несколько часов реальных записей по каждому каналу.
- Словарь терминов и имён: названия продуктов, сокращения, фамилии клиентов.
- Отложенную часть записей для замера, отдельно от тех, что пойдут в обучение.
- Разметку расшифровки хотя бы на части записей, чтобы контролировать качество.
- Контур, куда можно развернуть модель и хранилище аудио.
Словарь терминов ведёт модель к верному слову на редкой лексике. Отложенные записи дают честный WER, а обучающие занижают результат. Цифра появляется только на ваших данных.
Проверка подготовки: список из пяти пунктов, где отмечены записи, словарь, отложенная часть, разметка и контур. Пока хотя бы один пункт пуст, первый шаг сдвигается.
Шаг 1. Аудит записей
Прослушайте записи и зафиксируйте три вещи: каналы связи, уровень шума и словарь, который нужно поддержать. Отдельно отметьте акцент и темп речи, если собеседники различаются между звонками. Посчитайте среднюю длину звонка: от неё зависит объём разметки.
Проверка шага: список каналов с долей записей на каждый. Если канал один и шум ровный, настройка сходится быстрее, и это видно сразу.
Шаг 2. Словарь терминов и имён
Соберите словарь до обучения и перенесите его в настройки распознавания. Редкая лексика получает свой вес, и модель перестаёт заменять профессиональное слово похожим по звучанию. Термины и имена держите одним списком, чтобы проверка покрытия была однозначной.
Проверка шага: доля терминов из словаря, которые распознаются верно на контрольных записях. Размер словаря держите соразмерным: сотни терминов работают, десятки тысяч размывают модель и роняют точность на частых словах.
Шаг 3. Дообучение
Дообучите модель на ваших записях, отдельными настройками под каждый канал. Телефонная линия и микрофон переговорной дают разный спектр, и общий набор настроек теряет на обоих. Дообучение идёт на ваших записях, поэтому данные остаются в контуре.
Проверка шага: WER на отложенных записях до и после дообучения. Адаптация словаря и канала в проекте контакт-центра срезала WER на 30 % и вывела его на 8 % на предметной области.
Шаг 4. Диаризация
Диаризация (разделение речи по говорящим) привязывает реплики к оператору и клиенту, чтобы стенограмма читалась как диалог. Метки ролей на дорожках делают разбор качества по каналам точнее. Дорожки помечайте ролями, чтобы выгрузка читалась без ручных правок.
Проверка шага: число голосов на дорожке и метки говорящих. На перекрытии речи точность разделения падает, и это видно в замерах. Пишите на канал с меньшими помехами, когда есть выбор.
Шаг 5. Запуск в поток
Поставьте аудио в очередь, чтобы записи обрабатывались по мере поступления. Аудио храните в своём контуре, модель оставьте локальной, а постобработку вынесите отдельным сервисом: пунктуация и разбиение на реплики идут после распознавания. Очередь не блокирует поток звонков: запись встаёт в конец.
Проверка шага: время расшифровки на минуту записи. В рабочей схеме минута аудио расшифровывается за 1,2 секунды, поэтому стенограмма готова почти сразу после звонка.
Шаг 6. Замер WER по каналам
Считайте WER на отложенных записях отдельно по каждому каналу и типу речи. Одна общая цифра прячет слабый источник: телефон может держать 8 %, а микрофон переговорной — 15 %. Сравнивайте каналы между собой и с базой: слабый источник виден в разнице.
Проверка шага: таблица WER по каналам до и после адаптации. Отдельные срезы показывают, куда вкладывать разметку.
Как читать метрику WER
WER складывается из подстановок, пропусков и вставок, и каждая часть требует своей правки. Подстановки лечат словарём, пропуски — чувствительностью модели, вставки — правилами постобработки.
Для предметной области полезнее смотреть на WER по каналам и на долю ошибок в критичных полях: именах, суммах и артикулах. Общая цифра сглаживает эти детали, поэтому её держат как фон, а решения принимают по срезам.
Как удержать точность на старте
Начинайте с одного канала — самого шумного: на нём видно, окупается ли адаптация, до переноса на остальные. Отложенные записи держите нетронутыми и обновляйте раз в месяц, чтобы они оставались честной проверкой. Каждую правку оператора после расшифровки отправляйте в словарь: частые исправления показывают, какие слова добавить следующими.
Проверка результата
Процедура сошлась, когда WER на вашей предметной области опустился ниже базы, диаризация ведёт до трёх голосов на дорожку, а расшифровка минуты укладывается в пару секунд. Эти три числа держат как ориентир на старте и после каждой новой разметки. Замер повторите через месяц на новых записях: канал и лексика меняются, и метрика должна это ловить.
Стек и сроки
Первая адаптация под предметную область занимает от трёх недель. В срок входят разметка части записей, дообучение и замер на реальных данных. Модель дообучают на новых записях по мере накопления, и цикл замера повторяется вместе с ними.
Границы точности
Похожие числа и фамилии путаются: имена, суммы и артикулы остаются слабым местом. Словарь терминов и имён снижает их число, проверку критичных сумм оставляйте человеку. Когда говорят одновременно, слова теряются, и точность проседает на перекрытии речи.
Модель, обученная на встречах, теряет качество на звонках. Смена предметной области требует отдельной адаптации: она задаёт словарь и настройки распознавания.
Что дальше
Начните с аудита: несколько часов записей по каждому каналу и словарь терминов. Первый замер WER на ваших данных покажет реальную точность и точку, откуда строить адаптацию. Замер распознавания на ваших записях даёт эту цифру до старта проекта.
Поговорите о задаче
Разберём вашу задачу и покажем, что уже работает у клиентов из вашей отрасли.
Оставить заявку