Как собрать аудиторию по фотографиям пользователей «ВКонтакте» с помощью нейросети
В России по разным оценкам у 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% из них носит очки для зрения.
Найти людей с бородой, будущих мам и экстремалов
Поиск людей с плохим зрением — первое, что пришло в голову, чтобы протестировать нейросеть в поиске аудитории. На этой базе мы хотим отладить работу Puzzle, чтобы протестировать создание других сложных аудиторий: людей с бородой или усами, будущих мам, тусовщиков, спортсменов.
Ну что же, кто-то должен был начать:
Статья 9. Согласие субъекта персональных данных на обработку своих персональных данных
Статья 10. Специальные категории персональных данных
Статья 11. Биометрические персональные данные
Комментарий недоступен
Комментарий удален модератором
Роскомнадзор - не закон. Пользовательское соглашение ВКонтакте - не только не закон, оно прямо незаконно, а кроме того, ВК его сам нарушает, продавая данные.
Пользователь разместил свои данные, сделав их общедоступными. Никакие "соглашения" с площадкой, которая НЕ владеет этими данными, а только хостит их, не могут заставить остальной мир "развидеть" эти данные. Они уже сделаны доступными неопределённому кругу лиц.
Это детсадовская риторика уровня "они (пользователи и ВК) первые начали". У вас нет согласия чужих пользователей, вы собираете данные о медицинских дефектах людей и обрабатываете их фоточки без согласия в письменной форме.
Гусей вы там не потрахиваете при этом?
По такой логике мне запрещено заходить к вам на страницу, потому что я могу запомнить то, что вы, гипотетически, в очках и читаете определенные паблики, а потом использовать эту информацию в формировании рекламной кампании. Все, что делают алгоритмы, так это просто масштабированная деятельность человека.
Никто ведь не мешает вам вручную просмотреть все аккаунты москвичей и посчитать сколько там людей в очках - будет ли это нарушением федерального закона?
Есть закон о ПД, где всё сказано. Алгоритмы обрабатывают ПД, не имея разрешения от владельца ПД, поэтому незаконны. Если вы зайдете ко мне в профиль и запишите оттуда моё имя, адрес или телефон - на какой-то носитель без моего разрешения - это хранение ПД и тоже будет незаконно.
А если я его запомню, считается ли это незаконным хранением?
Комментарий удален модератором