На лице написано! Российская компания создала лучший в мире алгоритм для распознавания эмоций

profailing

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

У Антонины Грибановой очень богатая мимика. Она высоко поднимает брови, мимолетно хмурится и очень много улыбается. Антонина — пиарщик в московской компании NtechLab, где она работает «с самого начала, когда нас было только пять человек и три сервера».

Компания занимается компьютерными алгоритмами распознавания лиц. В 2015 году она выиграла международное соревнование MegaFace: ее алгоритм FaceN распознал людей на фотографиях с точностью более 73%, обойдя программы гигантов вроде Google. Теперь в компании несколько десятков сотрудников, а в портфолио — общедоступный сервис FindFace для поиска людей Вконтакте по фотографиям и серия коммерческих продуктов — для банков, магазинов, фестивалей электронной музыки и казино.

profailing_

На лице Моны Лизы алгоритм NtechLab видит легкие признаки счастья. Изображение: прототип сервиса для распознавания эмоций на основе алгоритма NtechLab, скриншот

Особые приметы

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

Артем — выпускник факультета вычислительной математики и кибернетики МГУ 2012 года, а весь NtechLab вырос на его алгоритме для распознавания пород собак, который он написал ради развлечения за долгие январские праздники 2015 года. Во время интервью на нем простые синие джинсы и черная рубашка, под ней — черная футболка. Артем терпеливо и внимательно отвечает на вопросы, но часто, как будто смущаясь, смотрит куда-то в сторону.

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

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

Отпечатки лиц

Самый известный продукт NtechLab — сервис FindFace. Для него программисты компании проиндексировали изображения с людьми из Вконтакте и перевели их лица в векторы признаков. Теперь любой пользователь может загрузить фотографию человека — алгоритм оцифрует ее и найдет в своей базе цифровых отпечатков лиц самые близкие изображения.

По замыслу основателя проекта, руководителя рекламного агентства BlackLight Максима Перлина, сервис больше всего подходит для знакомств: «Увидев симпатичную девушку в клубе, вы можете сфотографировать ее на телефон и моментально найти ее профиль ВКонтакте, узнать имя, интересы и отправить ей сообщение». Стартовая страница идеально соответствует этим словам: одна и та же блондинка в белом, красном и черном, кнопка «Найди одинаковых!» и поясняющая подпись: «Инновационный сервис поиска людей по фотографии».

«FindFace — очень хороший демонстратор нашей технологии, он изначально так и задумывался. — у Артема несколько другой взгляд на функции приложения. — Мы когда приходим к заказчикам в то же казино, они говорят: „Да, распознавание лиц — это классно, но мы за 20 лет уже несколько… проектов делали, кучу денег потратили и ничего не заработало — мы не верим, что это работает“. Показываем свой FindFace, они начинают пробовать, и отношение меняется».
Самого Артема, во всяком случае по его фотографии из «Википедии» — рубашка в полоску, зализанные назад волосы, аккуратные очки с прямоугольной оправой — FindFace во Вконтакте не находит. Вместо него в топ-3 выдачи — 22-летний Олег из Севастополя (на фоне моря), 23-летний Дима из Саранпауль (в военном кителе нового образца с аккуратно подшитым белым подворотничком) и 32-летний Александр из Тольятти (тоже с морем, а также в расстегнутой клетчатой рубашке).

Кроме распознавания лиц в NtechLab пробуют решать и другие задачи. После того как алгоритм преобразует изображение в вектор и получает цифровое ДНК лица, с этой информацией можно делать что угодно: искать гены, отвечающие за персональность изображения (создавать второй алгоритм, который будет смотреть, какими значениями отличаются вектора лиц разных людей), возраст человека, его пол и, наконец, эмоции. Конечно, эти признаки, как и положено генам, будут взаимодействовать между собой: одна и та же часть вектора может одновременно отвечать и за возраст, и за эмоции человека, но это даже похоже на жизнь. У нас на лице нет отдельных фрагментов, отвечающих за пол, возраст или особенно встревоженное настроение.

Побеждает спокойный

Американец Пол Экман достаточно известен в мире психологии. Он получал награды от Национального института психического здоровья, включался Американской психологической ассоциацией в список наиболее значимых психологов XX века и даже заслужил место в сотне самых влиятельных людей, по версии журнал Time от 2009 года. Всю свою жизнь Экман исследовал, как эмоции проявляются в движениях и «микровыражениях» нашего лица. В конце 60-х он съездил в Папуа — Новую Гвинею и показал, что мимика местных жителей в общих чертах совпадает с мимикой европейцев, из чего сделал вывод, что язык выражения эмоций универсален для всего мира.

Dr Paul Ekman

Пол Экман

После этого Экман вместе с коллегами разработал первую версию «Системы кодирования лицевых движений», по классификации которой эксперты могли распознать в складках над переносицей, подергиваниях уголков губ и прочих мимических деталях любую эмоцию человека. В 2003 году вышла последняя на данный момент, третья редакция «Системы», и именно она использовалась для разметки изображений на соревновании EmotionNet Challenge университета штата Огайо, прошедшем весной 2017 года.

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

