Голос в компьютере говорит робот что это

Обновлено: 03.07.2024

В 1970-х общение с роботами казалось научной фантастикой: R2D2 и C3PO из «Звёздных войн», способные понимать и говорить, были героями далекого будущего. На самом деле технологии распознавания голоса существовали тогда уже больше двух десятилетий, а синтезом речи учёные занялись еще в XVIII веке. Ну а сегодня прохожий, разговаривающий с умными часами, уже не вызывает удивления. Рассказываем, как человек учил машины общаться: от первых искусственных звуков до персональных виртуальных ассистентов.

1773: Первые попытки научить машины говорить

Первым имитировать человеческое общение с помощью техники попытался в 1773 году немецкий учёный Христиан Кратценштейн, работавший в России. Он изобрёл синтезатор речи на основе трубок органа, который издавал гласные звуки: а, э, и, о, у. Металлические детали резонировали в трубах подобно голосовым связкам. Ещё одно раннее изобретение — говорящая машина австрийца Вольфганга фон Кемпелена 1791 года. Меха подавали воздух на металлический язычок, а человек помогал аппарату генерировать нужные звуки, прикрывая клапан ладонью: устройство произносило простые слова, например «мама» и «папа».

Говорящая машина Кемпелена, экспонат Deutsches Museum, Мюнхен

В XX веке на смену механическим машинам пришли электрические. В 1922 году появилась схема английского физика Джона Стюарта: она издавала несколько гласных звуков с помощью резонаторов — подобно радиоприёмнику. А в 1938 году представили синтезатор на электронных осцилляторах и фильтрах, способный произносить любые слова. Машина Voder, напоминавшая фортепиано, даже умела петь. Её разработала компания Bell Laboratories, которая сейчас называется Nokia Bell Labs.

1952: Audrey от Bell Labs — машина, которая понимает речь

Поняв физику электронного синтеза речи, ученые начали описывать ее формантами — наборами резонансных частот звуков, которые создают связки, язык и губы. Эти описания стали основой технологии распознавания: в 1952 году машина Audrey от Bell Laboratories понимала, когда человек называет цифры от 0 до 9. Audrey воспринимала форманты говорящего и сравнивала их с образцами. Устройство работало точнее, когда слова произносил человек, чьи записи использовались как эталонные. Так возникла задача, которую будут решать в течение следующих десятилетий: научить машины распознавать форманты одних и тех же слов у разных людей.

Графические описания формант слов, обозначающих цифры

1962: IBM Shoebox — появление голосового управления

В 1962 году технологию распознавания голоса публично представила корпорация IBM. Экспериментальная машина Shoebox (дословно – коробка от обуви, по габаритам аппарата) понимала 16 слов: цифры и команды для операций с числами, такие как «плюс», «минус» и «равно». Shoebox принимала речь с помощью микрофона, передавала команды на счетное устройство, которое печатало ход и результаты арифметических операций на бумаге.

Работу Shoebox демонстрировали по телевидению и на Всемирной выставке 1962 года в Сиэтле. Фото из архива IBM

В 1960–1970-х годах идея голосового управления стала популярной благодаря голливудским блокбастерам. Один из самых известных — «Космическая одиссея 2001 года» Стенли Кубрика. В фильме компьютер HAL синтезирует и распознает беглую человеческую речь — совсем как живой. Позднее общающиеся роботы R2D2 и C3PO появились в «Звёздных войнах» Джорджа Лукаса.

1971: Harpy — государственный проект и новый алгоритм

Разработкой технологий распознавания голоса заинтересовалось Министерство обороны США. В рамках программы DARPA Speech Understanding Research (SUR) в 1971 году разработали систему Harpy. Она понимала 1011 слов. Всё благодаря новому подходу: подобие записанных слов сравнивали с эталонами при помощи теории графов. С алгоритмом «поиск луча» (beam search) машина способна воспринимать речь по частям, исходя из синтаксиса и разных форм слов. «Поиск луча» также используют в машинном переводе. Несмотря на новаторство, система всё ещё была исследовательской и была непригодна для коммерческого использования.

1986: IBM Tangora — пишущая машинка с большим словарным запасом

