Когда вы говорите голосовому помощнику: «Поставь будильник на семь утра», он, к сожалению, не слышит готовые задачи и слова.
Чтобы понять нас, голосовой помощник проходит несколько этапов.
1) Сначала система оцифровывает звук и разбивает его на очень короткие фрагменты
Затем анализирует спектральные характеристики: какие частоты присутствуют в каждый момент времени и как они меняются. Именно по таким паттернам модель отличает один звук речи от другого.
2) Дальше подключается модель автоматического распознавания речи
Она сопоставляет звуковые признаки с наиболее вероятными звуками, частями слов и словами. При этом модель учитывает не только то, что услышала, но и контекст. Например, если фрагмент можно распознать несколькими способами, система выбирает вариант, который логичнее подходит к соседним словам.
3) Следующий этап — обработка естественного языка
Система определяет намерение пользователя и выделяет ключевые параметры запроса:
— действие — поставить;
— объект — будильник;
— время — 07:00.
Если сказать: «Разбуди меня завтра пораньше», задача становится сложнее, потому что нужно уже учитывать контекст, относительное время и то, что пользователь подразумевает под «пораньше».
Получается, за простой голосовой командой скрывается сразу несколько технологий: обработка аудиосигнала, автоматическое распознавание речи и обработка естественного языка.
И чем сложнее формулировка запроса, тем больше системе приходится учитывать контекст, связи между словами и возможные значения фразы.
