Русский
Русский
English
Статистика
Реклама

Основные направления работы Big Data МегаФона и задачи на графах

Привет, меня зовут Рома Васильев, я Data Scientist в компании МегаФон. Здесь я и решил поделиться здесь своим докладом с Zero Day ICPC.

Слово о компании я опущу, скажу только, что сегодня МегаФон это клиентская база, в которой более 75,2миллионов пользователей, 40 тысяч сотрудников и цифровая экосистема сервисов: МегаФон ТВ, МегаФон Музыка, МегаФон Банк, МегаФон Книги и т. д.

Подходы аналитики больших данных в компании внедряются повсеместно. Пробежимся по основным стримам работы.

  • Customer profile мы выделяем интересы и потребности абонентов и стараемся строить свои продукты на их основе.

  • Development & Retention персонализируем все, что только можно как продукты, которые предлагаем абонентам, так и каналы и способы коммуникации с абонентом для увеличения NPS и LTV.

  • Geo МегаФон обладает большим количеством анонимизированных геоданных, на основе которых можно строить крутые сервисы к примеру, проект footprint, который предсказывает клиентопоток в той или иной локации, чтобы понять, где открыть новый салон ритейла.

  • Retail как я уже и говорил, количество салонов МФ Ритейл постоянно растет, и мы строим различные модели по управлению закупками, ценами, предсказанию спроса и клиентопотока салонов.

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

  • CVM B2X работаем не только напрямую с клиентами, но и генерируем персональные предложения для бизнес-клиентов.

  • Affiliated companies помогаем строить крутые модели для дочерних компаний, основываясь на своем большом опыте.

  • Data services мы, как оператор, никогда данные не продавали и продавать не будем, наш подход разработка дата-сервисов, которые помогают бизнесу решать конкретные задачи в маркетинге, управлении рисками, развитии городской инфраструктуры, развитии туризма в регионе и т.п.

  • Strategy and Marketing выделяем тренды в клиентской базе, помогаем оптимизировать затраты на маркетинг в разных каналах.

  • BigData, Enablers активно развиваем внутреннюю BigData инфраструктуру создаем много различных tool-ов, которые сокращают time-to-market моделей NBA, Real Time Marketing и т.д.

Кроме того, в компании активно развивается R&D направление любой сотрудник может прийти к руководству и предложить попробовать применить принципиально новые подходы в тех или иных направлениях.

Если после обсуждения мы понимаем, что применение этого подхода позволит получить приросты бизнес-метрик, то проект берется в работу. Одной из задач, которая зарождалась в R&D и сейчас полноценно развивается, использование графовой информации в моделях. Задача изначально подавала большие надежды. Мы считали, что добавление графовой информации в имеющиеся модели позволит получить инкременты в их качестве. Забегая вперед, скажу, что так и получилось. Но поговорим теперь о самом графе и решениях, которые мы на нём строили.

Что же такое граф коммуникаций?

Это граф, в котором вершины абоненты, а ребра коммуникации между ними.

Наш граф состоит из 75,2 млн вершин, где каждая имеет в среднем порядка 10 ребер. Он постоянно меняется вместе с тем, как появляются и исчезают связи между людьми. Кроме этого каждый абонент сам по себе может быть описан множеством характеристик, которые также можно использовать. Таким образом, размер и непрерывная эволюция графа накладывают жесткие требования на используемые методы при решении задач.

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

Что же такое эмбединг?

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

Как же строить эмбединги?

Основными проблемами при обработке графов являются их масштабы и изменчивость. К примеру, если попытаться использовать классические модели машинного обучения, то непонятно, как этот граф в модель, собственно, подать. Поэтому для обработки графов очень часто используются специальные Graph Convolution Networks, которые переносят логику сверток из изображений в графы. Метод позволяет строить эмбединги вершин, основываясь в большинстве своем на локальной структуре графа для каждой вершины нужно агрегировать информацию ее соседей перед подачей в модель.

Одним из самых крутых, на наш взгляд, Open Sourse решений в этой области является метод GraphSAGE, который был представлен группой из Cтенфорда в 2017 году. Он порядком расширяет функционал GCN за счет введения новых функций агрегации. На слайде вы можете видеть схему расчета эмбединга для вершины С.

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

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

Еще одним несомненным преимуществом описанного подхода является то, что расчеты можно грамотно переиспользовать. К примеру, если мы уже посчитали эмбединг глубины 2 для вершин A, B и C, то при расчете эмбедингов для вершин D, E и F мы сможем использовать компоненты предыдущих расчетов, что в наших масштабах значительно увеличивает время работы алгоритма.

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

Спасибо за внимание!

Источник: habr.com
К списку статей
Опубликовано: 11.11.2020 18:11:34
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании «мегафон»

Big data

It-компании

Bigdata

Графы

Задачи на графах

Эмбеддинги

Большие данные

Datascience

Категории

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

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru