Графы, растры и море: как школьники создают будущее геоаналитики
Наша команда
Привет, Хабр! Меня зовут Алексей Пустынников, я руководитель команды геоаналитики в банке ВТБ. Сегодня я хочу рассказать вам об интересном проекте, в котором участники конкурса «Большие Вызовы» решали сложные задачи в сфере геоаналитики и машинного обучения.
Представьте: лето, море, Сочи… А вы старшеклассник, которого внезапно приглашают не просто отдохнуть, а взяться за работу. Причём не за простую работу — вас ждут задачи с графовыми нейросетями, сложными моделями машинного обучения и анализом данных. Добро пожаловать в образовательный центр «Сириус», где отдыхает лишь ваше представление о том, что школьники должны просто зубрить учебники.
Программа «Большие вызовы» — это не просто школьный кружок. Здесь всё по-взрослому: реальные бизнес-задачи, большие данные, командная работа и дедлайны, которые не щадят никого.
В этой статье я расскажу, как школьники справились с этим непростым испытанием и доказали, что молодежь способна удивлять.
Описание проекта
Геоаналитика — важный инструмент для бизнеса. Компании принимают решения, опираясь на данные о локациях. Однако стандартные методы геоанализа не всегда учитывают сложные связи между районами и объекты в их окружении. Например, реки и железные дороги могут разделять районы, что часто игнорируют традиционные модели.
Мы с коллегами из ВТБ предложили команде школьников задачу: создать универсальные гео-эмбеддинги — векторное представление данных о локациях, которое можно использовать для различных задач. Чтобы решить эту проблему, они применили графовые нейросети, которые помогают лучше учитывать топологию местности и связи между объектами.
Команда
Проект объединил четверых учеников старшей школы, каждый из которых внес свой уникальный вклад:
Данис Динмухаметов — ученик 10 класса с четырьмя годами опыта в программировании. Полтора года назад он увлекся машинным обучением и искусственным интеллектом.
Данис Динмухаметов
Юлия Цыганок — ученица 10 класса, увлеченная компьютерным зрением и искусственным интеллектом. Участвовала в летних буткемпах и конкурсах.
Юлия Цыганок
Ксения Максименко — начала свой путь в машинном обучении недавно, но быстро развивает свои навыки в области анализа данных.
Ксения Максименко
Динияр Муратшин — с восьмого класса занимается машинным обучением на бесплатных образовательных платформах. В девятом классе уже участвовал в практических проектах.
Динияр Муратшин
Почему они выбрали именно этот проект? Каждый из участников отметил, что выбор проекта по гео-эмбеддингам был продиктован его сложностью и актуальностью. В отличие от других проектов, связанных с более привычными задачами вроде компьютерного зрения, здесь предстояло погрузиться в малоизученную и перспективную область — графовые нейронные сети. Им было важно не просто применить готовые решения, но и разработать что-то новое, что могло бы иметь реальное практическое применение.
Проект от ВТБ дал ребятам возможность выйти за рамки обычного школьного обучения и столкнуться с настоящим вызовом.
Как это было: этапы работы над проектом
Сбор данных и их подготовка
Первой задачей команды стало получение и обработка данных.
Мы предоставили данные по четырем крупным городам: Москве, Санкт-Петербургу, Сочи и Казани (все данные были агрегированы и обезличены). Работать с таким массивом информации, особенно когда речь идет о реальных транзакционных и геоданных, — это серьезная задача. Мы не могли позволить себе, чтобы ребята потерялись в этих объемах, поэтому помогали им на каждом этапе.
В этих данных содержались:
Транзакционные данные от разных бизнесов, что позволило анализировать экономическую активность в различных зонах;
Геоданные: расположение остановок общественного транспорта, зон, областей и регионов в городах, данные о торговой активности и др.
Демографические данные: средний возраст, пол и др.
Информацию о метро участники добавляли самостоятельно из открытых источников.
Данные были агрегированы в геосетку с разрешением 500×500 метров, что позволило структурировать их и сделать более удобными для обработки и анализа.
Сетка 500×500 метров
Этот шаг позволил создать единую базу данных, которая объединила географические и социально-экономические показатели.
Обработка пропущенных данных
Многие признаки были разрежены, что могло навредить качеству моделей. Поэтому команда занялась устранением пропусков в данных. Признаки, такие как демография или данные о застройке, были заполнены лишь на 30–40%. Для работы с графами разработаны специальные алгоритмы заполнения данных, один из них — метод Feature Propagation. Это техника использует информацию от соседних узлов в графе для заполнения пропусков в данных.
Как выглядит метод по шагам
Графовые нейросети и message passing
Для построения моделей команда изучила методы работы с графами. В основе использованных моделей лежали различные архитектуры графовых нейронных сетей, такие как GraphSAGE, GCN и GAT. Все эти подходы обобщаются в единую парадигму, называемую message passing.
GCN — это классическая архитектура, использующая графовые свертки;
GraphSAGE — один из первых методов, использующий обучение на подграфах. Такой подход позволяет не только эффективно обучать модели на огромных графах, но и получать эмбеддинги для данных, которые не были представлены в обучающей выборке;
GAT использует механизм внимания для агрегации информации.
Как работает Message Passing
Работа с растровыми изображениями
Идея использовать растровые изображения пришла в ходе наших совместных обсуждений. Мы понимали: даже графовые нейросети не смогут эффективно учесть все нюансы ландшафта.
Поэтому дополнительно команда использовала многоканальные семантические карты, которые включали информацию о физических барьерах, таких как реки, железные дороги и магистрали. Эти данные позволили улучшить учет локальных особенностей районов и повысить точность моделей. Растровые изображения помогли учесть не только топологические связи, но и физические особенности локации.
Например, для Москвы добавление растров улучшило метрику R² на несколько процентов.
Как растры улучшают качество
Команда использовала для обработки изображений библиотеки, такие как Rasterio и timm.
Построение и обучение моделей
После сбора и предобработки данных, а также изучения теоретической части команда приступила к построению моделей. Их обучение происходило на основе вышеописанных архитектур графовых нейросетей. Было решено попробовать как semi-supervised, так и unsupervised learning подходы, что позволило обучить модели на данных, где не всегда была полная разметка.
Процесс обучения включал как transductive (модель обучается на всем графе),
Transductive Learning
так и inductive learning (обучение происходит на подграфах, что позволяет масштабировать модель и применять ее на новых данных).
Inductive Learning
Отдельное внимание команда уделила настройке гиперпараметров и выбору лучшей архитектуры. В этом процессе использовали инструменты для оптимизации гиперпараметров, такие как Optuna.
После всех этапов работы — от сбора и подготовки данных до применения графовых нейросетей и работы с растровыми изображениями — команда подошла к самому важному этапу: анализу результатов и оценке созданных моделей.
Результаты
Одной из главных для оценки качества моделей стала метрика R², которая использовалась для оценки точности прогноза средней выручки бизнеса в локации. В ходе работы команда сравнивала результаты с базовыми моделями, такими как линейная регрессия и градиентный бустинг.
В экспериментах были проверены различные подходы, в том числе и с использованием предобученных гео-эмбедингов в базовых моделях. Наибольшее качество показали нейросетевые подходы для городов со сложной географией, такие как Сочи и Казань, где прирост был значительным.
Результаты, полученные участниками, представлены в таблице:
Метрика R²
Полученные результаты имеют значительный потенциал для использования в реальных бизнес-задачах. Например, модели могут помочь ретейлерам выбирать оптимальные места для открытия новых точек продаж, банкам — принимать решения о размещении отделений, а рекламным агентствам — таргетировать аудиторию при размещении наружной рекламы.
Рефлексия участников
Завершив проект, каждый из участников поделился своими мыслями о проделанной работе, ее сложности и выводами, которые они сделали.
Команда школьников и эксперты ВТБ
Основные трудности, с которыми столкнулись школьники, касались как технических, так и организационных аспектов. По мнению одного из ребят, самым сложным этапом стало объединение всех компонентов проекта в единое целое. В процессе работы они быстро осваивали методы и техники, но к концу проекта количество задач и объем данных стали серьезным испытанием.
Сложность задач заставила их выйти за пределы привычного обучения, и каждый отметил, что этот опыт обогатил их представления о машинном обучении.»Было непросто, но это того стоило», — поделился один из участников.
Видеть, как ребята размышляют над сложными задачами, было для нас особенно ценно. Их способность преодолевать трудности приятно удивляла.
Заключение
Вот так и получилось: команда ребят, графы, растры и несколько недель интенсивной работы — и на выходе у нас модели, которые могут менять подходы к геоаналитике. Приятно видеть, что за этими сложными задачами стоят не только опытные специалисты, но и молодые таланты. Мы, команда экспертов из ВТБ, гордимся быть частью их пути и верим, что этот проект станет лишь началом для великих свершений в их карьере.