В 1970-х к IBM присоединился Фред Йелинек из Корнелльского университета. Он считал, что в новых разработках нужно отказаться от «подражания» человеческой речи. Он начал искать способы распознавания, основанные на работе компьютера, — и в 1986 году создал пишущую машинку Tangora с голосовым управлением.

В Tangora работал статистический алгоритм на основе скрытой модели Маркова: компьютер рассчитывал вероятности того, что воспринимаемый звук будет частью какого-то слова. Изобретение позволило серьёзно расширить словарный запас: Tangora понимала 20 тысяч слов и несколько предложений. Машинка обучалась под работу с новым пользователем в течение 20 минут. Исследователи начали применять её в своей работе: рабочие станции Tangora на основе компьютеров IBM помогали создавать текстовые документы голосом.

1987: Джули — умная кукла

В 1987 году компания Worlds of Wonder выпустила в продажу умеющих общаться кукол Джули. Электроника внутри понимала 16 слов и отвечала с помощью синтезатора речи. Датчики помогали умной кукле «отличать» день от ночи, а также «чувствовать» холод и тепло — так разговоры получались содержательными. Как и машинку Tangora, Джули нужно было обучать под голос конкретного человека.

До 1980-х разработчики в основном занимались методами преобразования звуковых волн в текст. После появления массовых устройств исследователи начали изучать пользовательский опыт. Выяснилось, что с машинами люди говорят так же, как друг с другом: с упрощённым синтаксисом и искажением литературного языка. Для корректного диалога устройствам не хватало словарного запаса и способности понимать нестандартные речевые конструкции. Ограничения были связаны прежде всего с низкой производительностью процессоров.

1990–1997: Dragon NaturallySpeaking — непрерывный распознаватель речи

С распространением интернета и персональных компьютеров технологии распознавания голоса начали развивать как программное обеспечение — так в 1990 году появилась Dragon Dictate. Супруги Джеймс и Джанет Бейкеры разрабатывали подобные программы с 1977 года, но для полноценной работы компьютерам не хватало мощности процессоров и оперативной памяти. Dragon Dictate работала на операционной системе DOS и распознавала 30 тысяч слов естественного языка. Слова приходилось чётко выговаривать и диктовать по одному.

В 1997 году систему улучшили — появилась Dragon NaturallySpeaking (DNS). Первые версии уже распознавали непрерывную речь — до 100 слов в минуту. Для корректной работы пользователь тренировал программу в течение 45 минут. DNS стала коммерчески успешной — и совершенствуется до сих пор.

Dragon NaturallySpeaking стала первой программой распознавания речи на Windows

2008–2011: Голосовые помощники Google, Apple и другие

Эпоха смартфонов дала голосовому управлению полноценное применение. Появились настоящие виртуальные ассистенты, помогающие использовать разные функции смартфона через речевые команды.

Позднее Google стал использовать своего голосового помощника на Android. Компания Apple разработала собственную технологию, в 2011 году представив Siri — первого помощника с узнаваемым голосом. На английском языке Siri говорит голосом Сьюзан Беннетт — актрисы озвучивания рекламных роликов. Спустя несколько лет голосовыми помощниками обзавелись и другие IT-гиганты: в 2014 году Microsoft представил Cortana, а Amazon — Alexa. Позднее технологией заинтересовались и российские компании — появились голосовые помощники Алиса, Маруся и Олег.

Рынок устройств с технологиями распознавания речи растёт: их используют не только в качестве голосовых помощников в гаджетах, но и для управления беспилотными автомобилями и даже в автоматизации производств. По прогнозам экспертов, к 2025 году размер мирового рынка технологий распознавания голоса составит $27,16 млрд. Для сравнения: в 2019 году он был почти в три раза меньше — $10,7 млрд.

А голосовые ассистенты, которые раньше могли выполнять ограниченный круг задач, становятся умнее с каждым днём. Благодаря прорыву в синтезе речи их голоса сегодня звучат естественнее, а из программ, способных только ставить будильник и совершать звонки, они превратились в полноценных помощников.

