Как по фотографиям понять человека
Создан алгоритм, определяющий предпочтения пользователей смартфоновИсследователи из НИУ ВШЭ в Нижнем Новгороде и Санкт-Петербургского отделения Математического института им. В. А. Стеклова РАН разработали новый способ прогнозирования предпочтений пользователей мобильных устройств. В основе работы рекомендательных систем лежат алгоритмы, моделирующие пользовательское поведение, исходя из той информации, которая указана в профиле человека. Традиционные рекомендательные системы используют только структурированные и текстовые данные — новая модель использует фотографии.
Авторы статьи (Савченко А.В. - академический руководитель магистратуры по компьютерному зрению НИУ ВШЭ, Гречихин И.С. - преподаватель магистратуры по компьютерному зрению НИУ ВШЭ, Демочкин К.В ) предложили метод, который позволяет быстро находить объекты, лица и определенные сцены и с высокой точностью распознавать события на фотографиях за счет одновременного анализа визуальных признаков и классификации найденных объектов с помощью нейронных сетей небольшого размера, специально разработанных для мобильных устройств. На обработку одной фотографии в них уходит от 30 до 100 мс.
За распознавание объектов и лиц отвечает детектор объектов, за определение сцен — вторая нейронная сеть-классификатор. В исследовании использовались наборы данных — PEC (Photo Event Collection) и WIDER (Web Image Dataset for Event Recognition). PEC содержит 14 классов сцен (дни рождения, свадьбы, праздники и др.), WIDER — 61 класс (встречи, танцы, пресс-конференции и др.).
Определение сцен позволяет извлечь информацию о предпочтениях человека, таких как искусство и театры, ночная жизнь, спорт. А детектор объектов может распознавать продукты питания, музыкальные инструменты, транспортные средства и другое, а также по лицам людей проводить анализ демографии (возраст, семья) и определять социальное положение. Все найденные на фотографиях лица проходят кластеризацию: алгоритм группирует в отдельные кластеры лицо каждого человека (самого пользователя на селфи, его родных и близких). Затем все фотографии с лицами помечаются как приватные (содержащие персональную информацию о пользователе и его знакомых), а остальные фотографии (в том числе и без лиц) — как потенциально общедоступные.
Таким образом предусматривается защита персональных данных: все приватные фото и видео обрабатываются только на телефоне в автономном режиме. Другие фотографии могут быть отправлены на удаленный сервер для классификации сцен и обнаружения объектов с помощью вычислительно сложных нейронных сетей, которые характеризуются высокой точностью.
Предлагаемое решение реализовано в мобильном приложении для операционной системы Android. Экспериментальные результаты показывают возможность эффективной обработки изображений с улучшением точности на 2–12% по сравнению с аналогами за счет того, что учитываются сцены и объекты одновременно.
Цифровой профиль человека сохраняется в виде гистограммы интересов, на основе которой могут работать рекомендательные системы. Например, ученые уже разработали рекомендательную систему ресторанов. На основании местоположения и информации о предпочтениях в еде система предлагает топ-10 ресторанов, которые соответствуют профилю пользователя и у которых максимальный средний рейтинг.
В будущем алгоритм может использоваться для персонализации сервисов и услуг, а также максимально подходящих под конкретного человека рекомендаций.
Статья опубликована в журнале Pattern Recognition
Андрей Савченко, профессор кафедры информационных систем и технологий факультета информатики, математики и компьютерных наук НИУ ВШЭ в Нижнем Новгороде:
— Зачем вообще нужно определять предпочтения пользователей?
— Предпочтения пользователя нужно определять для любой рекомендательной системы, чтобы рекомендовать ему то, что потенциально понравится, и не рекомендовать то, что не нравится или нерелевантно. Например, детские товары людям без детей. Большинство рекомендательных систем основаны на опыте взаимодействия с пользователем: какие фильмы смотрел или искал, билеты куда покупал и т. п. В противном случае возникает проблема «холодного старта», когда о пользователе ничего неизвестно. В нашей статье мы предположили, что для анализа на мобильном телефоне доступна галерея фотографий, из которых мы и извлекаем предпочтения в области посещения спортивных мероприятий, музеев, конференций, достопримечательностей, ресторанов, а также демографическую информацию — пол / возраст пользователя, информацию о его родственниках / детях.
— Как работает новый алгоритм для определения предпочтений?
— Алгоритм непосредственно на телефоне обрабатывает каждое фото и видео в галерее, и на первом шаге находит все лица. Для найденных лиц осуществляется их группировка (кластеризация), для лиц, представленных на большом числе фотографий, предсказывается пол и возраст, находится лицо пользователя (на большом числе селфи), строятся связи между найденными лицами (супруги, дети, родители, друзья / родственники). Выделяются потенциально «публичные» фото, на которых нет лиц и другой персональной информации (сканы документов и т. п.). Далее все персональные фотографии и видео обрабатываются непосредственно на мобильном устройстве пользователя, а «публичные» фото могут быть отправлены при наличии разрешения пользователя на удаленный вычислительный сервер, на котором происходит обработка более сложными и точными нейросетевыми моделями, которые нельзя запустить на мобильном телефоне. После обработки на сервере фото и видео сразу удаляются.
Обработка обоих видов данных (персональных и публичных), по сути, отличается только вычислительной сложностью применяемых алгоритмов и включает в себя: 1) распознавание типа «сцены» (футбол, хоккей, музей, улица, пляж, ресторан и т. п.— чуть меньше 400 различных категорий); 2) нахождение объектов на фото и видео (различные музыкальные инструменты — гитара, скрипка… спортивный инвентарь — бейсбольная бита, баскетбольный мяч… еда — различные фрукты, овощи, пирожные, бутылки вина и т. п., а также другие предметы, которые потенциально отражают какие-то предпочтения, например, картины — всего около 150 объектов); 3) определение типа «события» (день рождения, выпускной, свадьба, праздники — Рождество, Пасха, Масленица и т. п.— около 80 событий). Для последней задачи ввиду ее сложности применяется специальное представление изображений на основе выделения характерных признаков сцен и представленных объектов. Далее подсчитываются наиболее часто встречающиеся категории для примерно десяти различных групп предпочтений (еда, спорт, «на улице», «в помещении», дети, транспорт и т. п.). Частота встречаемости каждой категории и представляет собой «профиль интересов пользователей». Чуть позже подготовки исходной статьи в журнале Pattern Recognition сделан пример использования для рекомендации ресторанов, при этом в профиле собираются различные виды кухни (итальянская, китайская, японская, фастфуд и т. п.), после чего для заданной локации пользователю предлагается несколько соответствующих кафе / ресторанов с наивысшим рейтингом.
— Чем он отличается от привычных нам «старых» алгоритмов?
— Основная новизна работы — высокоточный, но при этом быстрый алгоритм распознавания сложных «событий» по фотографиям, который использует различные представления входного изображения после распознавания сцен и детектирования объектов. Кроме того, новизну представляет алгоритм разделения фотографий и видео на персональные и потенциально публичные, использование которого позволяет существенно улучшить точность определения некоторых категорий. Наконец, для практики представляет интерес сама реализация, которая в основном доступна всем желающим разработчикам рекомендательных систем и, по неофициальной информации, стала базовой версией в исследовательских продуктах ряда компаний. Стоит отметить, что работа осуществлялась в рамках проекта компании Samsung, при этом исходная статья была отправлена в редакцию в конце 2019 года, поэтому стоит сравнивать именно с системами тех лет.
— Безопасно ли иметь такой цифровой профиль?
— Вопросы безопасности, безусловно, важны. В нашей системе пользователь может полностью запретить пересылку фото и видео на вычислительные серверы, обрабатывать все на самом мобильном устройстве, при этом собранный профиль содержит только агрегированную информацию о пользователе, а не, например, сами «сырые» данные — исходные фото и видео. Профиль пользователя может использоваться рекомендательными системами на самом телефоне, без передачи его в «облако». Наконец, был реализован и прототип системы, который обрабатывает только публичные фотографии, выложенные пользователями в одну из социальных сетей. В статье приведены примеры, в которых собираемые профили для ряда примеров (известные спортсмены, путешественники, художники, повара, балерины, а также сообщества — сети рок-групп, театров и т. п.) показали разумные результаты.
— Есть ли в этой сфере какие-то законы, регулирующие использование этой информации?
— Подробно с законодательством различных стран исследовательская группа незнакома, но можем предположить, что в самом строгом с точки зрения безопасности варианте использования, описанном в п. 4, использованием нашего алгоритма возможно при соблюдении любых разумных законов. Отметим, что некоторые части нашего решения (распознавание пола, возраста и демографии, а также вычислительно эффективный алгоритм распознавания изображений) были запатентованы компанией Samsung в РФ и США, что предполагает интерес в их практической реализации как минимум при учете законодательства на момент работы (2018–2020 годов).