Дистрибутор сетевого
и телекоммуникационного оборудования
Наш телефон:
+7 495 789-65-65

Технология непрерывной обработки речи CSP

Распознавание речи : Построение систем : Аппаратные функции CSP : SpeechPearl® SDK

    CSP (Continuous Speech Processing) - технология непрерывной обработки речевого сигнала, разработанная и реализованная Intel для высокопроизводительных систем распознавания речи. CSP предоставляет разработчикам речевых приложений следующие преимущества:

  • Экономичность - снижает стоимость платформ распознавания речи
  • Производительность - уменьшает задержки и повышает скорость ответа
  • Точность - повышает точность распознавания
  • Масштабируемость - делает возможным поэтапный переход от малых систем к крупным
  • Емкость - позволяет строить системы с большим числом портов

     Barge-In

    Ключевым функциональным преимуществом, которое дает CSP, является barge-in - возможность перебивать систему, произнося команды, не дожидаясь окончания проигрывания приветствий и/или меню. Это позволяет абонентам, уже знакомым с системой, не тратить время на прослушивание всех проигрываемых пунктов меню, а произносить команды немедленно. Поэтому с такой системой значительно приятней общаться, не говоря уже о том, что это экономит время звонящего и позволяет системе обслужить большее количество абонентов.

     В таблице приведен типичный сценарий работы системы с barge-in.

    

Событие/действиеНаправлениеОписание
1.Клиент звонит в компанию АБВкомЗвонок попадает в Call-центр компании АБВком с функциями распознавания речи
2.Клиент слышит приветствие и меню: "Здравствуйте, Вы позвонили в компанию АБВком. Назовите технологию, которая Вас интересует или сотрудника, с которым Вы хотите связаться. Для связи с секре[!!!]тарем скажите "помощь" в любое время. Вы можете выбрать одну из следующих технологий: ..."Клиенту проигрывается приветствие и меню первого уровня
3.Клиент перебивает меню: "Иван Петров"Выполняются следующие функции CSP:
  • Воспроизведение прекращается
  • Входящий сигнал очищается от эха
  • Выделенный голосовой сигнал "Иван Петров" и речевой буфер отправляются на хост-процессор модулю распознавания
4.Клиент слышит: ’Идет соединение с Иваном Петровым"... Модуль распознавания распознает произнесенные слова, и Call центр соединяет клиента с Иваном Петровым

    Ключевой момент происходит в п.3, когда клиент перебивает систему на слове "секретарь", что в таблице помечено знаком [!!!]. Воспроизведение меню немедленно прекращается, и происходит переход к п.4. При этом клиент не теряет времени на прослушивание уже не интересующей его части меню (выделенной курсивом в п.2 таблицы).

     Принцип работы CSP

    Обычно, когда абонент произносит что-то во время воспроизведения, входящий сигнал представляет собой смесь из голосового сигнала, эха от воспроизведения и шума в линии. Для обработки такого сигнала требуется большая вычислительная мощность. CSP берет эти функции на себя, выполняя их на DSP-процессорах плат Dialogic, и таким образом разгружая хост-процессор компьютера. Проводя предварительную обработку сигнала, CSP отправляет модулю распознавания, выполняемому на хост-процессоре компьютера, "чистый" речевой фрагмент, готовый к распознаванию. Это позволяет значительно повысить общую производительность системы, увеличить размер распознаваемых словарей и существенно повысить емкость решения.

    Итак, CSP - это набор функций бортового программного обеспечения firmware плат Intel Dialogic, отвечающих за обработку звукового сигнала. Функции CSP в режиме реального времени определяют, что данный звуковой сигнал представляет собой человеческую речь, производит предварительную его обработку и передает на хост-процессор компьютера в "удобном" для модуля распознавания виде.

    Такой подход позволяет существенным образом разгрузить хост-процессор компьютера. Без использования CSP хост-процессор непрерывно получает данные от DSP платы Dialogic со всех ее телефонных портов, получая тем самым серьезную загрузку. Кроме того, этот получаемый от DSP сигнал никак не обработан, и хост-процессору нужно самостоятельно обрабатывать его еще до того как отдать на вход модулю распознавания (например, определять, представляет ли этот сигнал человеческую речь или посторонний звук). Все это дает лишнюю нагрузку на хост, ухудшает производительность и качество распознавания, снижает возможную емкость системы и заставляет устанавливать более мощные и дорогостоящие процессорные ресурсы. Всего этого удается избежать при использовании плат с firmware CSP.

     Функциональность CSP

    CSP firmware обеспечивает выполнение DSP-процессорам платы следующих функций:

  • Полнодуплексный режим работы - позволяет одновременно проигрывать и записывать звук на каждом из каналов
  • Эхоподавление - до16 ms
  • VAD - Voice Activity Detection определяет начало звукового сигнала в линии
  • Речевой буфер - существенно облегчает проблему "рваной речи" и повышает качество распознавания
  • Сигнализация голосового события - работая совместно с VAD, позволяет CSP firmware посылать сообщения хост-приложению
  • Voice-activated streaming/recording - отправляет поток голосовых данных на хост только при определении голосовой энергии в канале