Мы в SberDevices развиваем целое семейство виртуальных ассистентов с тремя персонажами — это Сбер, Джой и Афина. Сейчас технологии позволяют наделять ассистентов характерами, чтобы дать пользователям возможность выбрать близкого по духу персонажа. Способы взаимодействия тоже изменились: если первые голосовые помощники могли понимать только речь (и то не всегда хорошо), то с современными ассистентами можно общаться ещё и жестами. Для этого, разумеется, нужна камера — о том, как это работает у нас, мы уже рассказывали. И, конечно, виртуальные ассистенты сегодня умеют гораздо больше, чем их предшественники: они живут в банковских приложениях и помогают управлять финансами, а ещё — умеют заказывать еду, рекомендовать подходящий контент и многое другое.

Проблема аппаратного характера

Первое, на что следует обратить внимание, это неисправности с «железом».

screenshot_1

Неполадки подобного плана связаны с двумя стандартными поломками:

  • не работает звуковая карта, подключенная к персональному компьютеру (стационарному или портативному);
  • нерабочая гарнитура (может «барахлить» микрофон или наушники).

Внимание! Первое, что нужно проверить – правильность подключения периферийного гаджета. Часто причиной неисправности становится неточное соединение штекера гарнитуры и гнезда ПК.

Если соединение установлено верно, стоит проверить исправность звуковой карты. Пользователю необходимо открыть диспетчер устройств, найти наименование нужного объекта. Название может отсутствовать, рядом иногда стоит восклицательный знак – необходимо обновить драйверы или переустановить их.

screenshot_2

Сбой в работе программы

Если поверка «железа» не помогла устранить роботизированный голос у владельца или у собеседника, значит, нужно проверить программное обеспечение утилиты. Чтобы проверить текущие характеристики, нужно выполнить следующие действия:

screenshot_3

  • кликнуть левой клавишей мышки по значку шестеренки, чтобы попасть в раздел пользовательских настроек;
  • перейти в блок «Голос и видео»;

screenshot_4

  • проверить соответствие показателей соединения звуковых данных;
  • настроить чувствительность устройств.

screenshot_5

Дополнительный вариант – переустановка программы. Этот способ является последним вариантом устранения неполадок, при нем может потеряться некоторая информация (контакты, переписка, файлы).

Приложение Discord – относительно новый мессенджер, который продолжает развиваться. Неисправности возникают на разных этапах работы. Роботизированный голос, как неполадка, встречается достаточно часто. Представленные инструкции несложные, подойдут для работы начинающим пользователям. В первую очередь проверяются технические параметры подключения, затем работоспособность программного обеспечения.

image

В этой статье разработчики рассказывают о технологиях и нюансах распознавания пола собеседника по голосу и работе над важными элементами диалога.

Сначала кейс, ну а потом — разбор технологий

image

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

Технология базировалась на использовании полноценной нейросети, а не отдельных скриптов. Именно нейросеть позволила решить проблемы, которые обычно ставят роботов в тупик. В первую очередь, речь идет об ответах собеседника вроде «ну я пока не знаю, возможно да, хотя нет» или даже «да нет». Обычные для человека слова становятся непреодолимым препятствием для робота.

image

В ходе обучения робот стал понимать, какой смысл закладывается в ту либо иную фразу, и каким должен быть ответ. Голосов у робота было несколько — как мужских, так и женских. Основная задача состояла в «очеловечивании» робота с тем, чтобы собеседник-человек не испытывал возможности машины, а вел диалог по целевому сценарию.

Ниже — пример того, что получилось.

Робот слушает собеседника, давая ответ в зависимости от смысла того, что сказал клиент. Общее количество веток сценария, по которым может пойти разговор — более тысячи.
Главной целью этого робота было понять причину снижения активности клиента компании на сайте и сделать интересное предложение каждому. Это была одна из первых попыток компании автоматизировать работу колл-центров.

Новые роботы более совершенны. Вот еще несколько примеров общения роботов с человеком: первый, второй, третий примеры.

Теперь о технологиях

Есть три ключевых технологических особенности, которые позволяют роботу работать:

Распознавание пола собеседника по голосу

Зачем это нужно? Изначально эта функция создавалась для проведения опросов при помощи роботов. Раньше работа по проведению опросов проводилась людьми, которые заполняли ряд пунктов. Например — пол собеседника. Понятно, что человеку для определения этого параметра не нужно спрашивать, с кем он говорит — мужчиной или женщиной. В 99% все и так понятно. С роботами другое дело, для того, чтобы они более-менее точно научились распознавать голоса, пришлось провести масштабную работу. И она не была напрасной, сейчас технология используется для персонализации предложения и голосовых промптов в зависимости от пола.

