Skip to content

Итоговый проект по дисциплине "Прикладные технологии анализа и моделирования социальных сетей", 2 курс магистратуры, Матмех, СПбГУ

License

Notifications You must be signed in to change notification settings

ExP98/DDNet_Social_graph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DDNet Social Graph

Итоговый проект по дисциплине «Прикладные технологии анализа и моделирования социальных сетей» (2 курс магистратуры, МатМех СПбГУ).

Автор: Егор Глушков (МОАИС, МатМех, СПбГУ)

Лицензия: Apache-2.0


О проекте

Проект посвящён исследованию социального графа сообщества DDNet (DDraceNetwork): построению сети взаимодействий между участниками и анализу её свойств. Основная цель — показать, как методы анализа социальных сетей помогают выявлять структуру сообщества, ключевых участников и характер связей.

Ключевые вопросы исследования:

  • Как устроена структура сети (компоненты, кластеры/сообщества)?
  • Кто является «центральными» игроками/узлами (центральности)?
  • Как распределены связи и насколько сеть устойчива?
  • Как выглядят визуализации сети и отдельных её подпород (эго-сети, кластеры)?

Репозиторий ориентирован на воспроизводимый анализ в Jupyter Notebook.

Стек и методы

  • Язык/среда: Python, Jupyter Notebook
  • Библиотеки:
    • pandas, numpy — обработка данных
    • networkx — моделирование и анализ графов
    • matplotlib, seaborn — визуализация
    • scikit-learn (опционально) — дополнительные метрики/кластеризация
    • tqdm (опционально) — прогресс-бар при длительных вычислениях
  • Методы анализа:
    • Базовые характеристики графа: степени, компоненты связности
    • Центральности: degree, betweenness, closeness, eigenvector (по необходимости)
    • Обнаружение сообществ (modularity-based и др. — при необходимости)
    • Визуализация графа и подграфов

Данные

  • Источник: статистика и взаимодействия сообщества DDNet (DDraceNetwork).
  • Формат: табличные данные/списки рёбер (edge list) и/или агрегированные метрики.
  • Подготовка: базовая предобработка, фильтрация шумовых связей (при необходимости), приведение идентификаторов к единому виду.

Примечание: структура и расположение сырых данных могут отличаться в зависимости от окружения. Если данные не включены в репозиторий (например, из-за размера), используйте инструкции в ноутбуках для загрузки/подготовки.

Быстрый старт

  1. Установите Python 3.10+ и Jupyter
  2. Создайте виртуальное окружение и активируйте его:
    • Linux/macOS:
      • python3 -m venv .venv
      • source .venv/bin/activate
    • Windows (PowerShell):
      • py -m venv .venv
      • .venv\Scripts\Activate.ps1
  3. Установите зависимости:
    • pip install jupyter pandas numpy networkx matplotlib seaborn tqdm scikit-learn
  4. Запустите Jupyter:
    • jupyter notebook
  5. Откройте соответствующий ноутбук(и) и выполните все ячейки сверху вниз.

Структура репозитория

Типичная структура (может незначительно отличаться):

  • notebooks/ — основные ноутбуки с анализом и визуализациями
  • data/ — данные (сырые и/или подготовленные)
  • src/ — вспомогательные скрипты (загрузка, предобработка, метрики)
  • reports/ — результаты, графики, экспорт метрик (если применимо)
  • README.md — описание проекта

Смотрите комментарии внутри ноутбуков для деталей по шагам воспроизведения.

Результаты

  • Метрики сети: размер гигантского компонента, распределение степеней, центральности
  • Обнаруженные сообщества и эго-сети для ключевых узлов
  • Визуализации графа и подграфов
  • Краткие выводы по структуре и устойчивости сети

Итоговые графики и таблицы доступны в ноутбуках и, при наличии, экспортируются в папку reports/.

Лицензия

Проект распространяется по лицензии Apache License 2.0. Подробности см. в файле LICENSE.

Контакты


English summary

DDNet Social Graph is a Jupyter-based project exploring the interaction network of the DDNet (DDraceNetwork) community. It focuses on building the social graph, computing centralities, detecting communities, and visualizing network structure. The stack includes Python, networkx, pandas, numpy, matplotlib, and seaborn. Notebooks guide you through data preparation, analysis, and result reproduction. Licensed under Apache-2.0.

About

Итоговый проект по дисциплине "Прикладные технологии анализа и моделирования социальных сетей", 2 курс магистратуры, Матмех, СПбГУ

Topics

Resources

License

Stars

Watchers

Forks