Остановимся более подробно на ключевых элементах.

     Эхоподавление

    Без аппаратного эхоподавления, обеспечиваемого CSP, модуль распознавания в приведенной выше в таблице иллюстрации получил бы смесь сигнала "Иван Петров" с эхом от проигрываемого сообщения "~секре~" и, соответственно, правильное распознавание было бы невозможно. Поэтому в такой системе без CSP пункт 2 должен был бы звучать как "После звукового сигнала назовите сотрудника....", и клиент должен был бы дожидаться на линии окончания всего длинного меню, пока не услышит beep, разрешающий говорить.

    Как видно из таблицы, при использовании функции эхоподавления CSP, клиент может в любой момент перебить систему. При этом произнесенные им слова будут очищены от эха и отправлены на хост в виде, пригодном для успешного распознавания.

     Детектор голосовой активности (VAD)

    VAD является одним из компонентов CSP, который детектирует и исследует звуковую активность, выясняя, достаточно ли звуковой энергии содержит сигнал, похож ли он на речь человека или посторонний шум в линии (треск и т.п.) Для настройки VAD доступны несколько конфигурируемых параметров. Например, можно устанавливать порог громкости, при которой система должна реагировать на сигнал. Причем эти пороги могут быть разными для случаев, когда слово произносится на фоне проигрываемого сообщения и когда абонент начинает говорить после завершения проигрывания сообщения.

     Речевой буфер

    Обычно голосовой сигнал не определяется VAD немедленно при возникновении. Часто энергия сигнала плавно возрастает до тех пор, пока не достигнет установленного порога, на который реагирует VAD. Например, когда произносится имя "Степан", оно начинается с тихого шипящего звука "сь". Поэтому когда VAD среагирует и даст команду передавать сигнал хост-процессору, начальные звуки слова с низкой энергией будут потеряны и распознавание может быть некорректным. Во избежание этой проблемы в CSP firmware предусмотрен предварительный буфер, в котором хранится очищенный от эха сигнал, поступающий до момента реакции VAD. И после срабатывания VAD содержимое буфера отправляется модулю распознавания вместе с остальной частью сигнала. Таким образом, речевой буфер является неотъемлемой частью VAD.

    Каждому порту выделен свой речевой буфер, который может содержать речевой сигнал длиной до 250 ms (при 64Kb/s PCM кодеке).

    Система эхоподавления и VAD позволяют реализовывать функции barge-in, что позволяет звонящему начинать говорить, не дожидаясь окончания проигрывания приветствия или меню. Функция barge-in аппаратно прерывает проигрывание, чтобы не мешать говорить абоненту. В то же время возможны сценарии, когда система должна реагировать только на конкретное слово звонящего, поэтому можно отключить автоматическое прерывание воспроизведения, чтобы оно не прерывалось, пока не будет распознана конкретная команда абонента.