Важный момент — женский голос универсален и применим для работы с самым широким спектром продукции, а особенно он важен для продуктов для женщин. Согласно разным исследованиям, женский голос воспринимается любой аудиторией положительно, соответственно, в этом случае конверсия больше. Исключение — при продвижении “мужских” продуктов предпочтительнее мужской голос.

Как это работает? Сначала производится первичная обработка данных, она осуществляется на основе обработки голосовых записей и фрагментов продолжительностью по 20 мс. Все собранные голосовые фрагменты проходят предварительную обработку в компоненте VAD (Voice Activity Detection). Это необходимо для отделения «зерен от плевел», то есть речи от шумов. Весь мусор удаляется, благодаря чему увеличивается точность работы моделей.

Для распознавания используется так называемое пространство кепстральных коэффициентов, первой и второй разностей. Основа — метод GMM — Gauss Mixture Models.

Так, на интервале в 10-20 мс вычисляется текущий спектр мощности, после чего применяется обратное преобразование Фурье от логарифма спектра, с поиском необходимых коэффициентов.

Наши GMM-модели настроены отдельно для обучения мод мужской и женский голоса, также используются модели для определения взрослых и детских голосов. Конечно, с нуля обучить систему нельзя, нужны размеченные голосовые записи.

Для того, чтобы повысить эффективность работы системы, применяются коэффициенты тембральных моделей голоса:

  • Тембральная резкость.
  • Тембральная теплота.
  • Тембральная яркость.
  • Тембральная глубина.
  • Тембральная твердость.
  • Тембральный рост.
  • Тембральная неровность.
  • Тембральная ревербация.


Главная часть системы — модуль классификации данных на основе многослойного персептрона, MLP. В нее передаются данные от моделей мужского, женского голосов, данные тембральных моделей. На входе в систему получаем массив проклассифицированных значений, а на выходе — результат определения пола.

Технология, которая здесь описывается, используется для работы как в онлайн (по первой фразе клиента), так и оффлайн режиме классификации (после разговора). Точность распознавания пола составляет около 95%. Важный момент — задержка при работе в онлайне не превышает 120-150 мс, что крайне важно для «очеловечивания» робота. Обычно паузы в общении робота и человека составляют не миллисекунды, а секунды, что, конечно, для собеседника-человека выглядит странно, и сразу понятно, что общение ведет цифровая система.

В планах добавление работы с текстом, точнее — окончаниями. Если собеседник говорит «я могла бы» — однозначно, это женщина. В ближайшее время эта технология будет дорабатываться и внедряться в систему распознавания.

Определение возраста собеседника

Зачем это нужно? В первую очередь, для того, чтобы не предлагать различные продукты и услуги несовершеннолетним. Кроме того, идентифицировать возраст полезно для того, чтобы персонализировать предложения по возрастным категориям.

Как это работает? Используются точно те же технологии, что и в предыдущем случае. Точность работы системы составляет около 90%.

image

Построение диалогов

И теперь приступаем к самому интересному — принципу построения диалогов.

Зачем это нужно? Для того, чтобы грамотно заменять человека, робот должен уметь работать как по линейному, так и по нелинейному сценариям ведения диалога. В первом случае это может быть опросник, во втором — работа с абонентами колл-центра, линии техподдержки компании и т.п.

А как это работает? Мы используем NLU Engine, основа которого — семантический разбор полученного от ASR-систем текста. Далее из него выделяются такие объекты распознавания, как entities (сущности) и intents (намерения), которые применяются в логике построения conversational flow.

Вот пример работы технологии.

Текст полученный от системы распознавания речи (ASR):
«Мне в целом интересно ваше предложение, но хотелось бы подешевле. И я сейчас немного занят, вы могли бы мне перезвонить завтра часиков в шесть».

Объекты, заполненные NLU Engine:

Intents:
confirmation=true
objection=expensive
question=null
callback=true
wrong_time=true

Entities:
date= 02.01.2019 (предположим, что дата звонка 01.01.2019)
time=18:00
amount=6

Принцип заполнения объектов в данном примере:

