AR-примерочная и оцифровка помещения: над какими проектами с нейросетями работают в Сколтехе

Рассказывают преподаватели и научные сотрудники — о своих проектах и в каких сферах применяют машинное обучение.

Материал подготовлен при поддержке Сколтеха

Вместе со Сколтехом мы провели эксперимент — обучили нейросеть GPT-2 на комментариях с vc.ru, TJournal и DTF. Сейчас в обсуждении под любым материалом можно сгенерировать комментарий в стиле одного из изданий. Подробнее о том, как работает проект и как его создавали, мы рассказывали тут.

Преподаватели и научные сотрудники Сколтеха в свою очередь рассказали, над какими проектами трудится институт, и в каких сферах применяют нейросети. Машинное обучение задействуют, например, в энергетике, производстве, беспроводной связи и так далее. А изучить его можно не только на программе Data Science.

Евгений Бурнаев
доцент, руководитель группы ADASE

Примерка одежды в дополненной реальности

Мы разрабатываем модель нейросети, которая по фото определяет положение человека и его частей тела в трёхмерном пространстве. Например, вы хотите сделать виртуальную примерочную для интернет-магазина — навели на человека камеру, и на его ногах появились новые брюки. Для этого нужно, чтобы устройство понимало, где именно ноги, и как они расположены в 3D-пространстве.

Основная сложность разработки такой нейросети — это то, что мы по двумерной фотографии пытаемся прогнозировать положение в трёхмерном пространстве. Нейросети сложно понять, как на самом деле стоят люди в реальной жизни. Из-за этого, например, если на фото несколько человек, могут происходить окклюзии («наложения») и некоторые части тел одних людей частично заслонены фигурами других людей.

Слева – фото человека. Справа – результат прогноза 3D позы человека: приведены UV-линии для каждой области изображения, соответствующей определенной части тела. UV-координаты или развёртка в трёхмерной графике (англ. UV map) — соответствие между координатами на поверхности трёхмерного объекта (X, Y, Z) и координатами на текстуре (U, V).

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

Автоматический подбор архитектуры нейросети

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

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

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

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

Примеры нестандартных ячеек рекуррентной нейросети для обработки данных естественного языка, найденных в результате поиска архитектур нейросетей. Данные ячейки существенно отличаются от стандартных ячеек, которые определяют ставшие уже классическими рекуррентные архитектуры типа Simple RNN, LSTM и GRU.

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

Исследователи из университетов, зачастую, не обладают значительными вычислительными ресурсами, и уж тем более не могут позволить себе то же, что и Google. К счастью, в Сколтехе есть достаточно мощный суперкомпьютер «Жорес» (Zhores). Благодаря ему мы заранее предпосчитали результаты обучения различных архитектур нейросети на выборках данных, которые используются при решении задач обработки естественного языка. Вдобавок к этому мы реализовали библиотеку, которая позволяет тестировать и сравнивать различные алгоритмы поиска архитектур. За счет того, что заранее были предпосчитаны результаты обучения различных архитектур, тестирование и сравнение методов поиска можно проводить в десятки и сотни раз быстрее.

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

Качественная дополненная реальность и оцифровка помещения

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

Пример карты глубины из выборки данных SUN RGBD.

Вместе с тем, такого рода данные – о расстоянии от камеры до объектов, съемка которых ведется - крайне важны. Например, вы делаете приложение дополненной реальности. И хотите, чтобы при наведении камеры на стол на нем появлялся, скажем, «виртуальный человечек». Для этого нужно с высокой точностью оценивать расстояние от камеры до стола, но сенсоры, как сказано выше, зачастую не могут обеспечить требуемое качество съемки. Другой пример использования – восстановление 3D-поверхности (описания) объекта.

Для решения этой проблемы мы обучаем нейросеть повышать качество карт глубины. Чтобы обучить нейросеть, первым делом нужно собрать большую выборку данных. Вместе с лабораторией робототехники Сколтеха (рук. проф. Д. Тетерюков) мы построили установку для автоматического сбора данных: в установке есть роборука, на которой закреплено около десятка разных сенсоров: лазерные сенсоры с хорошим разрешением глубины, обычные смартфоны, профессиональные фотоаппараты и так далее.

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

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

На рисунке ниже приведен пример восстановления поверхности 3D-объекта по соответствующей карте глубины: слева показан результат восстановления по карте глубины высокого разрешения (измерения проведены высокоточным сенсором), в середине приведен результат восстановления по карте глубины (измерение проведено низкоточных сенсором), разрешение которой было повышено с помощью одного из стандартных методов повышения разрешения, а справа – результат, основанный на применении разработанного нами метода повышения разрешения карт глубины на основе нейросети. Видно, что новый алгоритм на основе нейросети позволяют существенно повысить точность восстановления 3D-описания.

Выше — пример восстановления поверхности 3D-объекта по соответствующей карте глубины: слева показан результат восстановления по карте глубины высокого разрешения, в середине приведен результат восстановления по карте глубины, разрешение которой было повышено с помощью одного из стандартных методов повышения разрешения, а справа – результат, основанный на применении разработанного нами метода повышения разрешения карт глубины на основе нейросетей.

В каких сферах в будущем могут найти применение нейросетям

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

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

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

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

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

Можно ли будет прогнозировать успех стартапа

Да, в некоторых случаях это возможно - если будут выполнены основные условия. Во-первых, наличие датасета. Во-вторых, чётко сформулированный критерий успеха. Есть большая база данных CrunchBase — там много информации и аналитики о компаниях, инвесторах и бизнес-процессах в мире. Думаю, если взять её и привлечь ещё какой-нибудь публичный датасет, можно будет сделать прогноз — как скоро закроется такой-то стартап, получит ли он инвестиции. Такого рода работы уже существуют.

Всё упирается в наличие аккуратно собранных данных.

Пугают ли какие-то технологии в сфере искусственного интеллекта

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

Настанет ли время, когда датасайентистов будет слишком много, как в своё время было с юристами или экономистами

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

Сейчас действительно появилось некоторое количество датасайентистов, которые научились применять уже готовые библиотеки методов без понимания, как же именно устроены инструменты, которые они применяют. Но это «низкоуровневая» работа, которая уже постепенно автоматизируется. Останется спрос на тех, кто может не только применить метод, но и разбирается в нём, и может создать новый.

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

Сергей Николаев
научный сотрудник Лаборатории киберфизических систем

Предсказание поломок на производстве

Мы делаем проект, который предсказывает поломки, аварии и дефекты на газотурбинных электростанциях.

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

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

Проектирование сложных изделий и процессов

Мы делали проект для Fiat Chrysler Automobiles, итальянского производителя машин. У них есть завод, который изготавливает пластиковые детали, например, бамперы и приборные панели. Это сложный процесс, и Fiat Chrysler отлаживает его в виртуальном пространстве с помощью численного моделирования, что тоже требует тяжёлых вычислительных ёмкостей.

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

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

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

Елена Грязина
директор магистратуры «Энергетические системы»

Нейросети в энергетике

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

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

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

Дмитрий Лаконцев
доцент, руководитель центра компетенций НТИ по направлению «Технологии беспроводной связи и интернета вещей»

Нейросети в беспроводной связи

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

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

На треке «Беспроводная связь и интернет вещей» в Сколтехе учат применять машинное обучение в рамках наукоёмких телеком-проектов и IoT-решений.

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

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

Приём заявок идёт до 16 июля. Обучение бесплатное.

0
4 комментария
Кирилл Журавлёв

Все ещё нет комментариев к промо по неироуровине. Но, как показывает практика, в большинстве своем это вовсе не так. Я и сам могу сказать, что многие компании до сих пор работают с нами, просто в силу того, что мы находимся на их стороне.

Ответить
Развернуть ветку
Кирилл Журавлёв

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

Ответить
Развернуть ветку
Denis Volkhonskiy

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

Ответить
Развернуть ветку
Maya Lipkin-Goldberg

прочитав про дизайн бота от Арт Лебедев я понимаю, что его лого и шрифты лучше. Но в данном случае, он не про дизайн, а про то, что ему надо делать. И у него нет выбора.

Ответить
Развернуть ветку
1 комментарий
Раскрывать всегда