Наш пост – это возможность узнать об исследованиях в новом подразделении Samsung Research – Центре Искусственного интеллекта (ИИ) в Москве. Он открылся в мае 2018 года и за полтора года собрал лучших профессионалов в области машинного обучения.

Ниже мини-интервью сотрудников центра – докладчиков ежегодного Форума по искусственному интеллекту, который прошел в Центре в декабре прошлого года. Мы взяли интервью у коллег из двух лабораторий: лаборатории компьютерного зрения и визуального моделирования и лаборатории анализа мультимодальных данных.



О Центре ИИ Samsung


Samsung инвестирует в научно-исследовательскую работу ~ 8% годовой выручки от продаж – это один из лидирующих показателей в мире. Компания обладает самым большим портфелем активных патентов в США и подала заявки на большую часть самых «горячих» технологий в Европе. В ближайшие три года Samsung инвестирует 22 миллиарда долларов в развитие 5G и технологий в сфере искусственного интеллекта.

Samsung Research, научно-исследовательское подразделение Samsung Electronics, объединяет 21 исследовательский центр по всему миру:


Подразделения Samsung Research на карте мира (с сайта https://research.samsung.com/)

Среди них 7 – это центры, специализирующиеся только на ИИ. Московский центр ИИ был открыт 29 мая 2018 года, остальные шесть находятся в Сеуле, Монреале, Торонто, Нью-Йорке, Кембридже и Маунтин-Вью. 

Основная область исследований в московском Центре ИИ Samsung – это машинное обучение — подход, который успешно применяется в распознавании речи, компьютерном зрении и анализе данных. Директор Центра — Виктор Лемпицкий, к.ф.-м.н., доцент Сколковского института науки и технологий, самый цитируемый ученый России в своей предметной категории в 2018 году, лауреат премии Scopus Award Russia в 2018 году за вклад в развитие отрасли.

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


Лекция Михаила Романова (Senior Engineer, Visual Understanding Lab) для студентов Samsung AI Bootcamp 2018 в переговорной комнате «Matrix»

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


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

В Центре ИИ есть зоны спорта и отдыха, где можно поиграть в настольный теннис в специальной комнате со звукопоглощением, позаниматься йогой и фитнесом, принять душ и переодеться. И даже есть несколько капсул для непродолжительного сна!



Каждый год в московском Центре ИИ проходит Samsung AI Forum. Целью Форума Искусственного Интеллекта является общение и взаимодействие выдающихся ученых России и зарубежья. На площадке мероприятия они могут поделиться своими знаниями и опытом, предложить идеи для решения наиболее актуальных задач в области ИИ. В декабре прошлого года в рамках второго ежегодного Форума были представлены результаты исследований московских коллег, которые в дальнейшем могут быть использованы для создания полноценных сервисов на базе технологий ИИ, а также при разработке приложений и компонентов для продуктов компании. 



Лаборатория компьютерного зрения и визуального моделирования


Руководитель лаборатории  — Антон Конушин, к.ф.-м.н., доцент ФКН ВШЭ и ВМК МГУ, где также является руководителем совместной лаборатории Samsung и МГУ.

В лаборатории компьютерного зрения и визуального моделирования также работают Михаил Романов и Игорь Слинько, авторы курса «Нейронные сети и компьютерное зрение». Это первый бесплатный массовый онлайн-курс Samsung Research, запущенный в  России в 2019 году, и ребята – наши первопроходцы. Курс рассказывает о применении нейросетей в анализе изображений с азов, не требует специализированных знаний, нужны только базовые знания в области высшей математики и матстатистики и готовность программировать на Python. Курс насчитывает уже 24 000 записавшихся. И киллер-фича: перспектива трудоустройства – уже несколько человек стали сотрудниками Центра по итогам собеседований.

Данила Рухович


25 лет, закончил мехмат МГУ, учится в аспирантуре по специальности «Теоретические основы информатики». Работал в IBM Research, Angry Developers, SMTDP Tech. На Samsung AI Forum Данила Рухович и Данил Галеев представили доклад «MixMatch Domain Adaptaion: Prize-Winning Solution for Both Tracks of VisDA 2019 Challenge» (исходный код).

У нас в лаборатории две большие группы: первая занимается Depth Estimation (измерением глубины изображения), вторая SLAM (методом одновременной локализации и построения карты). И есть небольшие команды с разными задачами, например, мы с моим коллегой Данилом Галеевым раньше занимались GAN (генеративно-состязательными сетями), а теперь доменной адаптацией.

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

Понятно, что если мы обучим нейросеть на синтетических данных и просто перенесем ее на реальные данные, то она будет работать не очень хорошо. Как уменьшить эту разницу? Можно сгенерировать, а затем использовать много размеченных синтетических данных, на них обучать нейросеть. И затем использовать много неразмеченных реальных данных (т.е. ресурсы были потрачены, но только на сбор данных, а не на их разметку). И таким образом, совмещая размеченные и неразмеченные данные, мы добиваемся существенного увеличения точности нейросетевых моделей.


Примеры различных доменов в датасете DomainNet: клипарт, инфографика, живопись, набросок, фото, графика. Объект одинаковый, а домены разные.

Константин Софиюк


25 лет, закончил ВМК МГУ. Увлекается бегом, сноубордингом и компьютерным зрением. 
Константин выступал на Samsung AI Forum с докладом «AdaptIS: Adaptive Instance Selection Network».


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

На мой взгляд, у искусственного интеллекта два пути развития: он будет либо «сильным» и  получится что-то вроде «святого Грааля». Появление «сильного» ИИ поменяет в нашей жизни всё; мне сложно спрогнозировать, что будет происходить. Либо, можно будет говорить о «слабом» ИИ, тогда робототехника, наверное, это самое интересное направление. Беспилотный автомобиль относится к этому же направлению, потому что это по сути дорожный робот. Замена водителей на роботов поднимает вопрос: какие социальные последствия это принесет? Мы все живем в обществе, и технологии могут повлечь глобальные общественные изменения. Я рефлексирую на эту тему. 

Одна из моих последних статей посвящена теме Instance Segmentation – поиск и выделение на изображении всех нужных нам объектов. Мы выделяем их с помощью попиксельной маски, то есть в каждой точке указано, принадлежит этот пиксель объекту или нет. Это хорошо вписывается в концепцию Visual Scene Understanding (распознавания визуальных сцен), потому что первый этап понимания изображения — это понимание того, какие объекты на нем присутствуют. Есть алгоритмы Object Detection (распознавания объектов), которые решают эту задачу, но там каждый объект выделяется прямоугольником, и объекты сильно перекрываются: это дает слишком простое, слишком грубое приближение того, где находится объект. Если посмотреть, как выглядят обычные indoor-сцены (не говорю про идеальные дизайнерские помещения, где убрано и аккуратно), реальные квартиры —в них будет так: диван, на нем валяются подушки, еще какие-нибудь вещи. 

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

Сейчас мы занимаемся темой интерактивной сегментации, и это тоже очень важная задача. Возвращаясь к предыдущей задаче: чтобы обучать Instance Segmentation, нужна качественная попиксельная разметка всех объектов на картинках, и это дорогая штука, потому что банально сидеть и выделять в Photoshop контур каждого объекта вручную очень долго. А интерактивная сегментация позволяет автоматизировать эту разметку. Мы размечаем каждый объект не путем выделения полигона этого объекта, а просто человек кликает на объект – делает так называемый позитивный клик. Объект либо выделяется с первого клика, либо, если не получилось (например, какие-то части объекта были пропущены, или, наоборот, попало что-то лишнее), мы ставим отрицательный клик. 

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


Маска, которую выводит алгоритм, если выбрать точку объекта

Лаборатория анализа мультимодальных данных


Руководитель лаборатории — Сергей Николенко, к.ф.-м.н., старший научный сотрудник Санкт-Петербургского отделения Математического института имени В. А. Стеклова (ПОМИ РАН), доцент НИУ ВШЭ в Санкт-Петербурге, cоавтор книги «Глубокое обучение. Погружение в мир нейронных сетей».

Глеб Стеркин


Глебу 25 лет, он закончил физический факультет МГУ. Инженер и руководитель проекта в лаборатории анализа мультимодальных данных.  «Хобби и увлечений нет, населен роботами».
На Samsung AI Forum Глеб выступал с докладом «High-Resolution Daytime Translation Without Domain Labels»


Моя лаборатория занимается генеративными моделями, вычислительной фотографией. Есть ряд задач на восстановление трехмерных структур, т.е. когда по нескольким фотоснимкам необходимо воссоздать трехмерную форму непростого объекта. Также это задачи, связанные с получением универсальных представлений для картинок или объектов на картинках. Это все, в общем, крутится вокруг нейронных сетей. С прикладной точки зрения, впечатляют приложения, где человек взаимодействует с генеративными моделями, начиная от неявных воздействий и заканчивая случаями, где модель выступает как инструмент для человека, например, в синтезе музыки.

В основном я занимаюсь генеративными моделями в сочетании с человеко-машинным взаимодействием. Это интересно! Нечто сложное вроде нейронной сети превращается в инструмент наподобие фотоаппарата, применимый для получения сиюминутного удовольствия или некоторого чувственного опыта: нажал три кнопки, получил что-то прикольное, не сильно задумываясь как это работает, но примерно понимая, что будет в результате, хотя иногда получается и что-то неожиданное.

Наше исследование решает довольно простую, на первый взгляд, задачу. Алгоритм, получив на вход фотографию пейзажа, подает на выход набор фотографий этого же пейзажа в разное время дня. Например, если на входе фотография дневного города, то как бы он выглядел вечером, ночью, утром и в периодах между этими временами дня, чтобы получилось плавное красивое видео? Эта технология работает в высоком разрешении вплоть до 4К.



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

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

Дмитрий Никулин


25 лет. В 2017 закончил кафедру алгебры на матмехе СПбГУ. Стажировался в Google London, где улучшал систему верификации пользователей в Google My Business, после этого стажировался в Yandex Research и работал в компании, специализирующейся на консалтинге и аутсорсинге в области программирования на языке Haskell. Параллельно окончил ШАД, сейчас помогает делать там курс по RL. В Samsung чуть больше года. Изучает языки: помимо английского, немного знаком с французским, испанским и эсперанто.

На Samsung AI Forum Дмитрий представил два доклада: «Free-Lunch Saliency via Attention in Atari Agents» и «Perceptual Gradient Networks».


Основное направление исследований лаборатории анализа мультимодальных данных – это задачи, связанные с генерацией и обработкой изображений, и за последний год мне удалось поработать над двумя проектами в этой тематике. В первой половине года я занимался обучением с подкреплением (Reinforcement Learning, RL) – это одна из технологий машинного обучения, в которой испытуемая система (агент) обучается, взаимодействуя с некоторой средой. Упрощенно говоря, процесс обучения можно представить в виде игры: поощрять действия, ведущие к награде, и избегать ведущих к неудаче.

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


Слева: чёткая картинка, слабый агент. Справа: грубая картинка, сильный агент.

Второй доклад назывался «Perceptual Gradient Networks», он был про оптимизацию perceptual loss – это функция потери, которая используется практически везде, где есть генерация изображений нейросетями. Чтобы пользоваться perceptual loss, разработчики делают сначала по нейросети проход вперед, а потом – назад. Проход назад вычислительно сложен. Мы хотели избавиться от такого двойного прохода и заменить его на другую нейросеть, по которой можно все сделать за один проход вперед, это дает повышение скорости работы и уменьшение требований к памяти. Сейчас мы работаем над улучшением архитектуры этой второй сети, стремимся радикально снизить затраты памяти, не сломав качество. 

Мне интересно все, что касается Reinforcement Learning, потому что это область, наиболее близкая к общему искусственному интеллекту (General AI). Остальные области типа компьютерного зрения, реконструкции позы человека, анализа звука, — более узкоспециализированные. Они, безусловно, более полезны в ближайшей перспективе, их можно уже сейчас брать и встраивать в машины-беспилотники или поиск. Про RL, за немногими исключениями, этого сказать нельзя, но с его помощью решаются задачи, которые не решаются больше вообще никак. Например, люди благодаря этим технологиям научились очень хорошо играть в сложные компьютерные игры, такие как DotA и StarCraft. И вообще, RL — это метод для оптимизации чего угодно, для любых целей, которые вы поставите.

Заключение


Если вы добрались до конца статьи и вам по-прежнему интересно, хотя большинство терминов остались непонятными, то для вас хорошая новость – у Samsung есть бесплатные онлайн-курсы на Stepik, на которые мы вас приглашаем. О них мы писали ранее в блоге (1, 2).

А для тех, кто уже далеко не новичок в том, о чем рассказывали наши коллеги, возможно, будут интересны открытые вакансии Samsung Research. Прямо сейчас есть вакансии Data Scientist (2 человека), Machine Learning Engineer (2 человека), Deep Learning Engineer.