Как собрать аудиторию по фотографиям пользователей «ВКонтакте» с помощью нейросети

В России по разным оценкам у 11-14% людей есть проблемы со зрением. Для бизнеса очкарики — масштабный и привлекательный рынок, а для рекламщиков — ад. Эту аудиторию трудно достать стандартными инструментами таргетинга. Главный таргетолог компании «Ашманов и партнёры» Артём Седов рассказал, как они с коллегами нашли 263 тысячи москвичей в очках во «ВКонтакте».

Тестируем нейросеть с коллегами из «Ашманов и партнёры»

Почему рекламодателям трудно найти очкариков

У меня с детства слабое зрение и мне ни разу не попадалась реклама очков или линз в интернете. Захотелось разобраться, почему рекламодателям трудно найти таких, как я — очкариков, и продать нам что-нибудь полезное.

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

Опрашивают пользователей

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

Парсят сообщества

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

Таргетируются на авторизованных через «ВКонтакте»

Во «ВКонтакте» есть таргетинг на пользователей, которые авторизовались на сайтах (например, клиник) через приложение соцсети.

Строят гипотезы

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

В итоге

У озвученных выше подходов есть недостатки. Либо рекламные деньги тратятся на необоснованно широкий охват. Либо таргетологу приходится вручную собирать аудиторию, но тогда охват получается очень узким — несколько десятков тысяч человек.

Как мы нашли 263 тысячи москвичей в очках

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

Мы давно знакомы со Стасом Ашмановым. Стас — программист, специалист по нейронным сетям. Пару лет назад он начал искать продуктовое решение на базе технологий своей компании «Нейросети Ашманова». А мне нужен был парсер, чтобы работать со сложными данными. На том мы и сошлись: сделали парсер на базе нейросети и назвали его Puzzle.

Расскажу коротко, как он устроен.

Мы создали базу фото для нейронной сети, определяющей лица

  • Выгрузили фотографии людей из общедоступных источников: «ВКонтакте», Instagram, «Яндекс», Google — с помощью скриптов, написанных на Python.
  • Почистили выборку в ручном режиме, если в неё попало что-то кроме изображений людей.

Настроили детектор лиц

  • Можно использовать любой готовый детектор лиц. Например, обученный HOG-каскад из dlib для детекции лиц с возможностью запускать нейронную сеть на GPU (для ускорения).
  • На вход даём базу фото людей — на выходе получаем фотографии лиц, вырезанные из исходных фотографий.

Разметили лица с очками и без

  • Поделили лица на две категории: c очками помечаем 1; без очков — 0.
  • Для изображений с большим количеством деталей может потребоваться дополнительная разметка. Например, наша утилита Marker помогает размечать очки с помощью прямоугольников, и в результате сеть узнаёт очки на фото точнее. На выходе получаем набор размеченных фотографий с очками и файл с координатами разметки очков, который удобно использовать для дальнейшего обучения нейросети. В данной задаче этого не потребовалось: сеть отлично справляется с классификацией целых изображений лица с очками и без.

Настроили детектор очков

  • Основная модель — нейронная сеть Resnet-50. Архитектура сети модифицирована и портирована на нейросетевую библиотеку PuzzleLib.
  • На вход подаётся выборка лиц в очках и без. На выходе получаем вероятность от 0 до 1. 1 — человек в очках, 0 — не в очках.
  • Сопоставили людей из соцсетей с выходными данными сети — определили, носит человек очки или нет (порог от 0 до 1 можно выбирать по вкусу – у нас хорошо подошло значение 0,5).

В итоге

За 20 дней работы сервера мы сформировали выборку аудитории из Москвы, которая в очках для зрения на фото «ВКонтакте».

Москвичи в очках — кто эти люди

Во «ВКонтакте» 26,7 млн пользователей из Москвы и области (по данным рекламного кабинета «ВКонтакте»). Мы выяснили, что как минимум 1% из них носит очки для зрения.

Распределение пользователей в очках по половозрастным сегментам (мужчин — 55,89%, женщин — 44,11%)
Доля пользователей в очках среди общего количества пользователей в каждом сегменте
Появление пользователей в сети

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

Популярные сообщества среди людей со слабым зрением из Москвы

Найти людей с бородой, будущих мам и экстремалов

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

0
69 комментариев
Написать комментарий...
Prolis Labkk

Ну что же, кто-то должен был начать:
Статья 9. Согласие субъекта персональных данных на обработку своих персональных данных
Статья 10. Специальные категории персональных данных
Статья 11. Биометрические персональные данные

Ответить
Развернуть ветку
Игорь Ашманов

А как, кстати, очки на лице относятся к "биометрическим данным"?

Ответить
Развернуть ветку
Prolis Labkk

Ну вы же такой умненький-благоразумненький, куда-то там входите, откуда-то выходите. Ну ознакомьтесь, что включает понятие, изложенное в ст. 11. Биометрические персональные данные. Это не про очки.

Ответить
Развернуть ветку
Игорь Ашманов

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

А вот ваше высказывание про то, что я умненький-благоразумненький - имеет прямое отношение к ПД.
Это мои ПД, а также моя биометрия.
Я требую, немедленно прекратите использовать мои ПД, не знаю, как уж вы их вычислили.

Ответить
Развернуть ветку
Prolis Labkk

И тут вы ошибаетесь. Очки, субъективное мнение - это не ПД. А вот имя и профиль вконтакте - это ПД, ношение очков из-за проблем со зрением - специальная категория ПД, а фотография - его биометрические ПД. Запомните пожалуйста, третий раз не буду повторять.

Ответить
Развернуть ветку
Игорь Ашманов
А вот имя и профиль вконтакте - это ПД

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

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

Там полно однофамильцев, виртуалов, анонимов, ников, ботов и т.п.

Все, кто говорят про "согласие", "удаление", "биометрию", "ПДн" и т.п. - как-то легко, вальсируя, как фея, перелетают этот разрыв от аккаунта к гражданину, как бы не замечая его.

Ответить
Развернуть ветку
Prolis Labkk

За своими разрывами смотрите, а не на аккаунты соцсетей. Если что-то указывает на конкретное физлицо - это ПД, так в законе и определяется. Если в соцсети есть ссылка хоть на одного Иванова Ивана из 5 школы города Н. - всё, это ПД. А ники там, или хвосты собачьи, это не имеет отношения.
.

Ответить
Развернуть ветку
Игорь Ашманов

Ну то есть сказать вам по сути нечего.
Если одно и то же выкрикивать несколько раз, оно же от этого не станет вернее или гуще.

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