На каждом изображении нужно было сначала опознать одну из семи простых, как их называют организаторы, «базовых» эмоций («счастье», «печаль», «сердитость»), а потом — одну из 50 эмоций составных («сердитость и удивление»). Финальная стадия чемпионата, как и все остальные, проходила заочно: командам присылали изображения, а они отсылали обратно результаты работы алгоритма.

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

Всего в соревновании участвовало 37 команд. У каждой из них было два месяца времени и полная свобода действий: в алгоритмах могла быть любая начинка, а игроки поступали с обучающей выборкой по своему усмотрению (NtechLab вообще игнорировал ее во избежание переобучения. «Конкретно на этой базе… будет работать хорошо, а на всех остальных плохо», — объясняет Кухаренко.). Более того, люди даже могли вручную корректировать результаты алгоритмов и становиться своеобразными редакторами для своих машин.

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

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

С распознаванием эмоций, по-видимому, похожая история. Чисто компьютерный алгоритм москвичей, написанный еще до соревнования, верно считывал базовые эмоции 90% фотографий, а составные — с 60%, что принесло ему победу на чемпионате. Спокойную, рассудочную, почти безэмоциональную.

О дикий старый мир

У нейронных сетей есть слабое место — то самое переобучение. Они очень сильно зависят от начальных выборок, и часто это приводит к неприятным казусам. Так, твиттер-бот Microsoft Tay, обучавшийся на сообщениях других пользователей, меньше чем через сутки после запуска предположил , что в теракте 11 сентября виноваты евреи, а нейросеть FaceApp с автофильтром Hot, «повышающим» привлекательность лица, со временем стала просто высветлять все темнокожие лица, приближая их к стандартам красоты Старого Света.

Похожие проблемы были и у алгоритма FindFace. По словам Артема, год назад, еще до чемпионата EmotionNet, алгоритм работал на «этнических базах» в пять раз хуже, чем на обычных, но разработчики исправили этот недостаток.

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

Безопасность превыше всего

Офис NtechLab вполне стандартный — небольшое здание в центре Москвы сразу на несколько компаний. Стеклянная вертушка, общий холл, лифт. Сотрудники сидят на третьем и девятом этажах, а над входной дверью на третьем этаже висит табличка: «Внимание! В офисе ведется видеонаблюдение».

«Мы думаем над тем, чтобы обрабатывать видеопоток для распознавания сотрудников, но пока руки не дошли, — рассказывает Артем. — В ближайшее время постараемся что-нибудь сделать. А изначально (видеокамеры были) для безопасности».
«Безопасность» — ключевое слово в многочисленных интервью Кухаренко. После того как сервис FindFace стал общедоступным, его часто использовали в несколько странных целях, нарушающих приватность. Одни активисты искали с помощью него профили порноактрис и списывались с их родственниками, чтобы рассказать о необычной профессии девушек, другие скачивали архивы с вуайрестскими съемками из туалетов московских кафе и снова списывались через Вконтакте — уже с самими девушками, чтобы предупредить их о неприятных видео.

Еще был проект YOUR FACE IS BIG DATA петербургского фотографа Егора Цветкова: он фотографировал случайных попутчиков в метро и находил их экстравагантные фотографии в соцсетях. Понурые и отстраненные в публичном пространстве, в частной жизни они преображались: фотографии с кошками, ручными медведями, в глубоких декольте. Конечно, Артему приходилось не раз оговариваться, что их проект — это не начало эры тотальной слежки, а только удобный инструмент для некоторых задач, связанных с безопасностью.

По словам Антонины Грибановой, в этой области у NtechLab уже есть реальные проекты: их алгоритмы распознавания лиц планирует использовать компания Papilon Savunma, поставляющая биометрические продукты для идентификации беженцев турецкому правительству и полиции, также их продукты будут установлены во всех казино Diamond Fortune, строящихся в Приморье. Еще СМИ писали о тестировании возможностей алгоритмов для распознавания лиц на видео с городских камер наблюдения в Москве, но сейчас эти слухи о совместном проекте с правительством Москвы в компании не комментируют.

Зато в NtechLab ждут, что поможет с безопасностью и новая программа для распознавания эмоций. «Кажется, что если человек несет взрывчатку, то у него на лице должны проявляться какие-то особые эмоции… — говорит Артем. — Но пока это только гипотеза, которая требует реального подтверждения. Вариант развития нашей технологии».

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

Торговля — двигатель прогресса

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

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

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

После интервью Антонина Грибанова предлагает испытать программу для распознавания эмоций и фотографирует меня в коридоре их офиса. Там, на фоне бежевой стены, под взглядом камер безопасности, мое лицо расплывается в улыбке. «Счастлив, спокоен, — сообщает алгоритм. — 32 года». В реальности я насторожен — то ли из-за вереницы цифровых следов, тянущихся за мной через весь город, то ли из-за стремительно умнеющих роботов. Но, скорей всего, причины проще: я плохо распознаю чужие эмоции и неважно контролирую собственные. Брови идут вниз, уголки рта опускаются. Тревожно.

Источник фото: tvbesedka.com

  chrdk.ru 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *