23 грудня 2016

Роботы по дому: Марк Цукерберг о том, как создал у себя искусственный интеллект

Основатель и генеральный директор Facebook ежегодно ставит себе цель на ближайшие 12 месяцев. В 2015, к примеру, он занимался изучением северокитайского языка, каждый день знакомился с новым человеком и читал по две книги в месяц. В 2016 Марк решил использовать дома искусственный интеллект. Platfor.ma пересказывает его впечатления о том, как это было.

 

 

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

 

В итоге на создание подобного умного электронного помощника ушло около 100 часов. Джарвис написан на языках Python, PHP и Objective С. Зато теперь новоиспеченный дворецкий управляет светом, камерами и другими устройствами в доме, а также открывает двери и готовит тосты. И еще одна важнейшая функция – по первому же требованию Джарвис швыряет мне чистые футболки.

 

Разумеется, дворецкому нужен был голос. Озвучить его предлагал, например, Роберт Дауни-младший, сыгравший главную роль в том же «Железном человеке». Но в итоге голосом дворецкого стал Морган Фриман.

 

 

Давать команды системе можно с помощью голосового приложения для iPhone, камеры наблюдения или бота для Facebook Messenger. То есть Джарвис воспринимает команды как устно, так и письменно. Благодаря этому у владельца есть доступ к системе вне зависимости от того, где он находится. Кстати, чтобы управлять помощником с помощью голоса пришлось создать отдельное приложение. Оно постоянно прослушивает и анализирует все, что происходит вокруг, и определяет, когда обращаются именно к дворецкому.

 

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

 

Во время создания интеллекта были и казусы. Устройства в моем доме используют разные интерфейсы. Единых API и стандартов работы для всех «умных» устройств просто нет. Поэтому мне пришлось применять методы обратной разработки – реверс-инжиниринга. Так стало возможным манипулирование всеми устройствами с помощью единого центра.

 

Есть множество проблем, с которыми приходится сталкиваться домашнему помощнику, — например, распознавание движений на видео. Спит дочь в кроватке или уже проснулась? Лежит на полу собака или ковер? Кто стоит за дверью? Решением стало создание сервера, который постоянно проверяет изображения на камерах.

 

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

 

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

 

 

Джарвиса я представлю публике в сентябре следующего года. Сегодня приложение разработано для iOS, в ближайших планах — создание версии для Android и подключение новых устройств в доме. Планирую также поработать над алгоритмами обучения. В долгосрочной перспективе — понять, как систему можно было бы применять и в других домах. Задачи на 2017 год я озвучу чуть позже.

 

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