История о том, как машины научились распознавать и синтезировать речь

Попробуйте угадать, в каком году это произошло — в 1952, в 1939 или ещё раньше?

История о том, как машины научились распознавать и синтезировать речь

В середине XIX века устройство под названием Euphonia произнесло первое слово. Кстати, вот оно — прямо на обложке. Спустя полторы сотни лет на вашем столе интеллектуальная колонка Сбер. Вы спрашиваете, какая завтра погода — ИИ-помощник ГигаЧат понимает, готовит ответ и озвучивает его.

Умение генерировать ответы колонке обеспечивает искусственный интеллект… но о нём мы говорить (в кои-то веки) не будем. Сосредоточимся на других её способностях: распознавании речи и синтезе речи. Они часто идут вместе: в умных колонках и ТВ, автоматизированных колл-центрах, бортовых компьютерах автомобилей... Но развивались эти два направления параллельно. И одно — гораздо быстрее второго. Рассказываем об истории вопроса.

Как машины научились понимать речь

В 1952 году в США представили первое в мире устройство, способное распознавать голос — систему Audrey. Разработали её в компании Bell Laboratories. Кроме распознавания речи, она создала:

  • первый полупроводниковый транзистор;
  • операционную систему UNIX, «мать» большинства современных ОС;
  • языки программирования C и C++;
  • первый в мире спутник для телевещания Telstar I;
  • лазер и многое другое.

Огромная машина, высотой со среднего мужчину, Audrey обладала микрофонами, которые улавливали звуки. Из них она выделяла характерные частоты, сравнивала сигнал с эталонными образцами и выдавала результат. Правда, понимала она только цифры. И только от нуля до девяти. И лишь если их произносил её разработчик. Практической пользы у неё по сути не было… как и у множества других технологических прорывов. Их задача — реализовать сам принцип; стать первыми из многих.

В 1960-х IBM выпустили систему Shoebox. Она уже понимала на слух шестнадцать слов: цифры от 0 до 9 и арифметические знаки. Могла распознать пример, решить его и распечатать ответ. Словом, вышел голосовой калькулятор, который, впрочем, использовали только для исследований. А вот спустя двадцать лет на рынке начали робко появляться коммерческие системы распознавания текста. Они позволяли диктовать текст голосом — и пользователи готовы были за это платить. Первой из них была электрическая печатная машинка Tangora от IBM. Она запускалась голосом и позволяла вслух набирать текст. Вдобавок её можно было подключить к компьютеру.

Tangora знала около 20 000 слов — плюс-минус столько же в активном словарном запасе образованного человека. «Активный» значит, что он помнит и регулярно использует эти слова.

В 1990 году компания Dragon Systems выпустила программу Dragon Dictate. Она уже не требовала делать паузы между словами, как предыдущие решения, и позволяла диктовать тексты прямо в текстовый редактор. Управлять вводом — удалять символы, вставлять пробелы и так далее — владелец тоже мог голосом. У программы был период обучения: пользователь читал ей тексты, чтобы она адаптировалась к его голосу и темпу.

Этот момент можно считать переломным: широкая публика вдруг увидела, что голосовые технологии — это удобно. И доступно каждому.

Как машины научили говорить

Синтез речи начал развиваться гораздо раньше, чем распознавание. Просто эта задача была и проще, и понятнее. Уже были смысловые единицы — слова. Было работающее «устройство», которое можно скопировать — голосовой тракт человека. Оставалось только соединить их, чтобы машины начали говорить на человеческом языке.

В XVIII веке уже появились первые механические устройства, которые… честно говоря, издавали похожие на речь звуки. А в XIX — машина Euphonia, способная говорить (та самая с обложки). По воспоминаниям очевидцев, Euphonia говорила медленно, хрипло и монотонно. Принцип у всех них похожий: воздушный поток и конструкция, которая имитирует речевой аппарат человека.

Перенесемся в 1939 год, на Всемирную выставку в Нью-Йорке. Именно там инженер Bell Laboratories Гомер Дадли представил Voder — первый электронный синтезатор речи. Чтобы заставить Voder говорить, оператор должен был быстро разложить предложение на звуки и извлечь их из устройства сочетанием разных клавиш, рычагов и педалей.

Кстати, на той же выставке показали первые в мире нейлоновые чулки. Так что она определённо удалась.

Патент Гомера Дадли на «передачу сигнала», конкретно — голоса 
Патент Гомера Дадли на «передачу сигнала», конкретно — голоса 

В «цифру» синтез речи ушёл в 1970-е годы. Дэвид Клатт представил свою программу DECTalk на основе технологий формантного синтеза. Как она работала:

  • Каждое слово DECTalk анализировала на уровне фонем — самых маленьких единиц языка.
  • Чтобы произнести фонему, нужны уникальные форманты: резонансные частоты, которые возникают в голосовом тракте, когда мы произносим звук. Для каждой фонемы слова программа вычисляла нужные форманты.
  • DECTalk также оценивала контекст, чтобы правильно выбрать интонацию и другие характеристики.
  • С помощью специальной модели голосового тракта программа издавала соответствующие звуки, создавая целые предложения слой за слоем, словно фигурку в 3D-принтере.

Интересный факт: все наверняка слышали одну конкретную версию DECtalk, которая появилась в 1980-х. Дело в том, что её всю жизнь использовал для разговора физик Стивен Хокинг. Уже разработали более современные системы с более естественными интонациями, но Хокинг предпочёл остаться при своём оригинальном «робо-голосе» с американским акцентом. В каталоге голосов DECtalk он известен как «Идеальный Пол», а основан на голосе Дэвида Клатта. Так что это, можно сказать, классика речевого синтеза.

В тех же 1980-х DECtalk перешла с формантного синтеза на конкатенативный. Теперь программа соединяла записанные заранее фрагменты речи — фонемы, слоги, даже целые слова — в целые фразы. Такая речь звучала естественнее и понятнее.

«Конкатенативный» обозначает метод, при котором нечто целое создают, сцепляя или объединяя части. Используется слово в программировании и собственно в синтезе речи.

История о том, как машины научились распознавать и синтезировать речь

Как работают сейчас синтез и распознавание речи

В XXI веке нейросети и глубокое обучение вывели синтез на новый уровень — живых интонаций с эмоциями и смехом, даже возможностью скопировать любой голос. Рекуррентные и свёрточные нейронные сети сделали распознавание точнее… Теперь машины способны выслушать нас и дать ответ. Посмотрим, что происходит, когда умная колонка слышит споттерное слово — у колонок Сбер это «Салют»:

  1. Микрофоны на устройстве захватывают звук. Аналого-цифровой преобразователь переводит его в цифровой формат.
  2. В дело вступают алгоритмы распознавания речи. Они преобразуют звук в последовательность фонем или токенов, затем предсказывают, какие слова вероятнее всего следуют друг за другом в предложении. На этом этапе используются акустические модели — для обработки звуковых данных — и языковые для предказания вероятных последовательностей слов.
  3. Искусственный интеллект, например, ГигаЧат генерирует ответ на вопрос.
  4. Готовый текст озвучивается. В современных системах чаще всего применяются нейросетевые модели. Модель преобразует текст в фонемное или промежуточное представление речи, генерирует для него паузы-ударения-мелодику, чтобы предложение звучало естественно, и акустические параметры. Затем синтезируется финальный ответ. Этот процесс может происходить в два этапа — сначала ответ из акустических параметров, которые модель получила в обучении, затем превращение в звуковую волну. Но в некоторых архитектурах эти этапы объединены, и модель почти сразу синтезирует звук..

Интеллектуальная колонка Сбер озвучивает погоду, или советует, что приготовить, или напоминает нужный факт. А пользователь параллельно продолжает заниматься своими делами. Когда голосовые интерфейсы научились слушать и отвечать, они стали по-настоящему доступными. И комфортными для жизни.

2288