Голосовой помощник своими руками
С появлением Siri на iPhone, нововведение так удивляло, что хотелось пользоваться им по любому пустяку. Сегодня же такой голосовой помощник можно создать самому. Илья Овчинников работает в компании Dasha — Artificial Intelligence, сокращенно — Dasha.AI, разрабатывающей платформу для создания собственного ассистента. Цель — максимально упростить создание голосовых помощников. Все, что требуется, — владение базовыми навыками программирования без знаний о машинном обучении.
Как создается диалоговая система
— Илья, расскажи, пожалуйста, чем занимается компания Dasha.AI?
— Dasha.AI — это платформа, которая позволяет людям с минимальными знаниями программирования создавать голосовые помощники для своих платформ. С ее помощью можно разработать любой ассистент: чат-бот, call-центр или интеграцию в мобильное приложение. Мы даем возможность автоматически анализировать диалоговую систему и улучшать ее.
— Каким направлением ты занимаешься в компании?
— Я — тимлид ML-команды. ML — это машинное обучение, machine learning. Занимаюсь пониманием языка в различных его вариациях.
Илья Овчинников. Фото предоставлено собеседником.
— Почему в названии компании фигурирует термин Artificial Intelligence — AI?
— Наша компания позиционирует себя как «искусственный интеллект для бизнеса». Но вообще у такой машины должны формироваться суждения о мире на основе опыта самостоятельно, без заданных правил. Вряд ли кто-то может сказать, как это сделать. Я, если честно, в него не верю. А имитировать — это хорошо, это можно.
— Что же такое диалоговая система?
— Это приложение, которое может общаться с человеком естественным языком, на котором мы с тобой говорим.
— Как у нее это получается?
— Сейчас объясню. Диалоговая система состоит из нескольких основных компонентов, которые аналогичны работе человеческого мозга.
- Первое. Мы слышим голос, распознаем его и переводим в нейронные сигналы, которые задают последующие действия. Машина же распознает голос и переводит в текст.
- Второе. На этом уровне она понимает, какой смысл вложил человек в сообщение и какие данные в сообщении указываются: адреса, телефоны, числа, а также эмоции.
- Третье. Эти данные передаются в диалоговый менеджер, в нем принимаются решения, исходя из полученной информации, а после генерируется ответ — пока что в виде текста.
- И последнее. Система под названием «синтез речи» переводит текст в голос и воспроизводит его.
— Как голосовой помощник обрабатывает информацию?
— Голосовой помощник функционирует благодаря нейронным сетям. А нейронная сеть — это матрица чисел, которая имеет определенное значение и представляет собой закодированную информацию. Для того, чтобы эти операции выполнялись, мы обучаем нейронную сеть на неких данных.
— Можно на примере?
— Представим, что задача нейронной сети определить, кто изображен на картинке: кошка или собака. Мы загружаем в нее много картинок, на которых изображены питомцы. На вход подается картинка, которая представляется для нейронной сети как набор чисел. Система запрограммирована так, что кошка описывается цифрой один, собака — ноль. Она вычисляет из этих чисел какое-то одно, которое ближе к кошечке или собачке, и выдает его.
— Но система может ошибаться и вместо кошки написать, что перед нами собака?
— Да, это называется ошибка соответствия. Нам нужно сделать ее вероятность как можно меньше, поэтому мы изменяем вручную параметры системы.
— Вы работаете со сверточной нейронной сетью. Почему она так называется, сеть что-то сворачивает?
— Да, она захватывает информацию и уменьшает ее в размерности. Из девяти чисел получаем одно, например, ноль или один. Это очень грубо говоря.
— Какие бывают еще сети?
— Да всякие, зоопарк целый. Для распознания речи одна нейросеть, для генерации текста — другая, а для синтеза речи — третья. Но нужно понимать, что машина все равно не сможет понять все, что вы ей скажете, потому что есть определенные ограничения нейронной сети. Во-первых, это черный ящик, у которого нет мышления. Во-вторых, чтобы все это сделать, нужна нереально огромная нейросеть. Вы слышали о GPT? Эта нейросеть с миллиардами параметров, весит она много и работает очень долго.
Как обработать эмоции
— Ты сказал, что система может распознавать эмоции. Как она это делает?
— Есть классификатор эмоций, который может, ориентируясь на голос или текст, распознать, что за эмоция содержится в послании. Например, негативно или позитивно была сказана фраза.
— На что ориентируется машина, чтобы не допустить ошибку?
— Тут все зависит от того, как интерпретирует эмоции сам разработчик. Обучение нейронной сети требует объяснения, что такое хорошо, что такое плохо. Это понимание вкладывается разработчиком вместе с данными, на которых обучается нейронная сеть.
— Есть ли в команде разработчиков психологи для работы с интерпретацией эмоций?
— Это же вопрос подхода. Если объединишься с психологом, то даже лучше будет. Я еще не сталкивался с этим, но почему бы нет?
— Я правильно понимаю, что для получения данных нужна живая речь человека?
— Да, один из самых популярных способов сбора датасета для диалоговых систем такой: мы берем двух людей, сажаем их за компьютеры, и они общаются между собой. При этом они либо знают, что собеседник человек, либо одному из них говорят, что второй — это робот, а второму говорят вести себя как робот. Этот способ называется «Волшебник страны Оз». И по сути других способов нет, все эти данные генерируют люди в том или ином виде при помощи реального диалога.
— Почему людям важно во время общения с роботом представлять, что они говорят с человеком?
— Это простая эмпатия. Мы испытываем чувства и хотим быть понятыми. А когда мы общаемся с роботом, то возникает ощущение стены между нами.
Кадр из фильма «Она». Источник: Кинопоиск
Зачем нам ассистент
— Есть ли конкуренты у вашей компании?
— Мы ориентируемся на рынок США, потому что он более платежеспособен. Глобально по миру есть три самые популярные системы для создания диалоговых систем: это Google Dialogflow, Rasa и Amazon Lex. В России тоже есть несколько компаний, которые этим занимаются. Например, «Сбер» или Just AI. Но насколько я понимаю, они больше нацелены на российский рынок, поэтому не совсем корректно сравнивать нас с ними.
— То есть это сейчас очень популярно и востребовано?
— По нашим оценкам, рынок диалоговых систем через десять лет может стать самым крупным рынком и переплюнуть рекламу, или, во всяком случае, сравняться.
— Получается, государству придется вводить какие-то новые законы для ограничения безумных идей?
— В США уже есть закон, по которому голосовой помощник обязан уведомить, что он робот, перед диалогом с человеком. Представьте, как смогут размахнуться мошенники, которые создадут себе автоматического голосового помощника. Грубо говоря, уже сейчас можно создать робота, который будет звонить и просить номер вашей карты, и вы не отличите его от человека. Теперь, конечно, надеюсь, мошенники не прочитают этот текст.
— Тебе не кажется, что возможность самому создавать голосовых помощников повлечет за собой появление однообразного продукта, так как без специального образования у разработчиков всегда будет определенный потолок возможностей?
— Резонно. Но, скорее всего, люди будут разрабатывать приложения того уровня, которые им нужны или отдавать на аутсорсинг. Как правило, если мы говорим о действительно сложных диалоговых системах, тут не ограничивается все одним разработчиком. Есть специальные люди, которые занимаются течением диалога, его сценарием и т. д.
Что будет дальше
— Каким будет рынок через пять лет?
— Начнется более масштабный прорыв, так как технологии станут более доступными. Надеюсь, человечество до этого доживет. Предполагаю, что лет через десять создать голосового помощника будет совсем несложно. Возможно это повлечет за собой изменения на рынке труда и в экономическом положении разных стран.
— Что бы ты сказал людям, которые думают, что искусственный интеллект захватит мир?
— Все это байки. Их начал рассказывать в своих рассказах фантаст Айзек Азимов, а потом подхватил Джеймс Кэмерон в «Терминаторе», и дальше мы знаем. Поп-культура сформировала мифы, а люди поверили. Бояться нужно не насильственного захвата искусственным интеллектом, а своей глупости. Очевидно, что новые алгоритмы уничтожат множество профессий в ближайшие 5–10 лет. Нужно осознавать и то, что последствия для экономики пока непредсказуемы. Может случиться что угодно, начиная от безработицы и заканчивая кризисом, если это игнорировать, не планировать и не контролировать.
— Мне кажется, это согласуется с идеей об элите, которая будет знать, как работать с машинами. А те, кто не знают, будут в рабстве у первых?
— Дело не в этом. Рано или поздно все равно появятся новые профессии, нужно просто быть готовыми к этому. Фермеров заменили на машины и трактора, автоматическую систему полива, но никто не говорит «работы у нас нет». Все чем-то занимаются. Старые профессии умирают, а новые появляются, так происходит сотни лет. Возможно, кто-то попадет под раздачу, но это повод задуматься об этом заранее.
— Ты смотришь фильмы об искусственном интеллекте, главная идея которых — «мы все умрем»?
— Да, мне прикольно. Я смотрю с удовольствием, иногда смешно наблюдать за тем, что происходит.
Текст: Дарья БОГОЛЮБОВА, София НОГА
Фото на обложке: Unsplash