Intents (намерения):

  • Текст «мне интересно ваше предложение» был переведен в intent «confirmation» с значением «true».
  • Текст «хотелось бы подешевле» был переведен в intent «objection» с значением «expensive».
  • Текст «я сейчас немного занят» был переведен в intent «wrong_time» с значением «true».
  • Текст «могли бы мне перезвонить» был переведен в intent «call_back» с значением «true».
  • Абонент не задал ни одного вопроса, поэтому intent «question» имеет значение null
  • Текст «завтра» был автоматически переведен в entity «date» с значением «02.01.2019», используя формулу current_date + 1 (предположим, что дата звонка 01.01.2019).
  • Текст «часиков в шесть» был переведен в entity «time» с значением «18:00»,
  • Текст «шесть» был переведен в entity «amount» с значением «6», которое в данной логике может игнорироваться, так как есть entities с более высоким приоритетом.

Теперь поговорим об алгоритмах работы, которые поддерживаются системой NLU Engine. Она включает два уровня.

Первый уровень — работает на относительно небольшой выборке данных порядка 600-1000 записей. Здесь используются ML-алгоритмы. Точность распознавания: 90-95%.

Второй уровень — переход на него осуществляется после запуска проекта и накопления большой выборки данных, включающей более 1 млн записей. Здесь уже используются DL-алгоритмы. Точность распознавания: 95-98%.

Решение работает с двумя подсистемами:

  • подсистема категоризации и классификации текстовых данных,
  • подсистема формирования диалога.

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

Для первой линии поддержки подходит нелинейный сценарий — робот не знает, кто звонит, по поводу какого именно продукта и с какими вопросами. Здесь от ответа клиента зависит дальнейшее построение диалога.

А вот для исходящего обзвона наилучшим решением будет линейный сценарий. Его пример был подан в самом начале статьи. Еще один вариант линейного сценария — проведение опроса, когда неважно, что именно ответит клиент, это будет анализироваться в дальнейшем специалистами. Зато важно провести клиента через все вопросы, которые есть в списке.

Как итог, хочется подчеркнуть, что голосовые роботы не заменят людей. Сейчас они отлично справляются с рутинной работой — обзвоном людей с целью задать им какие-то вопросы и выслушать/записать/проанализировать ответы. Таким образом, операторы колл-центров и техподдержки избавлены от необходимости проводить одни и те же рутинные процедуры. Вместо этого они могут сосредоточиться на решении действительно интересных вопросов и задач.

Искусственный интеллект

Новая разработка - бот Duplex - синтезирует человеческую речь так качественно, что на слух никаких машинных интонаций уловить невозможно.

Все, кому позвонит бот, будут предупреждены, что с ними разговаривает компьютер, заявили представители компании информационному изданию Verge.

Способности бота Duplex имитировать голос человека были продемонстрированы на этой неделе на организованной Google конференции разработчиков. Бот позвонил в парикмахерскую, чтобы зарезервировать время стрижки.

Как минимум одна из экспертов сказала, что была "в ужасе" от увиденного.

Социальные последствия

В заявлении Google говорится, что компания оценила все аргументы, выдвинутые при обсуждении новой разработки, и понимает важность честного и прозрачного использования новых технологий.

"В эту программу будет встроена функция полной гласности с тем, чтобы эту систему можно было идентифицировать", - говорится в документе.

Автор фото, Google

Бот демонстрировал свои способности прямо со сцены

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

Голос контролировала программа DeepMind WaveNet компании Google, Программа научилась звучать по-человечески, выслушав множество разговоров между людьми, для того, чтобы понять как именно им подражать.

Google заявляет, что программа направлена на то, чтобы поддерживать "естественный" разговор в реальном мире через смартфон пользователя.

В заявлении Google сказано, что компания ценит полученные комментарии и критику и что все замечания будут учтены до запуска окончательной версии этой программы.

Демонстрация голосовых способностей Duplex испугала профессора университета Северной Каролины Зейнеп Тюфекчи, которая изучает взаимное влияние новых технологий и общества. Она назвала программу пугающей и охарактеризовала ее как "очевидное зло".

Несколько позднее она написала в "Твиттере", что это прямой, сознательный обман пользователей.

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

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

Читайте также: