Data Science в действии: как алгоритмы "видят" связи между людьми

Коршунов
IT-специалист с опытом работы в области анализа социальных графов в ИСП РАН
Социальные сети давно стали неотъемлемой частью нашей жизни. Мы общаемся, делимся новостями, находим единомышленников. Но за кажущейся простотой скрывается сложная структура, которую IT-специалисты называют "социальным графом". Именно этот граф, состоящий из миллионов узлов (пользователей) и связей (дружбы, подписок), становится объектом исследования для data scientists. Они с помощью алгоритмов могут не только анализировать наши связи, но и предсказывать наше поведение, интересы, даже настроение. Антон Коршунов, IT-специалист с опытом работы в области анализа социальных графов в ИСП РАН, рассказывает о том, как работают эти алгоритмы, какие задачи они решают, и какие открытия помогают делать.
Антон, расскажите, как вы пришли к работе с социальными графами? Что вас заинтересовало в этой области?
Тема социальных графов захватила меня еще во время работы над дипломным проектом в университете. Тогда я впервые столкнулся с задачей анализа текстов Twitter и понял, какой огромный потенциал скрыт в данных социальных сетей. Это было время бурного развития социальных платформ, и информация, которую они генерировали, представляла собой богатый материал для исследователей. Меня особенно заинтересовала возможность применить математические модели теории графов для анализа социальных взаимодействий. Ведь по сути, социальная сеть – это и есть граф, где пользователи – это узлы, а их связи – рёбра. Изучая структуру этого графа, можно узнать много интересного о том, как люди общаются, формируют сообщества, влияют друг на друга.
Кроме того, анализ социальных сетей - это быстро развивающаяся область, которая находит применение в различных сферах, от маркетинга до социологии.
В вашей работе вы не просто изучаете структуры, но и ищете "сообщества" в этих графах. Что такое "сообщество" в контексте социального графа и как алгоритмы помогают их находить?
Сообщество в социальном графе – это группа пользователей, которые тесно связаны между собой. Они могут быть друзьями, подписчиками, коллегами, членами какой-либо организации или просто людьми, объединенными общими интересами, взглядами, хобби или географическим положением. Важно понимать, что социальный граф – это огромная и сложная структура: представьте себе карту, где каждая точка – это человек, а линии – это связи между ними. И выявление сообществ "на глаз" практически невозможно.
Здесь на помощь приходят алгоритмы, словно специальные фильтры, которые анализируют связи между пользователями и выделяют плотные кластеры – группы пользователей, более тесно связанные внутри себя, чем с остальными. Это позволяет нам увидеть скрытые паттерны взаимодействий и лучше понять структуру социальной сети. Для анализа социальных графов и выявления сообществ используется широкий спектр алгоритмов: от классических алгоритмов кластеризации, таких как k-means, до более продвинутых, например, алгоритмы Louvain и Infomap, специализированные для анализа графов. Выбор алгоритма зависит от специфики задачи и объема данных.
Существует много различных подходов к поиску сообществ. Расскажите, какие особенности учитывают ваши алгоритмы?
Каждый алгоритм поиска сообществ основан на определенных принципах. Например, алгоритм Label Propagation распространяет метки сообществ по графу, подобно волнам, расходящимся от брошенного в воду камня. Алгоритм Louvain использует принцип модульности, стремясь разделить граф на сообщества так, чтобы связи внутри сообществ были максимально плотными, а связи между сообществами – минимальными.
В своей работе мы учитывали специфику социальных графов – то, что связи могут быть направленными, иметь разный "вес", отражающий тесноту взаимодействия. Также мы учитывали динамику социальных сетей - появление новых пользователей и связей. Поскольку разрабатываемые алгоритмы планировалось применять к реальным современным социальным графам, состоящим из сотен миллионов пользователей, не обошлось без распределённых вычислений. Важным аспектом была разработка методов оценки качества работы алгоритмов, ведь нам следовало убедиться, что мы действительно находим реальные сообщества, а не случайные скопления пользователей. Это позволяет более точно анализировать структуру онлайн-сообществ и использовать эти знания для решения различных задач.
А как удается эффективно оценить качество работы алгоритмов, учитывая, что данные о реальных сообществах зачастую недоступны?
Чтобы понять, насколько точно алгоритм определяет сообщества, нужно сравнить его результат с "эталоном" – данными о реальных сообществах. Но получить такие данные для социальных сетей огромного размера практически невозможно. Представьте себе, чтобы проверить алгоритм на социальной сети с миллиардом пользователей, нам нужно было бы вручную проанализировать связи между всеми этими людьми! Поэтому мы разработали алгоритм, который генерировал искусственный социальный граф с заранее известной структурой сообществ. Мы могли задать размер графа, количество сообществ, характер связей между пользователями. На этом искусственном графе мы тестировали наши алгоритмы и оценивали их точность. Этот подход позволил нам добиться высокой эффективности в поиске сообществ на реальных данных социальных сетей.
В современных условиях рынка аналитики социальных сетей важно не только разрабатывать эффективные алгоритмы, но и уметь их правильно оценивать. Использование синтетических данных позволяет проверить алгоритмы на точность и оптимизировать их параметры еще до того, как они будут применяться на реальных данных. Это приводит к повышению качества аналитики и, соответственно, к более точным результатам.
Как эксперт, расскажите нам подробнее о научной новизне ваших алгоритмов для анализа социальных графов. И поделитесь, повлияла ли на их создание работа в Институте системного программирования им. В.П. Иванникова Российской академии наук (ИСП РАН)? По данным на 2023 год, в ИСП РАН трудится более 700 специалистов, в том числе 26 докторов наук и 69 кандидата наук — помогли ли вам особенности этой научной среды в разработке?
Новизна заключалась в том, что мы учитывали специфику социальных графов. Например, мы учитывали направленность связей (кто на кого подписан) и их вес (насколько тесная связь между пользователями). Значительное количество пользователей и связей между ними в анализируемых графах послужило вызовом на этапе проектирования архитектуры наших алгоритмов и внесло значительный вклад в их новизну. Это позволило нам создать более точные и эффективные алгоритмы, которые превосходили существующие аналоги. Кроме того, мы предложили новые подходы к оценке качества работы алгоритмов, которые позволяли не только измерить точность, но и учесть скорость работы, а также адаптивность алгоритмов к изменениям в социальных графах — всё это внесло значительный научный вклад в развитие анализа социальных сетей.
Работа в ИСП РАН действительно оказала огромное влияние на мою научную деятельность. Атмосфера инноваций, опытные коллеги и доступ к современным ресурсам во многом помогли мне реализовать свои идеи и достичь значимых результатов.
Как вы думаете, насколько ваша работа способствовала повышению престижа ИСП РАН? Ведь ваши разработки привлекли внимание таких крупных компаний, как Huawei и Samsung.
Как минимум, я убежден, что моя работа способствовала повышению интереса к ИСП РАН, поскольку привлечение внимания крупных компаний — Huawei и Samsung — к нашим разработкам подтверждает высокий уровень научных исследований в институте. Это подтверждает, что ИСП РАН — не только место для фундаментальных исследований, но и источник инноваций, востребованных в реальном секторе экономики. Моя работа — это результат коллективных усилий всего научного сообщества института, и я горжусь тем, что могу внести свой вклад в успех ИСП РАН.
Когда мои коллеги узнали об успешном сотрудничестве с Huawei и Samsung, несколько дней ко мне подходили с искренними поздравлениями. Это было очень приятно, ведь признание наших разработок на таком уровне — это общее достижение. Мы не просто коллеги, мы — единая команда, работающая на общее благо науки и разработки инновационных технологий. И когда одна из команд достигает успеха, это радость для всех.
Важно отметить, что привлечение внимания крупных компаний к результатам научных исследований – это не только признание заслуг конкретного ученого, как и исследовательского института, но и показатель того, что наука не стоит на месте, а ее результаты находят практическое применение. Сегодня рынок аналитики социальных данных переживает бурный рост, и спрос на специалистов с опытом работы с социальными графами растёт. Причина этого сдвига лежит в том, что сегодня анализ социальных графов становится важным практическим инструментом для развития бизнеса. Например, компании могут использовать анализ социальных графов для таргетированной рекламы, для поиска влиятельных людей и формирования рекламных кампаний, а также для оценки эффективности своих маркетинговых стратегий.
Антон, вы участвуете в различных проектах, связанных с анализом социальных сетей: от научных исследований до членства в жюри конкурсов, таких как SNA Hackathon. Как вы оцениваете важность такого комплексного подхода к работе в вашей области?
Сотрудничество с бизнесом и участие в профессиональных конкурсах – это не только способ проверить теоретические модели на практике, но и получить важные практические навыки, которые необходимы для решения реальных задач в области анализа социальных данных. А для меня всегда было важно, чтобы мои исследования имели практическое применение. Работа над реальными задачами для Huawei и Samsung позволила мне не только проверить эффективность разработанных алгоритмов, но и лучше понять потребности бизнеса. Это, в свою очередь, помогало мне формулировать новые научные задачи, направленные на решение конкретных проблем.
Кроме того, я всегда стремился делиться своими знаниями с коллегами и студентами, публикуя статьи, выступая на конференциях, руководит студенческими проектами. Я убежден, что наука должна служить обществу и приносить реальную пользу, поэтому участие в жюри престижного конкурса SNA Hackathon — также мой вклад в поддержку молодых специалистов, работающих над актуальными задачами анализа данных социальных сетей.
Расскажите подробнее о проектах, которые вы реализовали для Huawei и Samsung. Какие задачи стояли перед вами? И как можно привлечь внимание таких известных компаний?
Привлечь внимание крупных компаний можно, предлагая им решения, которые отвечают на их реальные проблемы. Проекты с Huawei и Samsung были связаны с разработкой алгоритмов для решения конкретных бизнес-задач. Эти компании понимали ценность анализа социальных сетей и хотели использовать его для улучшения своих продуктов и маркетинговых стратегий.
Например, для Huawei мы создавали алгоритм, который позволял находить сообщества пользователей с учётом не только их связей друг с другом, но и веса каждой из связей, а также их направленности от одного пользователя к другому. Это было важно для того, чтобы более точно определять сообщества пользователей в тех случаях, когда анализ графа взаимодействий без учёта их направления и относительной значимости недостаточен для получения точных результатов. Для Samsung мы разработали алгоритм для интеграции профилей пользователей из разных социальных сетей. На тот момент у людей уже было по нескольку аккаунтов в разных соцсетях. Наш алгоритм позволял создать единый профиль пользователя с учетом всей его активности в разных социальных платформах, что давало более полное представление о его интересах и предпочтениях.
Компании редко раскрывают детали своих внутренних проектов, это коммерческая тайна. Но ваши алгоритмы явно были полезны для них, ведь они решили конкретные задачи, связанные с анализом пользователей и их поведения. А какое практическое применение могут найти методы обнаружения сообществ пользователей в графах онлайновых социальных сетей?
Анализ социальных графов может быть полезен в социологии, политологии, маркетинге и других областях, где важно понимать природу социальных взаимодействий, например, для изучения общественного мнения, прогнозирования поведения избирателей, анализа распространения информации.
Важно понимать, что анализ социальных графов — это мощный инструмент, который может быть использован как во благо, так и во вред. Применение методов анализа социальных графов должно соответствовать моральным принципам и законодательным нормам. Важно обеспечить защиту конфиденциальности пользователей и избегать дискриминации или манипуляций при использовании этих методов.
Напоследок, какие тенденции вы могли бы отметить в области анализа социальных сетей? Какие задачи сегодня стоят перед IT-специалистами в их работе на благо общества?
Сегодня анализ социальных сетей становится все более сложным и многогранным. Появляются новые типы данных, например, данные о геолокации пользователей, их эмоциональном состоянии, их поведении в реальном времени. IT-специалисты разрабатывают новые алгоритмы для обработки этих данных и извлечения из них полезной информации. Одной из важных задач является борьба с фейковыми новостями и пропагандой в социальных сетях, ведь дезинформация может иметь серьезные последствия. Также активно развиваются методы искусственного интеллекта, которые позволяют автоматизировать многие процессы, связанные с анализом социальных сетей, например, модерацию контента, выявление ботов, персонализацию рекомендаций.
При всем этом следует осознавать, что анализ социальных сетей неразрывно связан с вопросами безопасности и этики. IT-специалисты должны уделять особое внимание защите конфиденциальности пользователей и предотвращению неправомерного использования данных. Формирование этических норм и законодательной базы в этой области является основополагающим фактором для создания безопасного и ответственного цифрового пространства.
